[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] testing BruceChar/LearnRustByExample against master#733b47ea4b1b86216f14ef56e49440c33933f230+rustflags=-Copt-level=3 for pr-138759
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBruceChar%2FLearnRustByExample" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/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-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/BruceChar/LearnRustByExample on toolchain 733b47ea4b1b86216f14ef56e49440c33933f230
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "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" "+733b47ea4b1b86216f14ef56e49440c33933f230" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 305d88d3ddb1be69b86e6ecc604b72ce0c2ddd2687eeb0d0bf82ada9cbddaed6
[INFO] running `Command { std: "docker" "start" "-a" "305d88d3ddb1be69b86e6ecc604b72ce0c2ddd2687eeb0d0bf82ada9cbddaed6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "305d88d3ddb1be69b86e6ecc604b72ce0c2ddd2687eeb0d0bf82ada9cbddaed6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "305d88d3ddb1be69b86e6ecc604b72ce0c2ddd2687eeb0d0bf82ada9cbddaed6", kill_on_drop: false }`
[INFO] [stdout] 305d88d3ddb1be69b86e6ecc604b72ce0c2ddd2687eeb0d0bf82ada9cbddaed6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/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 -Copt-level=3" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] ceefaffe4cf95de7346c0cb99e58f511991a92842b9b0021526312aa1a6b70d4
[INFO] running `Command { std: "docker" "start" "-a" "ceefaffe4cf95de7346c0cb99e58f511991a92842b9b0021526312aa1a6b70d4", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.80
[INFO] [stderr]    Compiling getrandom v0.1.15
[INFO] [stderr]    Compiling another v0.1.0 (/opt/rustwide/workdir/src/another)
[INFO] [stderr]    Compiling rand_core v0.5.1
[INFO] [stderr]    Compiling rand_chacha v0.2.2
[INFO] [stderr]    Compiling rand v0.7.3
[INFO] [stderr]    Compiling anolib v0.1.0 (/opt/rustwide/workdir/anolib)
[INFO] [stderr]    Compiling mylib v0.1.0 (/opt/rustwide/workdir/mylib)
[INFO] [stderr]    Compiling RustByExamples v0.1.0 (/opt/rustwide/workdir)
[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)]` 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)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 4.69s
[INFO] running `Command { std: "docker" "inspect" "ceefaffe4cf95de7346c0cb99e58f511991a92842b9b0021526312aa1a6b70d4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ceefaffe4cf95de7346c0cb99e58f511991a92842b9b0021526312aa1a6b70d4", kill_on_drop: false }`
[INFO] [stdout] ceefaffe4cf95de7346c0cb99e58f511991a92842b9b0021526312aa1a6b70d4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/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 -Copt-level=3" "-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+733b47ea4b1b86216f14ef56e49440c33933f230" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b90573df9d11e52c371fd8a497960e7a625fb39834afb4ba9a26a510cf46ff6d
[INFO] running `Command { std: "docker" "start" "-a" "b90573df9d11e52c371fd8a497960e7a625fb39834afb4ba9a26a510cf46ff6d", kill_on_drop: false }`
[INFO] [stderr]    Compiling RustByExamples v0.1.0 (/opt/rustwide/workdir)
[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)]` on by default
[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)]` 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: 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)]` 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: 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: 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)]` 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] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> examples/func.rs:9:27
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn factory(x: i32) -> Box<Fn(i32) -> i32> {
[INFO] [stdout]   |                           ^^^^^^^^^^^^^^
[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 <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn factory(x: i32) -> Box<dyn Fn(i32) -> i32> {
[INFO] [stdout]   |                           +++
[INFO] [stdout] 
[INFO] [stdout] 
[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)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `UsState` is never used
[INFO] [stdout]  --> examples/match.rs:3:6
[INFO] [stdout]   |
[INFO] [stdout] 3 | enum UsState {
[INFO] [stdout]   |      ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Coin` is never used
[INFO] [stdout]   --> examples/match.rs:10:6
[INFO] [stdout]    |
[INFO] [stdout] 10 | enum Coin {
[INFO] [stdout]    |      ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `value_in_cents` is never used
[INFO] [stdout]   --> examples/match.rs:17:4
[INFO] [stdout]    |
[INFO] [stdout] 17 | fn value_in_cents(coin: Coin) -> u8 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `other_bind` is never used
[INFO] [stdout]   --> examples/match.rs:52:4
[INFO] [stdout]    |
[INFO] [stdout] 52 | fn other_bind(coin: Coin) {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `plus_one` is never used
[INFO] [stdout]   --> examples/match.rs:63:4
[INFO] [stdout]    |
[INFO] [stdout] 63 | fn plus_one(x: Option<i32>) -> Option<i32> {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_without_quarter` is never used
[INFO] [stdout]   --> examples/match.rs:71:4
[INFO] [stdout]    |
[INFO] [stdout] 71 | fn count_without_quarter(coins: &Vec<Coin>) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `count_while` is never used
[INFO] [stdout]   --> examples/match.rs:86:4
[INFO] [stdout]    |
[INFO] [stdout] 86 | fn count_while(coins: &mut Vec<Coin>) -> i32 {
[INFO] [stdout]    |    ^^^^^^^^^^^
[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)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `m1` is never read
[INFO] [stdout]  --> examples/demo.rs:3:13
[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)]` 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)]` on by default
[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)]` 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)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[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 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)]` on by default
[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] 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] [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] [stderr] warning: build failed, waiting for other jobs to finish...
[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)]` 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[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/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/iter/traits/iterator.rs:2014:5
[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] For more information about this error, try `rustc --explain E0283`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `RustByExamples` (example "loop") due to 1 previous error; 1 warning emitted
[INFO] [stdout] error[E0282]: type annotations needed for `HashMap<_, _>`
[INFO] [stdout]   --> examples/rc.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let m = HashMap::new();
[INFO] [stdout]    |         ^   -------------- type must be known at this point
[INFO] [stdout]    |
[INFO] [stdout] help: consider giving `m` an explicit type, where the type for type parameter `K` is specified
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let m: HashMap<K, V> = HashMap::new();
[INFO] [stdout]    |          +++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0282`.
[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)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `RustByExamples` (example "rc") due to 1 previous error
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> examples/inter_mutability.rs:18:45
[INFO] [stdout]    |
[INFO] [stdout] 18 |     let b = Cons(RefCell::new(4), Rc::clone(&a));
[INFO] [stdout]    |                                   --------- ^^ expected `&Rc<List>`, found `&List`
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   arguments to this function are incorrect
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected reference `&Rc<List>`
[INFO] [stdout]               found reference `&List`
[INFO] [stdout] note: method defined here
[INFO] [stdout]   --> /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/clone.rs:204:8
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> examples/inter_mutability.rs:19:45
[INFO] [stdout]    |
[INFO] [stdout] 19 |     let c = Cons(RefCell::new(3), Rc::clone(&a));
[INFO] [stdout]    |                                   --------- ^^ expected `&Rc<List>`, found `&List`
[INFO] [stdout]    |                                   |
[INFO] [stdout]    |                                   arguments to this function are incorrect
[INFO] [stdout]    |
[INFO] [stdout]    = note: expected reference `&Rc<List>`
[INFO] [stdout]               found reference `&List`
[INFO] [stdout] note: method defined here
[INFO] [stdout]   --> /rustc/733b47ea4b1b86216f14ef56e49440c33933f230/library/core/src/clone.rs:204:8
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0615]: attempted to take value of method `borrow_mut` on type `RefCell<i32>`
[INFO] [stdout]   --> examples/inter_mutability.rs:24:16
[INFO] [stdout]    |
[INFO] [stdout] 24 |             *v.borrow_mut += 5;
[INFO] [stdout]    |                ^^^^^^^^^^ method, not a field
[INFO] [stdout]    |
[INFO] [stdout]    = help: methods are immutable and cannot be assigned to
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0308, E0615.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0308`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `RustByExamples` (example "inter_mutability") due to 3 previous errors
[INFO] running `Command { std: "docker" "inspect" "b90573df9d11e52c371fd8a497960e7a625fb39834afb4ba9a26a510cf46ff6d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b90573df9d11e52c371fd8a497960e7a625fb39834afb4ba9a26a510cf46ff6d", kill_on_drop: false }`
[INFO] [stdout] b90573df9d11e52c371fd8a497960e7a625fb39834afb4ba9a26a510cf46ff6d
