[INFO] crate tao-of-rust 1.0.2 is already in cache
[INFO] checking tao-of-rust-1.0.2 against master#bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc for pr-70917
[INFO] extracting crate tao-of-rust 1.0.2 into /workspace/builds/worker-0/source
[INFO] validating manifest of crates.io crate tao-of-rust 1.0.2 on toolchain bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc
[INFO] running `"/workspace/cargo-home/bin/cargo" "+bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc" "read-manifest" "--manifest-path" "Cargo.toml"`
[INFO] started tweaking crates.io crate tao-of-rust 1.0.2
[INFO] finished tweaking crates.io crate tao-of-rust 1.0.2
[INFO] tweaked toml for crates.io crate tao-of-rust 1.0.2 written to /workspace/builds/worker-0/source/Cargo.toml
[INFO] running `"/workspace/cargo-home/bin/cargo" "+bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"`
[INFO] running `"/workspace/cargo-home/bin/cargo" "+bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc" "fetch" "--locked" "--manifest-path" "Cargo.toml"`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+bf1f2eedda4fa02b7c9347dd849ed73ddd43dedc" "check" "--frozen" "--all" "--all-targets"`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] e2c7939d7b2eec7a1126387c7740aec391637aace9693e25bc80817828043ce2
[INFO] running `"docker" "start" "-a" "e2c7939d7b2eec7a1126387c7740aec391637aace9693e25bc80817828043ce2"`
[INFO] [stderr]     Checking csv_challenge v0.1.0
[INFO] [stderr]     Checking failures_crate v0.1.0
[INFO] [stderr]     Checking tao-of-rust v1.0.2 (/opt/rustwide/workdir)
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ch01/mod.rs:106:20
[INFO] [stderr]     |
[INFO] [stderr] 106 | pub fn fly_dyn(s: &Fly) -> bool {
[INFO] [stderr]     |                    ^^^ help: use `dyn`: `dyn Fly`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ch02/function.rs:188:27
[INFO] [stderr]     |
[INFO] [stderr] 188 | pub fn two_times() -> Box<Fn(i32) -> i32> {
[INFO] [stderr]     |                           ^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(i32) -> i32`
[INFO] [stderr] 
[INFO] [stderr] warning: denote infinite loops with `loop { ... }`
[INFO] [stderr]    --> src/ch02/control_flow.rs:152:5
[INFO] [stderr]     |
[INFO] [stderr] 152 |     while true {
[INFO] [stderr]     |     ^^^^^^^^^^ help: use `loop`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(while_true)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/ch02/control_flow.rs:199:10
[INFO] [stderr]     |
[INFO] [stderr] 199 |         1...3 => println!("All"),
[INFO] [stderr]     |          ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stderr]    --> src/ch02/primitives.rs:170:14
[INFO] [stderr]     |
[INFO] [stderr] 170 |     for i in (1..5) {
[INFO] [stderr]     |              ^^^^^^ help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stderr]    --> src/ch02/primitives.rs:173:14
[INFO] [stderr]     |
[INFO] [stderr] 173 |     for i in (1..=5) {
[INFO] [stderr]     |              ^^^^^^^ help: remove these parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]   --> src/ch02/structs.rs:58:23
[INFO] [stderr]    |
[INFO] [stderr] 58 |       let gender = if (self.gender == 1) {"boy"} else {"girl"};
[INFO] [stderr]    |                       ^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/ch03/abstract_type.rs:36:29
[INFO] [stderr]    |
[INFO] [stderr] 36 |     fn dynamic_dispatch(t: &Bar) {
[INFO] [stderr]    |                             ^^^ help: use `dyn`: `dyn Bar`
[INFO] [stderr] 
[INFO] [stderr] warning: the item `Drop` is imported redundantly
[INFO] [stderr]   --> src/ch04/raii.rs:92:9
[INFO] [stderr]    |
[INFO] [stderr] 92 |     use std::ops::Drop;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/ch06/closures.rs:48:31
[INFO] [stderr]    |
[INFO] [stderr] 48 |     fn counter(i: i32) -> Box<Fn(i32) -> i32> {
[INFO] [stderr]    |                               ^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(i32) -> i32`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ch06/closures.rs:512:38
[INFO] [stderr]     |
[INFO] [stderr] 512 |     fn boxed_closure(c: &mut Vec<Box<Fn()>>){
[INFO] [stderr]     |                                      ^^^^ help: use `dyn`: `dyn Fn()`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ch06/closures.rs:519:28
[INFO] [stderr]     |
[INFO] [stderr] 519 |         let mut c: Vec<Box<Fn()>> = vec![];
[INFO] [stderr]     |                            ^^^^ help: use `dyn`: `dyn Fn()`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ch06/closures.rs:638:19
[INFO] [stderr]     |
[INFO] [stderr] 638 |     fn bar(b: Box<for<'f> DoSomething<&'f usize>>) {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn for<'f> DoSomething<&'f usize>`
[INFO] [stderr] 
[INFO] [stderr] error[E0520]: `swim` specializes an item from a parent `impl`, but that item is not marked `default`
[INFO] [stderr]    --> src/ch03/trait_limit.rs:157:9
[INFO] [stderr]     |
[INFO] [stderr] 154 |       impl<T> Swimmer for Diver<T> {}
[INFO] [stderr]     |       ------------------------------- parent `impl` is here
[INFO] [stderr] ...
[INFO] [stderr] 157 | /         fn swim(&self) {
[INFO] [stderr] 158 | |             println!("drowning, help!")
[INFO] [stderr] 159 | |         }
[INFO] [stderr]     | |_________^ cannot specialize default item `swim`
[INFO] [stderr]     |
[INFO] [stderr]     = note: to specialize, `swim` in the parent `impl` must be marked `default`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ch01/mod.rs:106:20
[INFO] [stderr]     |
[INFO] [stderr] 106 | pub fn fly_dyn(s: &Fly) -> bool {
[INFO] [stderr]     |                    ^^^ help: use `dyn`: `dyn Fly`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ch02/function.rs:188:27
[INFO] [stderr]     |
[INFO] [stderr] 188 | pub fn two_times() -> Box<Fn(i32) -> i32> {
[INFO] [stderr]     |                           ^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(i32) -> i32`
[INFO] [stderr] 
[INFO] [stderr] warning: denote infinite loops with `loop { ... }`
[INFO] [stderr]    --> src/ch02/control_flow.rs:152:5
[INFO] [stderr]     |
[INFO] [stderr] 152 |     while true {
[INFO] [stderr]     |     ^^^^^^^^^^ help: use `loop`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(while_true)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/ch02/control_flow.rs:199:10
[INFO] [stderr]     |
[INFO] [stderr] 199 |         1...3 => println!("All"),
[INFO] [stderr]     |          ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stderr]    --> src/ch02/primitives.rs:170:14
[INFO] [stderr]     |
[INFO] [stderr] 170 |     for i in (1..5) {
[INFO] [stderr]     |              ^^^^^^ help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stderr]    --> src/ch02/primitives.rs:173:14
[INFO] [stderr]     |
[INFO] [stderr] 173 |     for i in (1..=5) {
[INFO] [stderr]     |              ^^^^^^^ help: remove these parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]   --> src/ch02/structs.rs:58:23
[INFO] [stderr]    |
[INFO] [stderr] 58 |       let gender = if (self.gender == 1) {"boy"} else {"girl"};
[INFO] [stderr]    |                       ^^^^^^^^^^^^^^^^^^ help: remove these parentheses
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/ch03/abstract_type.rs:36:29
[INFO] [stderr]    |
[INFO] [stderr] 36 |     fn dynamic_dispatch(t: &Bar) {
[INFO] [stderr]    |                             ^^^ help: use `dyn`: `dyn Bar`
[INFO] [stderr] 
[INFO] [stderr] warning: the item `Drop` is imported redundantly
[INFO] [stderr]   --> src/ch04/raii.rs:92:9
[INFO] [stderr]    |
[INFO] [stderr] 92 |     use std::ops::Drop;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]   --> src/ch06/closures.rs:48:31
[INFO] [stderr]    |
[INFO] [stderr] 48 |     fn counter(i: i32) -> Box<Fn(i32) -> i32> {
[INFO] [stderr]    |                               ^^^^^^^^^^^^^^ help: use `dyn`: `dyn Fn(i32) -> i32`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ch06/closures.rs:512:38
[INFO] [stderr]     |
[INFO] [stderr] 512 |     fn boxed_closure(c: &mut Vec<Box<Fn()>>){
[INFO] [stderr]     |                                      ^^^^ help: use `dyn`: `dyn Fn()`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ch06/closures.rs:519:28
[INFO] [stderr]     |
[INFO] [stderr] 519 |         let mut c: Vec<Box<Fn()>> = vec![];
[INFO] [stderr]     |                            ^^^^ help: use `dyn`: `dyn Fn()`
[INFO] [stderr] 
[INFO] [stderr] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stderr]    --> src/ch06/closures.rs:638:19
[INFO] [stderr]     |
[INFO] [stderr] 638 |     fn bar(b: Box<for<'f> DoSomething<&'f usize>>) {
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn for<'f> DoSomething<&'f usize>`
[INFO] [stderr] 
[INFO] [stderr] error[E0520]: `swim` specializes an item from a parent `impl`, but that item is not marked `default`
[INFO] [stderr]    --> src/ch03/trait_limit.rs:157:9
[INFO] [stderr]     |
[INFO] [stderr] 154 |       impl<T> Swimmer for Diver<T> {}
[INFO] [stderr]     |       ------------------------------- parent `impl` is here
[INFO] [stderr] ...
[INFO] [stderr] 157 | /         fn swim(&self) {
[INFO] [stderr] 158 | |             println!("drowning, help!")
[INFO] [stderr] 159 | |         }
[INFO] [stderr]     | |_________^ cannot specialize default item `swim`
[INFO] [stderr]     |
[INFO] [stderr]     = note: to specialize, `swim` in the parent `impl` must be marked `default`
[INFO] [stderr] 
[INFO] [stderr] error: aborting due to previous error
[INFO] [stderr] 
[INFO] [stderr] For more information about this error, try `rustc --explain E0520`.
[INFO] [stderr] error: could not compile `tao-of-rust`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stderr] error: aborting due to previous error
[INFO] [stderr] 
[INFO] [stderr] For more information about this error, try `rustc --explain E0520`.
[INFO] [stderr] error: could not compile `tao-of-rust`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] running `"docker" "inspect" "e2c7939d7b2eec7a1126387c7740aec391637aace9693e25bc80817828043ce2"`
[INFO] running `"docker" "rm" "-f" "e2c7939d7b2eec7a1126387c7740aec391637aace9693e25bc80817828043ce2"`
[INFO] [stdout] e2c7939d7b2eec7a1126387c7740aec391637aace9693e25bc80817828043ce2
