[INFO] cloning repository https://github.com/kanishkd4/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/kanishkd4/Rust-by-example" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkanishkd4%2FRust-by-example", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkanishkd4%2FRust-by-example'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a2b88db631e7cfa65de6b348419da65cb5c3b8c7
[INFO] building kanishkd4/Rust-by-example against master#ad211ced81509462cdfe4c29ed10f97279a0acae for pr-135216-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkanishkd4%2FRust-by-example" "/workspace/builds/worker-5-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/kanishkd4/Rust-by-example on toolchain ad211ced81509462cdfe4c29ed10f97279a0acae
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ad211ced81509462cdfe4c29ed10f97279a0acae" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/kanishkd4/Rust-by-example
[INFO] finished tweaking git repo https://github.com/kanishkd4/Rust-by-example
[INFO] tweaked toml for git repo https://github.com/kanishkd4/Rust-by-example written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/kanishkd4/Rust-by-example 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" "+ad211ced81509462cdfe4c29ed10f97279a0acae" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+ad211ced81509462cdfe4c29ed10f97279a0acae" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 1f84e36e32d280870f6631cb3d6f6ae411ebdd8137c7e91accadcf72ce5f742a
[INFO] running `Command { std: "docker" "start" "-a" "1f84e36e32d280870f6631cb3d6f6ae411ebdd8137c7e91accadcf72ce5f742a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "1f84e36e32d280870f6631cb3d6f6ae411ebdd8137c7e91accadcf72ce5f742a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "1f84e36e32d280870f6631cb3d6f6ae411ebdd8137c7e91accadcf72ce5f742a", kill_on_drop: false }`
[INFO] [stdout] 1f84e36e32d280870f6631cb3d6f6ae411ebdd8137c7e91accadcf72ce5f742a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+ad211ced81509462cdfe4c29ed10f97279a0acae" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 7ab2c9e3d6b24a6a668ccaffe8703eae7721288c2699df061116a7229fcf968d
[INFO] running `Command { std: "docker" "start" "-a" "7ab2c9e3d6b24a6a668ccaffe8703eae7721288c2699df061116a7229fcf968d", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling rust-by-example v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/bin/c14_generics_new_associated.rs:60:24
[INFO] [stdout]    |
[INFO] [stdout] 60 |     fn contains(&self, &A, &B) -> bool; // explicitly requires A and B
[INFO] [stdout]    |                        ^^ help: try naming the parameter or explicitly ignoring it: `_: &A`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/bin/c14_generics_new_associated.rs:60:28
[INFO] [stdout]    |
[INFO] [stdout] 60 |     fn contains(&self, &A, &B) -> bool; // explicitly requires A and B
[INFO] [stdout]    |                            ^^ help: try naming the parameter or explicitly ignoring it: `_: &B`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `u64_t` should have an upper camel case name
[INFO] [stdout]   --> src/bin/c5_types.rs:14:6
[INFO] [stdout]    |
[INFO] [stdout] 14 | type u64_t = u64;
[INFO] [stdout]    |      ^^^^^ help: convert the identifier to upper camel case: `U64T`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `u64_t` is never used
[INFO] [stdout]   --> src/bin/c5_types.rs:14:6
[INFO] [stdout]    |
[INFO] [stdout] 14 | type u64_t = u64;
[INFO] [stdout]    |      ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter`
[INFO] [stdout]   --> src/bin/c17_macro_dry_dsl_variadics.rs:37:9
[INFO] [stdout]    |
[INFO] [stdout] 37 |     use std::iter;
[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/bin/c17_macro_dry_dsl_variadics.rs:36:1
[INFO] [stdout]    |
[INFO] [stdout] 36 | mod test {
[INFO] [stdout]    | ^^^^^^^^
[INFO] [stdout]    = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `value` is never read
[INFO] [stdout]   --> src/bin/c6_conversions.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | struct Number {
[INFO] [stdout]    |        ------ field in this struct
[INFO] [stdout] 44 |     value: i32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Number` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused label
[INFO] [stdout]   --> src/bin/c8_flow_control_ifelse_loops.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |         'inner: loop {
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_labels)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_assign` is never used
[INFO] [stdout]   --> src/bin/c17_macro_dry_dsl_variadics.rs:32:5
[INFO] [stdout]    |
[INFO] [stdout] 32 | op!(add_assign, Add, +=, add);
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout]    = note: this warning originates in the macro `op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/bin/c16_traits_iter_clone.rs:84:13
[INFO] [stdout]    |
[INFO] [stdout] 84 | struct Pair(Box<i32>, Box<i32>); // a tuple struct with resources that implements the Clone trait
[INFO] [stdout]    |        ---- ^^^^^^^^  ^^^^^^^^
[INFO] [stdout]    |        |
[INFO] [stdout]    |        fields in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing these fields
[INFO] [stdout]    = note: `Pair` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `mul_assign` is never used
[INFO] [stdout]   --> src/bin/c17_macro_dry_dsl_variadics.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 | op!(mul_assign, Mul, *=, mul);
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `sub_assign` is never used
[INFO] [stdout]   --> src/bin/c17_macro_dry_dsl_variadics.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | op!(sub_assign, Sub, -=, sub);  
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this warning originates in the macro `op` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `p1` and `p2` are never read
[INFO] [stdout]   --> src/bin/c3_custom_types_structs.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | struct Rectangle {
[INFO] [stdout]    |        --------- fields in this struct
[INFO] [stdout] 25 |     p1: Point,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 26 |     p2: Point,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `foo` is never used
[INFO] [stdout]   --> src/bin/c9_higher_order_diverging_functions.rs:44:4
[INFO] [stdout]    |
[INFO] [stdout] 44 | fn foo() -> ! {
[INFO] [stdout]    |    ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/bin/c16_traits_derive_op_drop.rs:26:16
[INFO] [stdout]    |
[INFO] [stdout] 26 | struct Seconds(i32); // a tuple struct with no attributes
[INFO] [stdout]    |        ------- ^^^
[INFO] [stdout]    |        |
[INFO] [stdout]    |        field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `s` should have an upper camel case name
[INFO] [stdout]   --> src/bin/c14_generics_bounds_where.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | struct s<T: Display>(T); // S can only be a type that implements the Display trait - so no vectors
[INFO] [stdout]    |        ^ help: convert the identifier to upper camel case (notice the capitalization): `S`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `printer` is never used
[INFO] [stdout]  --> src/bin/c14_generics_bounds_where.rs:7:4
[INFO] [stdout]   |
[INFO] [stdout] 7 | fn printer<T: Display>(t: T) {
[INFO] [stdout]   |    ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `s` is never constructed
[INFO] [stdout]   --> src/bin/c14_generics_bounds_where.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | struct s<T: Display>(T); // S can only be a type that implements the Display trait - so no vectors
[INFO] [stdout]    |        ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/bin/c14_generics_associated_phantom.rs:10:24
[INFO] [stdout]    |
[INFO] [stdout] 10 |     fn contains(&self, &Self::A, &Self::B) -> bool;
[INFO] [stdout]    |                        ^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Self::A`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/bin/c14_generics_associated_phantom.rs:10:34
[INFO] [stdout]    |
[INFO] [stdout] 10 |     fn contains(&self, &Self::A, &Self::B) -> bool;
[INFO] [stdout]    |                                  ^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Self::B`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `web_event` should have an upper camel case name
[INFO] [stdout]  --> src/bin/c3_custom_types_enums1.rs:6:6
[INFO] [stdout]   |
[INFO] [stdout] 6 | enum web_event {
[INFO] [stdout]   |      ^^^^^^^^^ help: convert the identifier to upper camel case: `WebEvent`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `page_load` should have an upper camel case name
[INFO] [stdout]  --> src/bin/c3_custom_types_enums1.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     page_load,
[INFO] [stdout]   |     ^^^^^^^^^ help: convert the identifier to upper camel case: `PageLoad`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `page_unload` should have an upper camel case name
[INFO] [stdout]  --> src/bin/c3_custom_types_enums1.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     page_unload,
[INFO] [stdout]   |     ^^^^^^^^^^^ help: convert the identifier to upper camel case: `PageUnload`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `key_press` should have an upper camel case name
[INFO] [stdout]   --> src/bin/c3_custom_types_enums1.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     key_press(char),
[INFO] [stdout]    |     ^^^^^^^^^ help: convert the identifier to upper camel case: `KeyPress`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `paste` should have an upper camel case name
[INFO] [stdout]   --> src/bin/c3_custom_types_enums1.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     paste(String),
[INFO] [stdout]    |     ^^^^^ help: convert the identifier to upper camel case: `Paste`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `click` should have an upper camel case name
[INFO] [stdout]   --> src/bin/c3_custom_types_enums1.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     click { x: i64, y: i64 },
[INFO] [stdout]    |     ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Click`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `foo` is never used
[INFO] [stdout]  --> src/bin/c14_generics_functions_impl_traits.rs:8:4
[INFO] [stdout]   |
[INFO] [stdout] 8 | fn foo<T>(_arg: T) {} // becuase T has been specified as a generic type parameter using <T>, 
[INFO] [stdout]   |    ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `S` is never constructed
[INFO] [stdout]   --> src/bin/c14_generics_functions_impl_traits.rs:48:8
[INFO] [stdout]    |
[INFO] [stdout] 48 | struct S(A); // concrete type S that takes concrete type A defined above // commented for struct S below
[INFO] [stdout]    |        ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SGen` is never constructed
[INFO] [stdout]   --> src/bin/c14_generics_functions_impl_traits.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 49 | struct SGen<T>(T); // Generic type SGen
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reg_fn` is never used
[INFO] [stdout]   --> src/bin/c14_generics_functions_impl_traits.rs:51:4
[INFO] [stdout]    |
[INFO] [stdout] 51 | fn reg_fn(_s: S) {} // a regular function that takes an argument of type S - not a generic function
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `gen_spec_t` is never used
[INFO] [stdout]   --> src/bin/c14_generics_functions_impl_traits.rs:53:4
[INFO] [stdout]    |
[INFO] [stdout] 53 | fn gen_spec_t(_s: SGen<A>) {} // this is also not a generic as SGen has been given the type A
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `gen_spec_i32` is never used
[INFO] [stdout]   --> src/bin/c14_generics_functions_impl_traits.rs:54:4
[INFO] [stdout]    |
[INFO] [stdout] 54 | fn gen_spec_i32(_s: SGen<i32>) {} // this is also not a generic
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generic` is never used
[INFO] [stdout]   --> src/bin/c14_generics_functions_impl_traits.rs:55:4
[INFO] [stdout]    |
[INFO] [stdout] 55 | fn generic<T>(_s: SGen<T>) {} // a generic function
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `S1` is never constructed
[INFO] [stdout]   --> src/bin/c14_generics_functions_impl_traits.rs:59:8
[INFO] [stdout]    |
[INFO] [stdout] 59 | struct S1; // concrete type S
[INFO] [stdout]    |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GenericVal` is never constructed
[INFO] [stdout]   --> src/bin/c14_generics_functions_impl_traits.rs:60:8
[INFO] [stdout]    |
[INFO] [stdout] 60 | struct GenericVal<T>(T, ); // Generic type GenericVal
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Food` should have a snake case name
[INFO] [stdout]   --> src/bin/c18_error_option_unwrap.rs:81:21
[INFO] [stdout]    |
[INFO] [stdout] 81 |         Some(Peeled(Food)) => Some(Chopped(Food)),
[INFO] [stdout]    |                     ^^^^ help: convert the identifier to snake case (notice the capitalization): `food`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Food` should have a snake case name
[INFO] [stdout]   --> src/bin/c18_error_option_unwrap.rs:87:26
[INFO] [stdout]    |
[INFO] [stdout] 87 |     chopped.map(|Chopped(Food)| Cooked(Food))
[INFO] [stdout]    |                          ^^^^ help: convert the identifier to snake case (notice the capitalization): `food`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/bin/c15_scoping_lifetimes2.rs:49:21
[INFO] [stdout]    |
[INFO] [stdout] 49 | struct Borrowed<'a>(&'a i32);
[INFO] [stdout]    |        --------     ^^^^^^^
[INFO] [stdout]    |        |
[INFO] [stdout]    |        field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout]    = note: `Borrowed` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `x` and `y` are never read
[INFO] [stdout]   --> src/bin/c15_scoping_lifetimes2.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 53 | struct NamedBorrowed<'a> {
[INFO] [stdout]    |        ------------- fields in this struct
[INFO] [stdout] 54 |     x: &'a i32,
[INFO] [stdout]    |     ^
[INFO] [stdout] 55 |     y: &'a i32,
[INFO] [stdout]    |     ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `NamedBorrowed` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/bin/c15_scoping_lifetimes2.rs:61:9
[INFO] [stdout]    |
[INFO] [stdout] 61 |     Num(i32),
[INFO] [stdout]    |     --- ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Either` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 61 |     Num(()),
[INFO] [stdout]    |         ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/bin/c15_scoping_lifetimes2.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 62 |     Ref(&'a i32),
[INFO] [stdout]    |     --- ^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Either` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 62 |     Ref(()),
[INFO] [stdout]    |         ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/bin/c15_scoping_lifetimes2.rs:72:23
[INFO] [stdout]    |
[INFO] [stdout] 72 | struct Ref<'a, T: 'a>(&'a T); // Ref contains a reference to a generic type `T` that has an unknown lifetime 'a. `T` is bounded
[INFO] [stdout]    |        ---            ^^^^^
[INFO] [stdout]    |        |
[INFO] [stdout]    |        field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout]    = note: `Ref` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/bin/c8_flow_control_match.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 |         13...19 => println!("A teen"), // match an inclusive range. I've only seen the pattern ... in a match. ..= also works
[INFO] [stdout]    |           ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bin/c8_flow_control_match.rs:108:14
[INFO] [stdout]     |
[INFO] [stdout] 108 |         n @ 1...12 => println!("A child of {:?}", n), // again `...` instead of `..=` in match. Just stick to ..= in your own code
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bin/c8_flow_control_match.rs:109:15
[INFO] [stdout]     |
[INFO] [stdout] 109 |         n @ 13...19 => println!("A child of age {:?}", n),
[INFO] [stdout]     |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/bin/c1_formatted_print.rs:33:18
[INFO] [stdout]    |
[INFO] [stdout] 33 | struct Structure(i32);
[INFO] [stdout]    |        --------- ^^^
[INFO] [stdout]    |        |
[INFO] [stdout]    |        field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout]    = note: `Structure` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Deep` is never constructed
[INFO] [stdout]   --> src/bin/c1_formatted_print.rs:34:8
[INFO] [stdout]    |
[INFO] [stdout] 34 | struct Deep(Structure);
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `age` are never read
[INFO] [stdout]   --> src/bin/c1_formatted_print.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 37 | struct Person<'a> {
[INFO] [stdout]    |        ------ fields in this struct
[INFO] [stdout] 38 |     name: &'a str,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 39 |     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: struct `Matrix` is never constructed
[INFO] [stdout]   --> src/bin/c2_primitives.rs:94:8
[INFO] [stdout]    |
[INFO] [stdout] 94 | struct Matrix(f32, f32, f32, f32);
[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 2.11s
[INFO] running `Command { std: "docker" "inspect" "7ab2c9e3d6b24a6a668ccaffe8703eae7721288c2699df061116a7229fcf968d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7ab2c9e3d6b24a6a668ccaffe8703eae7721288c2699df061116a7229fcf968d", kill_on_drop: false }`
[INFO] [stdout] 7ab2c9e3d6b24a6a668ccaffe8703eae7721288c2699df061116a7229fcf968d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+ad211ced81509462cdfe4c29ed10f97279a0acae" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fe9426f60b0d6b0f5368c0401f5cd1932b19ce8d029f930fc3e12a2ef63e0ff5
[INFO] running `Command { std: "docker" "start" "-a" "fe9426f60b0d6b0f5368c0401f5cd1932b19ce8d029f930fc3e12a2ef63e0ff5", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling rust-by-example v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: type `web_event` should have an upper camel case name
[INFO] [stdout]  --> src/bin/c3_custom_types_enums1.rs:6:6
[INFO] [stdout]   |
[INFO] [stdout] 6 | enum web_event {
[INFO] [stdout]   |      ^^^^^^^^^ help: convert the identifier to upper camel case: `WebEvent`
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `page_load` should have an upper camel case name
[INFO] [stdout]  --> src/bin/c3_custom_types_enums1.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 |     page_load,
[INFO] [stdout]   |     ^^^^^^^^^ help: convert the identifier to upper camel case: `PageLoad`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `page_unload` should have an upper camel case name
[INFO] [stdout]  --> src/bin/c3_custom_types_enums1.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 |     page_unload,
[INFO] [stdout]   |     ^^^^^^^^^^^ help: convert the identifier to upper camel case: `PageUnload`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `key_press` should have an upper camel case name
[INFO] [stdout]   --> src/bin/c3_custom_types_enums1.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 |     key_press(char),
[INFO] [stdout]    |     ^^^^^^^^^ help: convert the identifier to upper camel case: `KeyPress`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `paste` should have an upper camel case name
[INFO] [stdout]   --> src/bin/c3_custom_types_enums1.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 |     paste(String),
[INFO] [stdout]    |     ^^^^^ help: convert the identifier to upper camel case: `Paste`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `click` should have an upper camel case name
[INFO] [stdout]   --> src/bin/c3_custom_types_enums1.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     click { x: i64, y: i64 },
[INFO] [stdout]    |     ^^^^^ help: convert the identifier to upper camel case (notice the capitalization): `Click`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/bin/c14_generics_new_associated.rs:60:24
[INFO] [stdout]    |
[INFO] [stdout] 60 |     fn contains(&self, &A, &B) -> bool; // explicitly requires A and B
[INFO] [stdout]    |                        ^^ help: try naming the parameter or explicitly ignoring it: `_: &A`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/bin/c14_generics_new_associated.rs:60:28
[INFO] [stdout]    |
[INFO] [stdout] 60 |     fn contains(&self, &A, &B) -> bool; // explicitly requires A and B
[INFO] [stdout]    |                            ^^ help: try naming the parameter or explicitly ignoring it: `_: &B`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Food` should have a snake case name
[INFO] [stdout]   --> src/bin/c18_error_option_unwrap.rs:81:21
[INFO] [stdout]    |
[INFO] [stdout] 81 |         Some(Peeled(Food)) => Some(Chopped(Food)),
[INFO] [stdout]    |                     ^^^^ help: convert the identifier to snake case (notice the capitalization): `food`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_snake_case)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `Food` should have a snake case name
[INFO] [stdout]   --> src/bin/c18_error_option_unwrap.rs:87:26
[INFO] [stdout]    |
[INFO] [stdout] 87 |     chopped.map(|Chopped(Food)| Cooked(Food))
[INFO] [stdout]    |                          ^^^^ help: convert the identifier to snake case (notice the capitalization): `food`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `value` is never read
[INFO] [stdout]   --> src/bin/c6_conversions.rs:44:5
[INFO] [stdout]    |
[INFO] [stdout] 43 | struct Number {
[INFO] [stdout]    |        ------ field in this struct
[INFO] [stdout] 44 |     value: i32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Number` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/bin/c15_scoping_lifetimes2.rs:49:21
[INFO] [stdout]    |
[INFO] [stdout] 49 | struct Borrowed<'a>(&'a i32);
[INFO] [stdout]    |        --------     ^^^^^^^
[INFO] [stdout]    |        |
[INFO] [stdout]    |        field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout]    = note: `Borrowed` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `x` and `y` are never read
[INFO] [stdout]   --> src/bin/c15_scoping_lifetimes2.rs:54:5
[INFO] [stdout]    |
[INFO] [stdout] 53 | struct NamedBorrowed<'a> {
[INFO] [stdout]    |        ------------- fields in this struct
[INFO] [stdout] 54 |     x: &'a i32,
[INFO] [stdout]    |     ^
[INFO] [stdout] 55 |     y: &'a i32,
[INFO] [stdout]    |     ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `NamedBorrowed` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/bin/c15_scoping_lifetimes2.rs:61:9
[INFO] [stdout]    |
[INFO] [stdout] 61 |     Num(i32),
[INFO] [stdout]    |     --- ^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Either` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 61 |     Num(()),
[INFO] [stdout]    |         ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/bin/c15_scoping_lifetimes2.rs:62:9
[INFO] [stdout]    |
[INFO] [stdout] 62 |     Ref(&'a i32),
[INFO] [stdout]    |     --- ^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Either` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 62 |     Ref(()),
[INFO] [stdout]    |         ~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/bin/c15_scoping_lifetimes2.rs:72:23
[INFO] [stdout]    |
[INFO] [stdout] 72 | struct Ref<'a, T: 'a>(&'a T); // Ref contains a reference to a generic type `T` that has an unknown lifetime 'a. `T` is bounded
[INFO] [stdout]    |        ---            ^^^^^
[INFO] [stdout]    |        |
[INFO] [stdout]    |        field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout]    = note: `Ref` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `s` should have an upper camel case name
[INFO] [stdout]   --> src/bin/c14_generics_bounds_where.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | struct s<T: Display>(T); // S can only be a type that implements the Display trait - so no vectors
[INFO] [stdout]    |        ^ help: convert the identifier to upper camel case (notice the capitalization): `S`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/bin/c14_generics_associated_phantom.rs:10:24
[INFO] [stdout]    |
[INFO] [stdout] 10 |     fn contains(&self, &Self::A, &Self::B) -> bool;
[INFO] [stdout]    |                        ^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Self::A`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout]    = note: `#[warn(anonymous_parameters)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: anonymous parameters are deprecated and will be removed in the next edition
[INFO] [stdout]   --> src/bin/c14_generics_associated_phantom.rs:10:34
[INFO] [stdout]    |
[INFO] [stdout] 10 |     fn contains(&self, &Self::A, &Self::B) -> bool;
[INFO] [stdout]    |                                  ^^^^^^^^ help: try naming the parameter or explicitly ignoring it: `_: &Self::B`
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2018!
[INFO] [stdout]    = note: for more information, see issue #41686 <https://github.com/rust-lang/rust/issues/41686>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Matrix` is never constructed
[INFO] [stdout]   --> src/bin/c2_primitives.rs:94:8
[INFO] [stdout]    |
[INFO] [stdout] 94 | struct Matrix(f32, f32, f32, f32);
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `foo` is never used
[INFO] [stdout]   --> src/bin/c9_higher_order_diverging_functions.rs:44:4
[INFO] [stdout]    |
[INFO] [stdout] 44 | fn foo() -> ! {
[INFO] [stdout]    |    ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `printer` is never used
[INFO] [stdout]  --> src/bin/c14_generics_bounds_where.rs:7:4
[INFO] [stdout]   |
[INFO] [stdout] 7 | fn printer<T: Display>(t: T) {
[INFO] [stdout]   |    ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `s` is never constructed
[INFO] [stdout]   --> src/bin/c14_generics_bounds_where.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | struct s<T: Display>(T); // S can only be a type that implements the Display trait - so no vectors
[INFO] [stdout]    |        ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/bin/c8_flow_control_match.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 |         13...19 => println!("A teen"), // match an inclusive range. I've only seen the pattern ... in a match. ..= also works
[INFO] [stdout]    |           ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) 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(ellipsis_inclusive_range_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bin/c8_flow_control_match.rs:108:14
[INFO] [stdout]     |
[INFO] [stdout] 108 |         n @ 1...12 => println!("A child of {:?}", n), // again `...` instead of `..=` in match. Just stick to ..= in your own code
[INFO] [stdout]     |              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/bin/c8_flow_control_match.rs:109:15
[INFO] [stdout]     |
[INFO] [stdout] 109 |         n @ 13...19 => println!("A child of age {:?}", n),
[INFO] [stdout]     |               ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) 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] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `u64_t` should have an upper camel case name
[INFO] [stdout]   --> src/bin/c5_types.rs:14:6
[INFO] [stdout]    |
[INFO] [stdout] 14 | type u64_t = u64;
[INFO] [stdout]    |      ^^^^^ help: convert the identifier to upper camel case: `U64T`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(non_camel_case_types)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `u64_t` is never used
[INFO] [stdout]   --> src/bin/c5_types.rs:14:6
[INFO] [stdout]    |
[INFO] [stdout] 14 | type u64_t = u64;
[INFO] [stdout]    |      ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `foo` is never used
[INFO] [stdout]  --> src/bin/c14_generics_functions_impl_traits.rs:8:4
[INFO] [stdout]   |
[INFO] [stdout] 8 | fn foo<T>(_arg: T) {} // becuase T has been specified as a generic type parameter using <T>, 
[INFO] [stdout]   |    ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `S` is never constructed
[INFO] [stdout]   --> src/bin/c14_generics_functions_impl_traits.rs:48:8
[INFO] [stdout]    |
[INFO] [stdout] 48 | struct S(A); // concrete type S that takes concrete type A defined above // commented for struct S below
[INFO] [stdout]    |        ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SGen` is never constructed
[INFO] [stdout]   --> src/bin/c14_generics_functions_impl_traits.rs:49:8
[INFO] [stdout]    |
[INFO] [stdout] 49 | struct SGen<T>(T); // Generic type SGen
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reg_fn` is never used
[INFO] [stdout]   --> src/bin/c14_generics_functions_impl_traits.rs:51:4
[INFO] [stdout]    |
[INFO] [stdout] 51 | fn reg_fn(_s: S) {} // a regular function that takes an argument of type S - not a generic function
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `gen_spec_t` is never used
[INFO] [stdout]   --> src/bin/c14_generics_functions_impl_traits.rs:53:4
[INFO] [stdout]    |
[INFO] [stdout] 53 | fn gen_spec_t(_s: SGen<A>) {} // this is also not a generic as SGen has been given the type A
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `gen_spec_i32` is never used
[INFO] [stdout]   --> src/bin/c14_generics_functions_impl_traits.rs:54:4
[INFO] [stdout]    |
[INFO] [stdout] 54 | fn gen_spec_i32(_s: SGen<i32>) {} // this is also not a generic
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `generic` is never used
[INFO] [stdout]   --> src/bin/c14_generics_functions_impl_traits.rs:55:4
[INFO] [stdout]    |
[INFO] [stdout] 55 | fn generic<T>(_s: SGen<T>) {} // a generic function
[INFO] [stdout]    |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `S1` is never constructed
[INFO] [stdout]   --> src/bin/c14_generics_functions_impl_traits.rs:59:8
[INFO] [stdout]    |
[INFO] [stdout] 59 | struct S1; // concrete type S
[INFO] [stdout]    |        ^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GenericVal` is never constructed
[INFO] [stdout]   --> src/bin/c14_generics_functions_impl_traits.rs:60:8
[INFO] [stdout]    |
[INFO] [stdout] 60 | struct GenericVal<T>(T, ); // Generic type GenericVal
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/bin/c16_traits_derive_op_drop.rs:26:16
[INFO] [stdout]    |
[INFO] [stdout] 26 | struct Seconds(i32); // a tuple struct with no attributes
[INFO] [stdout]    |        ------- ^^^
[INFO] [stdout]    |        |
[INFO] [stdout]    |        field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/bin/c16_traits_iter_clone.rs:84:13
[INFO] [stdout]    |
[INFO] [stdout] 84 | struct Pair(Box<i32>, Box<i32>); // a tuple struct with resources that implements the Clone trait
[INFO] [stdout]    |        ---- ^^^^^^^^  ^^^^^^^^
[INFO] [stdout]    |        |
[INFO] [stdout]    |        fields in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing these fields
[INFO] [stdout]    = note: `Pair` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused label
[INFO] [stdout]   --> src/bin/c8_flow_control_ifelse_loops.rs:57:9
[INFO] [stdout]    |
[INFO] [stdout] 57 |         'inner: loop {
[INFO] [stdout]    |         ^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_labels)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `p1` and `p2` are never read
[INFO] [stdout]   --> src/bin/c3_custom_types_structs.rs:25:5
[INFO] [stdout]    |
[INFO] [stdout] 24 | struct Rectangle {
[INFO] [stdout]    |        --------- fields in this struct
[INFO] [stdout] 25 |     p1: Point,
[INFO] [stdout]    |     ^^
[INFO] [stdout] 26 |     p2: Point,
[INFO] [stdout]    |     ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/bin/c1_formatted_print.rs:33:18
[INFO] [stdout]    |
[INFO] [stdout] 33 | struct Structure(i32);
[INFO] [stdout]    |        --------- ^^^
[INFO] [stdout]    |        |
[INFO] [stdout]    |        field in this struct
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider removing this field
[INFO] [stdout]    = note: `Structure` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Deep` is never constructed
[INFO] [stdout]   --> src/bin/c1_formatted_print.rs:34:8
[INFO] [stdout]    |
[INFO] [stdout] 34 | struct Deep(Structure);
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name` and `age` are never read
[INFO] [stdout]   --> src/bin/c1_formatted_print.rs:38:5
[INFO] [stdout]    |
[INFO] [stdout] 37 | struct Person<'a> {
[INFO] [stdout]    |        ------ fields in this struct
[INFO] [stdout] 38 |     name: &'a str,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 39 |     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] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.99s
[INFO] running `Command { std: "docker" "inspect" "fe9426f60b0d6b0f5368c0401f5cd1932b19ce8d029f930fc3e12a2ef63e0ff5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fe9426f60b0d6b0f5368c0401f5cd1932b19ce8d029f930fc3e12a2ef63e0ff5", kill_on_drop: false }`
[INFO] [stdout] fe9426f60b0d6b0f5368c0401f5cd1932b19ce8d029f930fc3e12a2ef63e0ff5
