[INFO] cloning repository https://github.com/BruceChar/LearnRustByExample
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/BruceChar/LearnRustByExample" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBruceChar%2FLearnRustByExample", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBruceChar%2FLearnRustByExample'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 2150219561f9dd455dbbc74483301654dc899e9f
[INFO] checking BruceChar/LearnRustByExample against master#3f6250a7bb79e600d9036bbc7c8f65af43933643 for pr-147859
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBruceChar%2FLearnRustByExample" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/BruceChar/LearnRustByExample
[INFO] finished tweaking git repo https://github.com/BruceChar/LearnRustByExample
[INFO] tweaked toml for git repo https://github.com/BruceChar/LearnRustByExample written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/BruceChar/LearnRustByExample on toolchain 3f6250a7bb79e600d9036bbc7c8f65af43933643
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+3f6250a7bb79e600d9036bbc7c8f65af43933643" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/BruceChar/LearnRustByExample already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+3f6250a7bb79e600d9036bbc7c8f65af43933643" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/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:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+3f6250a7bb79e600d9036bbc7c8f65af43933643" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] e070a9d8f9aeee6e199d4483681fd4debfdc9359dc56d8f617afd1951aaa7dd9
[INFO] running `Command { std: "docker" "start" "-a" "e070a9d8f9aeee6e199d4483681fd4debfdc9359dc56d8f617afd1951aaa7dd9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e070a9d8f9aeee6e199d4483681fd4debfdc9359dc56d8f617afd1951aaa7dd9", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e070a9d8f9aeee6e199d4483681fd4debfdc9359dc56d8f617afd1951aaa7dd9", kill_on_drop: false }`
[INFO] [stdout] e070a9d8f9aeee6e199d4483681fd4debfdc9359dc56d8f617afd1951aaa7dd9
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/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" "RUSTDOCFLAGS=--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:61361fe0aef631f17e9d025a70c5a647956f8c671dd02950a60ad3f5cc5526d7" "/opt/rustwide/cargo-home/bin/cargo" "+3f6250a7bb79e600d9036bbc7c8f65af43933643" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8d045a7c0ed94a699a6cff67e58c435f0833f8639281f5510135b8e5ce865ab4
[INFO] running `Command { std: "docker" "start" "-a" "8d045a7c0ed94a699a6cff67e58c435f0833f8639281f5510135b8e5ce865ab4", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.80
[INFO] [stderr]    Compiling getrandom v0.1.15
[INFO] [stderr]     Checking another v0.1.0 (/opt/rustwide/workdir/src/another)
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]     Checking anolib v0.1.0 (/opt/rustwide/workdir/anolib)
[INFO] [stderr]     Checking mylib v0.1.0 (/opt/rustwide/workdir/mylib)
[INFO] [stderr]     Checking RustByExamples v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking start v0.1.0 (/opt/rustwide/workdir/start)
[INFO] [stdout] warning: unused import: `DerefMut`
[INFO] [stdout]  --> examples/trait.rs:3:23
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::ops::{Deref, DerefMut};
[INFO] [stdout]   |                       ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::alloc::handle_alloc_error`
[INFO] [stdout]  --> examples/trait.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::alloc::handle_alloc_error;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> src/main.rs:21:7
[INFO] [stdout]    |
[INFO] [stdout] 21 |   use super::*;
[INFO] [stdout]    |       ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: if this is a test module, consider adding a `#[cfg(test)]` to the containing module
[INFO] [stdout]   --> src/main.rs:20:1
[INFO] [stdout]    |
[INFO] [stdout] 20 | mod tests{
[INFO] [stdout]    | ^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused label
[INFO] [stdout]  --> examples/loop.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |         'inner: loop {
[INFO] [stdout]   |         ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_labels)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print` is never used
[INFO] [stdout]  --> src/main.rs:5:4
[INFO] [stdout]   |
[INFO] [stdout] 5 | fn print(a: i32) -> i32 {
[INFO] [stdout]   |    ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `o`
[INFO] [stdout]    --> examples/trait.rs:160:9
[INFO] [stdout]     |
[INFO] [stdout] 160 |     let o = Some(3);
[INFO] [stdout]     |         ^ help: if this is intentional, prefix it with an underscore: `_o`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Size` is never used
[INFO] [stdout]  --> examples/trait.rs:9:7
[INFO] [stdout]   |
[INFO] [stdout] 9 | trait Size {
[INFO] [stdout]   |       ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Show` is never used
[INFO] [stdout]   --> examples/trait.rs:13:7
[INFO] [stdout]    |
[INFO] [stdout] 13 | trait Show: Debug {
[INFO] [stdout]    |       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Test` is never constructed
[INFO] [stdout]   --> examples/trait.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | struct Test {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> examples/trait.rs:35:8
[INFO] [stdout]    |
[INFO] [stdout] 34 | impl Test {
[INFO] [stdout]    | --------- associated function in this implementation
[INFO] [stdout] 35 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `demo_ref` is never used
[INFO] [stdout]   --> examples/trait.rs:43:4
[INFO] [stdout]    |
[INFO] [stdout] 43 | fn demo_ref<T>(t:&T) where T:Debug {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_type` is never used
[INFO] [stdout]   --> examples/trait.rs:47:4
[INFO] [stdout]    |
[INFO] [stdout] 47 | fn show_type<T:Debug>(_v: &T) {
[INFO] [stdout]    |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Counter` is never constructed
[INFO] [stdout]   --> examples/trait.rs:52:8
[INFO] [stdout]    |
[INFO] [stdout] 52 | struct Counter<T> {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: named argument `wid` is not used by name
[INFO] [stdout]   --> examples/format.rs:26:71
[INFO] [stdout]    |
[INFO] [stdout] 26 |   println!("宽度：\n{1:*^9}\n{0:#<wid$}\n{:d>2$.3e}\n", 3.4567, 1.23456, wid=5);
[INFO] [stdout]    |                                              --                          ^^^ this named argument is referred to by position in formatting string
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this formatting argument uses named argument `wid` by position
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(named_arguments_used_positionally)]` on by default
[INFO] [stdout] help: use the named argument by name to avoid ambiguity
[INFO] [stdout]    |
[INFO] [stdout] 26 -   println!("宽度：\n{1:*^9}\n{0:#<wid$}\n{:d>2$.3e}\n", 3.4567, 1.23456, wid=5);
[INFO] [stdout] 26 +   println!("宽度：\n{1:*^9}\n{0:#<wid$}\n{:d>wid$.3e}\n", 3.4567, 1.23456, wid=5);
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> examples/from_into.rs:34:17
[INFO] [stdout]    |
[INFO] [stdout] 34 |             Err(e) => Person::default()
[INFO] [stdout]    |                 ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `age` are never read
[INFO] [stdout]  --> examples/from_into.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | struct Person {
[INFO] [stdout]   |        ------ fields in this struct
[INFO] [stdout] 3 |     name: String,
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 4 |     age: u8,
[INFO] [stdout]   |     ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `Person` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::fmt::Display`
[INFO] [stdout]  --> examples/generic.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::fmt::Display;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Lines as iLines`
[INFO] [stdout]  --> examples/generic.rs:2:15
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::{Lines as iLines, BufReader, BufRead};
[INFO] [stdout]   |               ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::str::Lines`
[INFO] [stdout]  --> examples/generic.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::str::Lines;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> examples/format.rs:57:15
[INFO] [stdout]    |
[INFO] [stdout] 57 |   struct Deep(Structure);
[INFO] [stdout]    |          ---- ^^^^^^^^^
[INFO] [stdout]    |          |
[INFO] [stdout]    |          field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout]    = note: `Deep` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `age` are never read
[INFO] [stdout]   --> examples/format.rs:61:5
[INFO] [stdout]    |
[INFO] [stdout] 60 |   struct Person<'a> {
[INFO] [stdout]    |          ------ fields in this struct
[INFO] [stdout] 61 |     name: &'a str,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 62 |     age: u8
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Person` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::io::stdin`
[INFO] [stdout]  --> examples/struct.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::io::stdin;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `BorrowMut` and `Borrow`
[INFO] [stdout]   --> examples/smart_point.rs:24:19
[INFO] [stdout]    |
[INFO] [stdout] 24 | use std::borrow::{BorrowMut, Borrow};
[INFO] [stdout]    |                   ^^^^^^^^^  ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DerefMut` and `Deref`
[INFO] [stdout]   --> examples/smart_point.rs:25:16
[INFO] [stdout]    |
[INFO] [stdout] 25 | use std::ops::{Deref, DerefMut};
[INFO] [stdout]    |                ^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `RefMut`
[INFO] [stdout]   --> examples/smart_point.rs:26:17
[INFO] [stdout]    |
[INFO] [stdout] 26 | use std::cell::{RefMut, RefCell};
[INFO] [stdout]    |                 ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f`
[INFO] [stdout]   --> examples/file.rs:27:7
[INFO] [stdout]    |
[INFO] [stdout] 27 |   let f = File::open("hello.txt").unwrap_or_else(|err| {
[INFO] [stdout]    |       ^ help: if this is intentional, prefix it with an underscore: `_f`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Unit` is never constructed
[INFO] [stdout]  --> examples/struct.rs:8:8
[INFO] [stdout]   |
[INFO] [stdout] 8 | struct Unit;
[INFO] [stdout]   |        ^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `age` are never read
[INFO] [stdout]   --> examples/struct.rs:12:3
[INFO] [stdout]    |
[INFO] [stdout] 11 | struct Person<'a> {
[INFO] [stdout]    |        ------ fields in this struct
[INFO] [stdout] 12 |   name: &'a str,
[INFO] [stdout]    |   ^^^^
[INFO] [stdout] 13 |   age: u8
[INFO] [stdout]    |   ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Person` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `p` and `sex` are never read
[INFO] [stdout]   --> examples/struct.rs:18:3
[INFO] [stdout]    |
[INFO] [stdout] 17 | struct Man<'a> {
[INFO] [stdout]    |        --- fields in this struct
[INFO] [stdout] 18 |   p: Person<'a>,
[INFO] [stdout]    |   ^
[INFO] [stdout] 19 |   sex: &'a str
[INFO] [stdout]    |   ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Man` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0425]: cannot find value `next` in this scope
[INFO] [stdout]   --> examples/box.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 41 |     next: &'a Node<'a>,
[INFO] [stdout]    |     ---- a field by that name exists in `Self`
[INFO] [stdout] ...
[INFO] [stdout] 48 |             next
[INFO] [stdout]    |             ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `putline`
[INFO] [stdout]   --> examples/box.rs:60:9
[INFO] [stdout]    |
[INFO] [stdout] 60 |     let putline = || print!("\n");
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_putline`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0283]: type annotations needed
[INFO] [stdout]  --> examples/loop.rs:4:25
[INFO] [stdout]   |
[INFO] [stdout] 4 |     v.iter().map(|x| x).collect();
[INFO] [stdout]   |                         ^^^^^^^ cannot infer type of the type parameter `B` declared on the method `collect`
[INFO] [stdout]   |
[INFO] [stdout]   = note: cannot satisfy `_: FromIterator<&i32>`
[INFO] [stdout] note: required by a bound in `collect`
[INFO] [stdout]  --> /rustc/3f6250a7bb79e600d9036bbc7c8f65af43933643/library/core/src/iter/traits/iterator.rs:2051:4
[INFO] [stdout] help: consider specifying the generic argument
[INFO] [stdout]   |
[INFO] [stdout] 4 |     v.iter().map(|x| x).collect::<Vec<_>>();
[INFO] [stdout]   |                                ++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n`
[INFO] [stdout]   --> examples/box.rs:64:9
[INFO] [stdout]    |
[INFO] [stdout] 64 |     let n = Node::new();
[INFO] [stdout]    |         ^ help: if this is intentional, prefix it with an underscore: `_n`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0283`.
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0425`.
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::rc::Rc`
[INFO] [stdout]  --> examples/thread.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::rc::Rc;
[INFO] [stdout]   |     ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `RustByExamples` (example "loop") due to 1 previous error; 1 warning emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: function `function` is never used
[INFO] [stdout]   --> examples/mod.rs:40:4
[INFO] [stdout]    |
[INFO] [stdout] 40 | fn function() {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: cannot add a float to an integer
[INFO] [stdout]   --> examples/recursive_type.rs:35:31
[INFO] [stdout]    |
[INFO] [stdout] 35 |     println!("{:?} {:?}", e, c+d);
[INFO] [stdout]    |                               ^ no implementation for `{integer} + {float}`
[INFO] [stdout]    |
[INFO] [stdout]    = help: the trait `Add<{float}>` is not implemented for `{integer}`
[INFO] [stdout]    = help: the following other types implement trait `Add<Rhs>`:
[INFO] [stdout]              `&f128` implements `Add<f128>`
[INFO] [stdout]              `&f128` implements `Add`
[INFO] [stdout]              `&f16` implements `Add<f16>`
[INFO] [stdout]              `&f16` implements `Add`
[INFO] [stdout]              `&f32` implements `Add<f32>`
[INFO] [stdout]              `&f32` implements `Add`
[INFO] [stdout]              `&f64` implements `Add<f64>`
[INFO] [stdout]              `&f64` implements `Add`
[INFO] [stdout]            and 56 others
[INFO] [stdout] note: required for `Cup<{integer}>` to implement `Add<Cup<{float}>>`
[INFO] [stdout]   --> examples/recursive_type.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl <A,B> Add<Cup<B>> for Cup<A>
[INFO] [stdout]    |            ^^^^^^^^^^^     ^^^^^^
[INFO] [stdout] 20 | where A: Add<B>
[INFO] [stdout]    |          ------ unsatisfied trait bound introduced here
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> examples/iterator.rs:147:9
[INFO] [stdout]     |
[INFO] [stdout] 147 |     let mut names = vec!["Bruce", "Chal", "Grooy"];
[INFO] [stdout]     |         ----^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> examples/iterator.rs:156:9
[INFO] [stdout]     |
[INFO] [stdout] 156 |     let mut names = ["Bruce", "Chal", "Grooy"];
[INFO] [stdout]     |         ----^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `lines`
[INFO] [stdout]   --> examples/generic.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 28 |     let lines = "some\nniubi\nstring".lines();
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_lines`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> examples/iterator.rs:179:9
[INFO] [stdout]     |
[INFO] [stdout] 179 |     let mut fib = Fibonacci::new();
[INFO] [stdout]     |         ----^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> examples/iterator.rs:186:9
[INFO] [stdout]     |
[INFO] [stdout] 186 |     let mut fib = Fibonacci::new();
[INFO] [stdout]     |         ----^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `names`
[INFO] [stdout]    --> examples/iterator.rs:164:9
[INFO] [stdout]     |
[INFO] [stdout] 164 |     let names = ["Bruce", "WTF"];
[INFO] [stdout]     |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_names`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> examples/iterator.rs:200:9
[INFO] [stdout]     |
[INFO] [stdout] 200 |     let mut word = Words::new("Hello Bruce I am WTFUCKER");
[INFO] [stdout]     |         ----^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_type` is never used
[INFO] [stdout]   --> examples/iterator.rs:16:4
[INFO] [stdout]    |
[INFO] [stdout] 16 | fn print_type<T>(_: &T) {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Fibonacci` is never constructed
[INFO] [stdout]   --> examples/iterator.rs:21:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | struct Fibonacci {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> examples/iterator.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 36 | impl Fibonacci {
[INFO] [stdout]    | -------------- associated function in this implementation
[INFO] [stdout] 37 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `iter` is never used
[INFO] [stdout]    --> examples/iterator.rs:126:8
[INFO] [stdout]     |
[INFO] [stdout] 125 | impl<'a> Words<'a> {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] 126 |     fn iter(&'a self) -> IterHelper<'a> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `exam_run` is never used
[INFO] [stdout]    --> examples/iterator.rs:146:4
[INFO] [stdout]     |
[INFO] [stdout] 146 | fn exam_run() {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `RustByExamples` (example "box") due to 1 previous error; 2 warnings emitted
[INFO] [stdout] For more information about this error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `age`, and `subject` are never read
[INFO] [stdout]   --> examples/struct_inherit.rs:45:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | struct Teacher {
[INFO] [stdout]    |        ------- fields in this struct
[INFO] [stdout] 44 |     apple_eater: AppleEater,
[INFO] [stdout] 45 |     name: String,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 46 |     age: u16,
[INFO] [stdout]    |     ^^^
[INFO] [stdout] 47 |     subject: String,
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Student` is never constructed
[INFO] [stdout]   --> examples/struct_inherit.rs:50:8
[INFO] [stdout]    |
[INFO] [stdout] 50 | struct Student {
[INFO] [stdout]    |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `eat_granny_smith` is never used
[INFO] [stdout]   --> examples/struct_inherit.rs:20:16
[INFO] [stdout]    |
[INFO] [stdout]  7 |     impl AppleEater {
[INFO] [stdout]    |     --------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 20 |         pub fn eat_granny_smith(&mut self) { self.granny_smiths += 1; }
[INFO] [stdout]    |                ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `eat_granny_smith` is never used
[INFO] [stdout]   --> examples/struct_inherit.rs:34:12
[INFO] [stdout]    |
[INFO] [stdout] 31 |     pub trait AsMutAppleEater: AsAppleEater {
[INFO] [stdout]    |               --------------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 34 |         fn eat_granny_smith(&mut self)
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]  --> examples/demo.rs:2:9
[INFO] [stdout]   |
[INFO] [stdout] 2 |     let mut m = 9;
[INFO] [stdout]   |         ----^
[INFO] [stdout]   |         |
[INFO] [stdout]   |         help: remove this `mut`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `iter`
[INFO] [stdout]  --> examples/demo.rs:6:9
[INFO] [stdout]   |
[INFO] [stdout] 6 |     let iter = [1,2,3].iter();
[INFO] [stdout]   |         ^^^^ help: if this is intentional, prefix it with an underscore: `_iter`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `m1` is never read
[INFO] [stdout]  --> examples/demo.rs:3:18
[INFO] [stdout]   |
[INFO] [stdout] 3 |     let mut m1 = m;
[INFO] [stdout]   |                  ^
[INFO] [stdout]   |
[INFO] [stdout]   = help: maybe it is overwritten before being read?
[INFO] [stdout]   = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `main1` is never used
[INFO] [stdout]  --> examples/thread.rs:6:4
[INFO] [stdout]   |
[INFO] [stdout] 6 | fn main1() {
[INFO] [stdout]   |    ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `RustByExamples` (example "recursive_type") due to 1 previous error
[INFO] [stdout] error[E0308]: arguments to this enum variant are incorrect
[INFO] [stdout]   --> examples/smart_point.rs:30:21
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let a = Rc::new(Cons(Rc::new(RefCell::new(1)),
[INFO] [stdout]    |                     ^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: expected `i32`, found `Rc<RefCell<{integer}>>`
[INFO] [stdout]   --> examples/smart_point.rs:30:26
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let a = Rc::new(Cons(Rc::new(RefCell::new(1)),
[INFO] [stdout]    |                          ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: expected type `i32`
[INFO] [stdout]             found struct `Rc<RefCell<{integer}>>`
[INFO] [stdout] note: expected `RefCell<Rc<List>>`, found `Rc<List>`
[INFO] [stdout]   --> examples/smart_point.rs:31:26
[INFO] [stdout]    |
[INFO] [stdout] 31 |                          Rc::new(Nil)));
[INFO] [stdout]    |                          ^^^^^^^^^^^^
[INFO] [stdout]    = note: expected struct `RefCell<Rc<_>>`
[INFO] [stdout]               found struct `Rc<_>`
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]   --> examples/smart_point.rs:4:5
[INFO] [stdout]    |
[INFO] [stdout]  4 |     Cons(i32, RefCell<Rc<List>>),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] help: call `Into::into` on this expression to convert `Rc<List>` into `RefCell<Rc<List>>`
[INFO] [stdout]    |
[INFO] [stdout] 31 |                          Rc::new(Nil).into()));
[INFO] [stdout]    |                                      +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Receiver` and `Sender`
[INFO] [stdout]  --> examples/channel.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 |     Sender,
[INFO] [stdout]   |     ^^^^^^
[INFO] [stdout] 4 |     Receiver
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: use of unresolved module or unlinked crate `io`
[INFO] [stdout]   --> examples/channel.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 |     io::spawn();
[INFO] [stdout]    |     ^^ use of unresolved module or unlinked crate `io`
[INFO] [stdout]    |
[INFO] [stdout]    = help: if you wanted to use a crate named `io`, use `cargo add io` to add it to your `Cargo.toml`
[INFO] [stdout] help: a builtin type with a similar name exists
[INFO] [stdout]    |
[INFO] [stdout] 13 -     io::spawn();
[INFO] [stdout] 13 +     i8::spawn();
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: arguments to this enum variant are incorrect
[INFO] [stdout]   --> examples/smart_point.rs:32:17
[INFO] [stdout]    |
[INFO] [stdout] 32 |     let mut b = Cons(Rc::new(RefCell::new(2)), Rc::clone(&a));
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: expected `i32`, found `Rc<RefCell<{integer}>>`
[INFO] [stdout]   --> examples/smart_point.rs:32:22
[INFO] [stdout]    |
[INFO] [stdout] 32 |     let mut b = Cons(Rc::new(RefCell::new(2)), Rc::clone(&a));
[INFO] [stdout]    |                      ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: expected type `i32`
[INFO] [stdout]             found struct `Rc<RefCell<{integer}>>`
[INFO] [stdout] note: expected `RefCell<Rc<List>>`, found `Rc<List>`
[INFO] [stdout]   --> examples/smart_point.rs:32:48
[INFO] [stdout]    |
[INFO] [stdout] 32 |     let mut b = Cons(Rc::new(RefCell::new(2)), Rc::clone(&a));
[INFO] [stdout]    |                                                ^^^^^^^^^^^^^
[INFO] [stdout]    = note: expected struct `RefCell<Rc<_>>`
[INFO] [stdout]               found struct `Rc<_>`
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]   --> examples/smart_point.rs:4:5
[INFO] [stdout]    |
[INFO] [stdout]  4 |     Cons(i32, RefCell<Rc<List>>),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] help: call `Into::into` on this expression to convert `Rc<List>` into `RefCell<Rc<List>>`
[INFO] [stdout]    |
[INFO] [stdout] 32 |     let mut b = Cons(Rc::new(RefCell::new(2)), Rc::clone(&a).into());
[INFO] [stdout]    |                                                             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: arguments to this enum variant are incorrect
[INFO] [stdout]   --> examples/smart_point.rs:34:14
[INFO] [stdout]    |
[INFO] [stdout] 34 |     let  c = Cons(Rc::new(RefCell::new(3)), a.clone()); // 只增加引用计数
[INFO] [stdout]    |              ^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: expected `i32`, found `Rc<RefCell<{integer}>>`
[INFO] [stdout]   --> examples/smart_point.rs:34:19
[INFO] [stdout]    |
[INFO] [stdout] 34 |     let  c = Cons(Rc::new(RefCell::new(3)), a.clone()); // 只增加引用计数
[INFO] [stdout]    |                   ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: expected type `i32`
[INFO] [stdout]             found struct `Rc<RefCell<{integer}>>`
[INFO] [stdout] note: expected `RefCell<Rc<List>>`, found `Rc<List>`
[INFO] [stdout]   --> examples/smart_point.rs:34:45
[INFO] [stdout]    |
[INFO] [stdout] 34 |     let  c = Cons(Rc::new(RefCell::new(3)), a.clone()); // 只增加引用计数
[INFO] [stdout]    |                                             ^^^^^^^^^
[INFO] [stdout]    = note: expected struct `RefCell<Rc<_>>`
[INFO] [stdout]               found struct `Rc<_>`
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]   --> examples/smart_point.rs:4:5
[INFO] [stdout]    |
[INFO] [stdout]  4 |     Cons(i32, RefCell<Rc<List>>),
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] help: call `Into::into` on this expression to convert `Rc<List>` into `RefCell<Rc<List>>`
[INFO] [stdout]    |
[INFO] [stdout] 34 |     let  c = Cons(Rc::new(RefCell::new(3)), a.clone().into()); // 只增加引用计数
[INFO] [stdout]    |                                                      +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `RustByExamples` (example "channel") due to 1 previous error; 1 warning emitted
[INFO] [stdout] For more information about this error, try `rustc --explain E0308`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `RustByExamples` (example "smart_point") due to 3 previous errors; 3 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "8d045a7c0ed94a699a6cff67e58c435f0833f8639281f5510135b8e5ce865ab4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8d045a7c0ed94a699a6cff67e58c435f0833f8639281f5510135b8e5ce865ab4", kill_on_drop: false }`
[INFO] [stdout] 8d045a7c0ed94a699a6cff67e58c435f0833f8639281f5510135b8e5ce865ab4
