[INFO] cloning repository https://github.com/syuni/rust-by-example [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/syuni/rust-by-example" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsyuni%2Frust-by-example", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsyuni%2Frust-by-example'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] b3f4cf9a5219e47165d823446a761a963ce48beb [INFO] testing syuni/rust-by-example against master#62efba8a050c64249dab942951bb28f710208bc8 for pr-90799 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsyuni%2Frust-by-example" "/workspace/builds/worker-2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/syuni/rust-by-example on toolchain 62efba8a050c64249dab942951bb28f710208bc8 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+62efba8a050c64249dab942951bb28f710208bc8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/syuni/rust-by-example [INFO] finished tweaking git repo https://github.com/syuni/rust-by-example [INFO] tweaked toml for git repo https://github.com/syuni/rust-by-example written to /workspace/builds/worker-2/source/Cargo.toml [INFO] crate git repo https://github.com/syuni/rust-by-example already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+62efba8a050c64249dab942951bb28f710208bc8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: file found to be present in multiple build targets: /workspace/builds/worker-2/source/src/8_2_4.rs [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/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" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e8397a04204aaf8b9f284182a6f9e27a3c2e67044d0943b4415b160bfc957681" "/opt/rustwide/cargo-home/bin/cargo" "+62efba8a050c64249dab942951bb28f710208bc8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] ff55e6705017e7bd98ed4f0c5822bc067282c131285747d0e0eb55ddd64f5542 [INFO] running `Command { std: "docker" "start" "-a" "ff55e6705017e7bd98ed4f0c5822bc067282c131285747d0e0eb55ddd64f5542", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "ff55e6705017e7bd98ed4f0c5822bc067282c131285747d0e0eb55ddd64f5542", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ff55e6705017e7bd98ed4f0c5822bc067282c131285747d0e0eb55ddd64f5542", kill_on_drop: false }` [INFO] [stdout] ff55e6705017e7bd98ed4f0c5822bc067282c131285747d0e0eb55ddd64f5542 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2/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" "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" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e8397a04204aaf8b9f284182a6f9e27a3c2e67044d0943b4415b160bfc957681" "/opt/rustwide/cargo-home/bin/cargo" "+62efba8a050c64249dab942951bb28f710208bc8" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] af31d15578374b63c449eb1999c40412c787b2ac11dd84834fbcb7b96e5d8d9e [INFO] running `Command { std: "docker" "start" "-a" "af31d15578374b63c449eb1999c40412c787b2ac11dd84834fbcb7b96e5d8d9e", kill_on_drop: false }` [INFO] [stderr] warning: file found to be present in multiple build targets: /opt/rustwide/workdir/src/8_2_4.rs [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling rust-by-example v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/18_4_1.rs:14:68 [INFO] [stdout] | [INFO] [stdout] 14 | Err(why) => panic!("couldn't open {}: {}", display, Error::description(&why)), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/18_4_1.rs:21:68 [INFO] [stdout] | [INFO] [stdout] 21 | Err(why) => panic!("couldn't read {}: {}", display, Error::description(&why)), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021 [INFO] [stdout] --> src/8_2_6_1.rs:16:40 [INFO] [stdout] | [INFO] [stdout] 16 | println!("2 in array2: {}", array2.into_iter().any(|&x| x == 2)); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(array_into_iter)]` on by default [INFO] [stdout] = warning: this changes meaning in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity [INFO] [stdout] | [INFO] [stdout] 16 | println!("2 in array2: {}", array2.iter().any(|&x| x == 2)); [INFO] [stdout] | ~~~~ [INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value [INFO] [stdout] | [INFO] [stdout] 16 | println!("2 in array2: {}", IntoIterator::into_iter(array2).any(|&x| x == 2)); [INFO] [stdout] | ++++++++++++++++++++++++ ~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected one of `:`, `@`, or `|`, found `,` [INFO] [stdout] --> src/13_7_1.rs:6:26 [INFO] [stdout] | [INFO] [stdout] 6 | fn contains(&self, &A, &B) -> bool; // `A`と`B`の両方を明示的に要求する [INFO] [stdout] | ^ expected one of `:`, `@`, or `|` [INFO] [stdout] | [INFO] [stdout] = note: anonymous parameters are removed in the 2018 edition (see RFC 1685) [INFO] [stdout] help: if this is a parameter name, give it a type [INFO] [stdout] | [INFO] [stdout] 6 | fn contains(&self, A: &TypeName, &B) -> bool; // `A`と`B`の両方を明示的に要求する [INFO] [stdout] | ~~~~~~~~~~~~ [INFO] [stdout] help: if this is a type, explicitly ignore the parameter name [INFO] [stdout] | [INFO] [stdout] 6 | fn contains(&self, _: &A, &B) -> bool; // `A`と`B`の両方を明示的に要求する [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `rust-by-example` due to 2 previous errors [INFO] [stdout] error: expected type, found `}` [INFO] [stdout] --> src/14_4_6.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 20 | println!("{} is the first", choose_first(&first, &second)): [INFO] [stdout] | - help: try using a semicolon: `;` [INFO] [stdout] 21 | }; [INFO] [stdout] | ^ expected type [INFO] [stdout] | [INFO] [stdout] = note: `#![feature(type_ascription)]` lets you annotate an expression with a type: `: ` [INFO] [stdout] = note: see issue #23416 for more information [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: expected one of `:`, `@`, or `|`, found `)` [INFO] [stdout] --> src/13_7_1.rs:6:30 [INFO] [stdout] | [INFO] [stdout] 6 | fn contains(&self, &A, &B) -> bool; // `A`と`B`の両方を明示的に要求する [INFO] [stdout] | ^ expected one of `:`, `@`, or `|` [INFO] [stdout] | [INFO] [stdout] = note: anonymous parameters are removed in the 2018 edition (see RFC 1685) [INFO] [stdout] help: if this is a parameter name, give it a type [INFO] [stdout] | [INFO] [stdout] 6 | fn contains(&self, &A, B: &TypeName) -> bool; // `A`と`B`の両方を明示的に要求する [INFO] [stdout] | ~~~~~~~~~~~~ [INFO] [stdout] help: if this is a type, explicitly ignore the parameter name [INFO] [stdout] | [INFO] [stdout] 6 | fn contains(&self, &A, _: &B) -> bool; // `A`と`B`の両方を明示的に要求する [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 2 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to previous error [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected one of `!`, `(`, `...`, `..=`, `..`, `::`, `:`, `{`, or `|`, found `,` [INFO] [stdout] --> src/13_7_2.rs:10:32 [INFO] [stdout] | [INFO] [stdout] 10 | fn contains(&self, &Self::A, &Self::B) -> bool; [INFO] [stdout] | ^ expected one of 9 possible tokens [INFO] [stdout] | [INFO] [stdout] = note: anonymous parameters are removed in the 2018 edition (see RFC 1685) [INFO] [stdout] help: explicitly ignore the parameter name [INFO] [stdout] | [INFO] [stdout] 10 | fn contains(&self, _: &Self::A, &Self::B) -> bool; [INFO] [stdout] | ~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected one of `!`, `(`, `...`, `..=`, `..`, `::`, `:`, `{`, or `|`, found `)` [INFO] [stdout] --> src/13_7_2.rs:10:42 [INFO] [stdout] | [INFO] [stdout] 10 | fn contains(&self, &Self::A, &Self::B) -> bool; [INFO] [stdout] | ^ expected one of 9 possible tokens [INFO] [stdout] | [INFO] [stdout] = note: anonymous parameters are removed in the 2018 edition (see RFC 1685) [INFO] [stdout] help: explicitly ignore the parameter name [INFO] [stdout] | [INFO] [stdout] 10 | fn contains(&self, &Self::A, _: &Self::B) -> bool; [INFO] [stdout] | ~~~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 2 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: cannot pass `self` by raw pointer [INFO] [stdout] --> src/16_10.rs:39:15 [INFO] [stdout] | [INFO] [stdout] 39 | fn cause(*self) -> Option<&error::Error> { [INFO] [stdout] | ^^^^ cannot pass `self` by raw pointer [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `x` [INFO] [stdout] --> src/17_1.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | x: f64, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `y` [INFO] [stdout] --> src/17_1.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | y: f64, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused label [INFO] [stdout] --> src/7_2_1.rs:7:9 [INFO] [stdout] | [INFO] [stdout] 7 | 'inner: loop { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_labels)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `noisy_unused_function` [INFO] [stdout] --> src/12_1.rs:7:4 [INFO] [stdout] | [INFO] [stdout] 7 | fn noisy_unused_function() {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021 [INFO] [stdout] --> src/8_2_6_2.rs:23:16 [INFO] [stdout] | [INFO] [stdout] 23 | array2.into_iter().find(|&&x| x == 2) [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(array_into_iter)]` on by default [INFO] [stdout] = warning: this changes meaning in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity [INFO] [stdout] | [INFO] [stdout] 23 | array2.iter().find(|&&x| x == 2) [INFO] [stdout] | ~~~~ [INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value [INFO] [stdout] | [INFO] [stdout] 23 | IntoIterator::into_iter(array2).find(|&&x| x == 2) [INFO] [stdout] | ++++++++++++++++++++++++ ~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused arithmetic operation that must be used [INFO] [stdout] --> src/6.rs:14:9 [INFO] [stdout] | [INFO] [stdout] 14 | 2 * x; [INFO] [stdout] | ^^^^^ the arithmetic operation produces a value [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 14 | let _ = 2 * x; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `function` [INFO] [stdout] --> src/10_4.rs:6:12 [INFO] [stdout] | [INFO] [stdout] 6 | pub fn function() { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trailing semicolon in macro used in expression position [INFO] [stdout] --> src/9.rs:6:27 [INFO] [stdout] | [INFO] [stdout] 6 | println!("Hello!"); [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 12 | say_hello!() [INFO] [stdout] | ------------ in this macro invocation [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(semicolon_in_expressions_from_macros)]` on by default [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #79813 [INFO] [stdout] = note: macro invocations at the end of a block are treated as expressions [INFO] [stdout] = note: to ignore the value produced by the macro, add a semicolon after the invocation of `say_hello` [INFO] [stdout] = note: this warning originates in the macro `say_hello` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/16_10.rs:6:45 [INFO] [stdout] | [INFO] [stdout] 6 | type Result = std::result::Result>; [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/16_10.rs:39:32 [INFO] [stdout] | [INFO] [stdout] 39 | fn cause(*self) -> Option<&error::Error> { [INFO] [stdout] | ^^^^^^^^^^^^ help: use `dyn`: `dyn error::Error` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2018) but is a hard error in Rust 2021! [INFO] [stdout] = note: for more information, see [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0106]: missing lifetime specifier [INFO] [stdout] --> src/16_10.rs:39:31 [INFO] [stdout] | [INFO] [stdout] 39 | fn cause(*self) -> Option<&error::Error> { [INFO] [stdout] | ^ expected named lifetime parameter [INFO] [stdout] | [INFO] [stdout] = help: this function's return type contains a borrowed value, but there is no value for it to be borrowed from [INFO] [stdout] help: consider using the `'static` lifetime [INFO] [stdout] | [INFO] [stdout] 39 | fn cause(*self) -> Option<&'static error::Error> { [INFO] [stdout] | ~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 2 previous errors; 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0106`. [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/18_4_2.rs:20:70 [INFO] [stdout] | [INFO] [stdout] 20 | Err(why) => panic!("couldn't create {}: {}", display, Error::description(&why)), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter` [INFO] [stdout] --> src/9_4.rs:36:9 [INFO] [stdout] | [INFO] [stdout] 36 | use std::iter; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/18_4_2.rs:29:20 [INFO] [stdout] | [INFO] [stdout] 29 | Error::description(&why) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0601]: `main` function not found in crate `9_4` [INFO] [stdout] --> src/9_4.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | / use std::ops::{Add, Mul, Sub}; [INFO] [stdout] 2 | | [INFO] [stdout] 3 | | macro_rules! assert_equal_len { [INFO] [stdout] 4 | | // `tt`(トークン木)識別子は演算子とトークン用の識別子です。 [INFO] [stdout] ... | [INFO] [stdout] 57 | | test!(sub_assign, 3u32, 2u32, 1u32); [INFO] [stdout] 58 | | } [INFO] [stdout] | |_^ consider adding a `main` function to `src/9_4.rs` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `x` [INFO] [stdout] --> src/14_4_4.rs:9:5 [INFO] [stdout] | [INFO] [stdout] 9 | x: &'a i32, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field is never read: `y` [INFO] [stdout] --> src/14_4_4.rs:10:5 [INFO] [stdout] | [INFO] [stdout] 10 | y: &'a i32, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: panic message is not a string literal [INFO] [stdout] --> src/17_5_1.rs:48:32 [INFO] [stdout] | [INFO] [stdout] 48 | Err(why) => panic!(match why { [INFO] [stdout] | ________________________________^ [INFO] [stdout] 49 | | MathError::NegativeLogarithm => "logarithm of negative number", [INFO] [stdout] 50 | | MathError::DivisionByZero => "division by zero", [INFO] [stdout] 51 | | MathError::NegativeSquareRoot => "square root of negative number", [INFO] [stdout] 52 | | }), [INFO] [stdout] | |_____________^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_fmt_panics)]` on by default [INFO] [stdout] = note: this usage of panic!() is deprecated; it will be a hard error in Rust 2021 [INFO] [stdout] = note: for more information, see [INFO] [stdout] help: add a "{}" format string to Display the message [INFO] [stdout] | [INFO] [stdout] 48 | Err(why) => panic!("{}", match why { [INFO] [stdout] | +++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to previous error; 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0601`. [INFO] [stdout] [INFO] [stdout] warning: unused variable: `display` [INFO] [stdout] --> src/18_3.rs:8:9 [INFO] [stdout] | [INFO] [stdout] 8 | let display = path.display(); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_display` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/18_5_1.rs:14:60 [INFO] [stdout] | [INFO] [stdout] 14 | Err(why) => panic!("couldn't spawn wc: {}", Error::description(&why)), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Structure` [INFO] [stdout] --> src/1_2.rs:27:12 [INFO] [stdout] | [INFO] [stdout] 27 | struct Structure(i32); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/18_5_1.rs:23:69 [INFO] [stdout] | [INFO] [stdout] 23 | Err(why) => panic!("couldn't write to wc stdin: {}", Error::description(&why)), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated associated function `std::error::Error::description`: use the Display impl or to_string() [INFO] [stdout] --> src/18_5_1.rs:31:66 [INFO] [stdout] | [INFO] [stdout] 31 | Err(why) => panic!("couldn't read wc stdout: {}", Error::description(&why)), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: build failed [INFO] running `Command { std: "docker" "inspect" "af31d15578374b63c449eb1999c40412c787b2ac11dd84834fbcb7b96e5d8d9e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "af31d15578374b63c449eb1999c40412c787b2ac11dd84834fbcb7b96e5d8d9e", kill_on_drop: false }` [INFO] [stdout] af31d15578374b63c449eb1999c40412c787b2ac11dd84834fbcb7b96e5d8d9e