[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] checking kanishkd4/Rust-by-example against master#1f12b9b0fdbe735968ac002792a720f0ba4faca6 for crater-rollup-uwu [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fkanishkd4%2FRust-by-example" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/kanishkd4/Rust-by-example on toolchain 1f12b9b0fdbe735968ac002792a720f0ba4faca6 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "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-6-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" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2021 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 6c0116e5923f78d0fc2ea8a224840917190f72fb0273d1b3ccbe1fc61b1b15ac [INFO] running `Command { std: "docker" "start" "-a" "6c0116e5923f78d0fc2ea8a224840917190f72fb0273d1b3ccbe1fc61b1b15ac", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "6c0116e5923f78d0fc2ea8a224840917190f72fb0273d1b3ccbe1fc61b1b15ac", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6c0116e5923f78d0fc2ea8a224840917190f72fb0273d1b3ccbe1fc61b1b15ac", kill_on_drop: false }` [INFO] [stdout] 6c0116e5923f78d0fc2ea8a224840917190f72fb0273d1b3ccbe1fc61b1b15ac [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+1f12b9b0fdbe735968ac002792a720f0ba4faca6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c27c261ca3f7e00af1b53aa5ae91422b835cdf3ba9371384add7f61831b6e4ed [INFO] running `Command { std: "docker" "start" "-a" "c27c261ca3f7e00af1b53aa5ae91422b835cdf3ba9371384add7f61831b6e4ed", kill_on_drop: false }` [INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2021 [INFO] [stderr] Checking 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: 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: 2 warnings emitted [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: 1 warning emitted [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(_arg: T) {} // becuase T has been specified as a generic type parameter using , [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: `...` 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 [INFO] [stdout] = note: `#[warn(ellipsis_inclusive_range_patterns)]` on by default [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); // 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) {} // this is also not a generic as SGen has been given the type A [INFO] [stdout] | ^^^^^^^^^^ [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 [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) {} // this is also not a generic [INFO] [stdout] | ^^^^^^^^^^^^ [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: 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 `generic` is never used [INFO] [stdout] --> src/bin/c14_generics_functions_impl_traits.rs:55:4 [INFO] [stdout] | [INFO] [stdout] 55 | fn generic(_s: SGen) {} // 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 `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: 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, ); // Generic type GenericVal [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: `...` 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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 9 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 6 warnings emitted [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: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 3 warnings emitted [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: 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 [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 [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: 1 warning emitted [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 [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 3 warnings emitted [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 [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 [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: 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: 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: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 4 warnings emitted [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: 5 warnings emitted [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: 2 warnings emitted [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: 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [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: 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: 1 warning emitted [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: 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: 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 [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 3 warnings emitted [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, Box); // 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: `...` 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 [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [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 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [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(_arg: T) {} // becuase T has been specified as a generic type parameter using , [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); // 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) {} // 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) {} // 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(_s: SGen) {} // 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, ); // Generic type GenericVal [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 9 warnings emitted [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); // 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: 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: 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: 1 warning emitted [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: 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); // S can only be a type that implements the Display trait - so no vectors [INFO] [stdout] | ^ [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); // 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: 1 warning emitted [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: 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); // S can only be a type that implements the Display trait - so no vectors [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 3 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 3 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 3 warnings emitted [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: 1 warning emitted [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: 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: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 6 warnings emitted [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: 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: 2 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 2 warnings emitted [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, Box); // 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: 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: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.39s [INFO] running `Command { std: "docker" "inspect" "c27c261ca3f7e00af1b53aa5ae91422b835cdf3ba9371384add7f61831b6e4ed", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c27c261ca3f7e00af1b53aa5ae91422b835cdf3ba9371384add7f61831b6e4ed", kill_on_drop: false }` [INFO] [stdout] c27c261ca3f7e00af1b53aa5ae91422b835cdf3ba9371384add7f61831b6e4ed