[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 try#438eb4c1a1c3841523d7f672601e8adbe04cff28 for pr-147589-1
[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 438eb4c1a1c3841523d7f672601e8adbe04cff28
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+438eb4c1a1c3841523d7f672601e8adbe04cff28" "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" "+438eb4c1a1c3841523d7f672601e8adbe04cff28" "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" "+438eb4c1a1c3841523d7f672601e8adbe04cff28" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 407e2b84be5823fab085377e24976cb653dbda2dfd9235bc360e9b07c47c279d
[INFO] running `Command { std: "docker" "start" "-a" "407e2b84be5823fab085377e24976cb653dbda2dfd9235bc360e9b07c47c279d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "407e2b84be5823fab085377e24976cb653dbda2dfd9235bc360e9b07c47c279d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "407e2b84be5823fab085377e24976cb653dbda2dfd9235bc360e9b07c47c279d", kill_on_drop: false }`
[INFO] [stdout] 407e2b84be5823fab085377e24976cb653dbda2dfd9235bc360e9b07c47c279d
[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" "-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" "+438eb4c1a1c3841523d7f672601e8adbe04cff28" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 979542c3bc2171f1592108bde79a1b6799df66a20085bc8e5ede066edcda3926
[INFO] running `Command { std: "docker" "start" "-a" "979542c3bc2171f1592108bde79a1b6799df66a20085bc8e5ede066edcda3926", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.80
[INFO] [stderr]    Compiling getrandom v0.1.15
[INFO] [stderr]     Checking ppv-lite86 v0.2.10
[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] [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 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: 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 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: 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: 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] [stderr]     Checking start v0.1.0 (/opt/rustwide/workdir/start)
[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[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: 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: 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] For more information about this error, try `rustc --explain E0277`.
[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] [stderr] error: could not compile `RustByExamples` (example "recursive_type") due to 1 previous error
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[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] 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/438eb4c1a1c3841523d7f672601e8adbe04cff28/library/core/src/iter/traits/iterator.rs:2015: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] [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/438eb4c1a1c3841523d7f672601e8adbe04cff28/library/core/src/clone.rs:236:8
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `RustByExamples` (example "loop") due to 1 previous error; 1 warning emitted
[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/438eb4c1a1c3841523d7f672601e8adbe04cff28/library/core/src/clone.rs:236: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] [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] 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] 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] running `Command { std: "docker" "inspect" "979542c3bc2171f1592108bde79a1b6799df66a20085bc8e5ede066edcda3926", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "979542c3bc2171f1592108bde79a1b6799df66a20085bc8e5ede066edcda3926", kill_on_drop: false }`
[INFO] [stdout] 979542c3bc2171f1592108bde79a1b6799df66a20085bc8e5ede066edcda3926
