[INFO] fetching crate briliang_exercise 0.1.0... [INFO] checking briliang_exercise-0.1.0 against try#c387b04bf028733cd561d62128c8a5eee4bc1458+rustflags=-Dtail_expr_drop_order for pr-130930 [INFO] extracting crate briliang_exercise 0.1.0 into /workspace/builds/worker-0-tc2/source [INFO] validating manifest of crates.io crate briliang_exercise 0.1.0 on toolchain c387b04bf028733cd561d62128c8a5eee4bc1458 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate briliang_exercise 0.1.0 [INFO] finished tweaking crates.io crate briliang_exercise 0.1.0 [INFO] tweaked toml for crates.io crate briliang_exercise 0.1.0 written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 20 packages to latest compatible versions [INFO] [stderr] Adding autocfg v0.1.8 (available: v1.4.0) [INFO] [stderr] Adding bitflags v1.3.2 (available: v2.6.0) [INFO] [stderr] Adding cloudabi v0.0.3 (available: v0.1.0) [INFO] [stderr] Adding rand v0.6.5 (available: v0.8.5) [INFO] [stderr] Adding rand_chacha v0.1.1 (available: v0.3.1) [INFO] [stderr] Adding rand_core v0.3.1 (available: v0.6.4) [INFO] [stderr] Adding rand_core v0.4.2 (available: v0.6.4) [INFO] [stderr] Adding rand_hc v0.1.0 (available: v0.3.2) [INFO] [stderr] Adding rand_isaac v0.1.1 (available: v0.3.0) [INFO] [stderr] Adding rand_jitter v0.1.4 (available: v0.4.0) [INFO] [stderr] Adding rand_os v0.1.3 (available: v0.2.2) [INFO] [stderr] Adding rand_pcg v0.1.2 (available: v0.3.1) [INFO] [stderr] Adding rand_xorshift v0.1.1 (available: v0.3.0) [INFO] [stderr] Adding rdrand v0.4.0 (available: v0.8.3) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:6252d7ea7fb8caaf7af6d800c5fb250a9cd862b9a7f9508afb3c54fa7fe1102e" "/opt/rustwide/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] f9fba49799dda6089cf982b36e8ef7b7423397d0a4df05d1335b36f3887d9b24 [INFO] running `Command { std: "docker" "start" "-a" "f9fba49799dda6089cf982b36e8ef7b7423397d0a4df05d1335b36f3887d9b24", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "f9fba49799dda6089cf982b36e8ef7b7423397d0a4df05d1335b36f3887d9b24", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "f9fba49799dda6089cf982b36e8ef7b7423397d0a4df05d1335b36f3887d9b24", kill_on_drop: false }` [INFO] [stdout] f9fba49799dda6089cf982b36e8ef7b7423397d0a4df05d1335b36f3887d9b24 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dtail_expr_drop_order" "-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:6252d7ea7fb8caaf7af6d800c5fb250a9cd862b9a7f9508afb3c54fa7fe1102e" "/opt/rustwide/cargo-home/bin/cargo" "+c387b04bf028733cd561d62128c8a5eee4bc1458" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 2aa0c9dd0e4542e73fbe922b276c2618dea59010f76330db355ecb406b38cd2b [INFO] running `Command { std: "docker" "start" "-a" "2aa0c9dd0e4542e73fbe922b276c2618dea59010f76330db355ecb406b38cd2b", kill_on_drop: false }` [INFO] [stderr] Checking rand_os v0.1.3 [INFO] [stderr] Checking rand v0.6.5 [INFO] [stderr] Checking briliang_exercise v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary trailing semicolon [INFO] [stdout] --> tests/structure/mod.rs:78:22 [INFO] [stdout] | [INFO] [stdout] 78 | struct Car {}; [INFO] [stdout] | ^ help: remove this semicolon [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(redundant_semicolons)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> tests/functional_feature/mod.rs:225:13 [INFO] [stdout] | [INFO] [stdout] 225 | let mut counter = Counter::new(); [INFO] [stdout] | ----^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `value` is never read [INFO] [stdout] --> tests/integration_test.rs:74:5 [INFO] [stdout] | [INFO] [stdout] 73 | pub struct Guess { [INFO] [stdout] | ----- field in this struct [INFO] [stdout] 74 | value: i32, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Guess` 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 `1` and `2` are never read [INFO] [stdout] --> tests/structure/mod.rs:63:27 [INFO] [stdout] | [INFO] [stdout] 63 | struct Color(i32, i32, i32); [INFO] [stdout] | ----- ^^^ ^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing these fields [INFO] [stdout] = note: `Color` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0`, `1`, and `2` are never read [INFO] [stdout] --> tests/structure/mod.rs:65:22 [INFO] [stdout] | [INFO] [stdout] 65 | struct Point(i32, i32, i32); [INFO] [stdout] | ----- ^^^ ^^^ ^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this struct [INFO] [stdout] | [INFO] [stdout] = help: consider removing these fields [INFO] [stdout] = note: `Point` 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] --> tests/enums/mod.rs:11:12 [INFO] [stdout] | [INFO] [stdout] 11 | V4(String), [INFO] [stdout] | -- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `IpAddrKind2` 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] 11 | V4(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> tests/enums/mod.rs:12:12 [INFO] [stdout] | [INFO] [stdout] 12 | V6(String), [INFO] [stdout] | -- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `IpAddrKind2` 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] 12 | V6(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `kind` and `address` are never read [INFO] [stdout] --> tests/enums/mod.rs:17:9 [INFO] [stdout] | [INFO] [stdout] 16 | struct IpAddr { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] 17 | kind: IpAddrKind, [INFO] [stdout] | ^^^^ [INFO] [stdout] 18 | address: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `IpAddr` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `x` and `y` are never read [INFO] [stdout] --> tests/enums/mod.rs:57:20 [INFO] [stdout] | [INFO] [stdout] 57 | Move { x: i32, y: i32 }, [INFO] [stdout] | ---- ^ ^ [INFO] [stdout] | | [INFO] [stdout] | fields in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Message` 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] --> tests/enums/mod.rs:59:19 [INFO] [stdout] | [INFO] [stdout] 59 | Write(String), [INFO] [stdout] | ----- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Message` 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] 59 | Write(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `0`, `1`, and `2` are never read [INFO] [stdout] --> tests/enums/mod.rs:60:25 [INFO] [stdout] | [INFO] [stdout] 60 | ChangeColor(i32, i32, i32), [INFO] [stdout] | ----------- ^^^ ^^^ ^^^ [INFO] [stdout] | | [INFO] [stdout] | fields in this variant [INFO] [stdout] | [INFO] [stdout] = note: `Message` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields [INFO] [stdout] | [INFO] [stdout] 60 | ChangeColor((), (), ()), [INFO] [stdout] | ~~ ~~ ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `seasonal_fruit` is never read [INFO] [stdout] --> tests/module/mod.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 32 | pub struct BreakFast { [INFO] [stdout] | --------- field in this struct [INFO] [stdout] 33 | pub toast: String, [INFO] [stdout] 34 | seasonal_fruit: String [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `BreakFast` 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] --> tests/collections/mod.rs:54:17 [INFO] [stdout] | [INFO] [stdout] 54 | Int(i32), [INFO] [stdout] | --- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `SpreadSheetCell` 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] 54 | Int(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> tests/collections/mod.rs:55:19 [INFO] [stdout] | [INFO] [stdout] 55 | Float(f64), [INFO] [stdout] | ----- ^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `SpreadSheetCell` 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] 55 | Float(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> tests/collections/mod.rs:56:18 [INFO] [stdout] | [INFO] [stdout] 56 | Text(String), [INFO] [stdout] | ---- ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `SpreadSheetCell` 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] 56 | Text(()), [INFO] [stdout] | ~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `content` is never read [INFO] [stdout] --> tests/generic_trait_lifetime/mod.rs:16:13 [INFO] [stdout] | [INFO] [stdout] 12 | pub struct NewsArticle { [INFO] [stdout] | ----------- field in this struct [INFO] [stdout] ... [INFO] [stdout] 16 | pub content: String, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `NewsArticle` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `reply` and `retweet` are never read [INFO] [stdout] --> tests/generic_trait_lifetime/mod.rs:29:13 [INFO] [stdout] | [INFO] [stdout] 26 | pub struct Tweet { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] ... [INFO] [stdout] 29 | pub reply: bool, [INFO] [stdout] | ^^^^^ [INFO] [stdout] 30 | pub retweet: bool, [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Tweet` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `x` and `y` are never read [INFO] [stdout] --> tests/generic_trait_lifetime/mod.rs:75:13 [INFO] [stdout] | [INFO] [stdout] 74 | struct Point { [INFO] [stdout] | ----- fields in this struct [INFO] [stdout] 75 | x: T, [INFO] [stdout] | ^ [INFO] [stdout] 76 | y: T, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `Point` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `x` and `y` are never read [INFO] [stdout] --> tests/generic_trait_lifetime/mod.rs:83:13 [INFO] [stdout] | [INFO] [stdout] 82 | struct Point2 { [INFO] [stdout] | ------ fields in this struct [INFO] [stdout] 83 | x: T, [INFO] [stdout] | ^ [INFO] [stdout] 84 | y: U, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `Point2` 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 `x` is never read [INFO] [stdout] --> tests/generic_trait_lifetime/mod.rs:355:9 [INFO] [stdout] | [INFO] [stdout] 353 | struct ImportantExcerpt<'a, T> { [INFO] [stdout] | ---------------- field in this struct [INFO] [stdout] 354 | part: &'a str, [INFO] [stdout] 355 | x: T, [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] = note: `ImportantExcerpt` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> tests/structure/mod.rs:125:9 [INFO] [stdout] | [INFO] [stdout] 124 | fn test_struct_method2() { [INFO] [stdout] | ------------------------ move the `impl` block outside of this function `test_struct_method2` [INFO] [stdout] 125 | impl Rectangle { [INFO] [stdout] | ^^^^^--------- [INFO] [stdout] | | [INFO] [stdout] | `Rectangle` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> tests/structure/mod.rs:140:9 [INFO] [stdout] | [INFO] [stdout] 138 | fn test_associated_function() { [INFO] [stdout] | ----------------------------- move the `impl` block outside of this function `test_associated_function` [INFO] [stdout] 139 | //struct 关联函数常常用来返回一个新的struct示例 [INFO] [stdout] 140 | impl Rectangle { [INFO] [stdout] | ^^^^^--------- [INFO] [stdout] | | [INFO] [stdout] | `Rectangle` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused borrow that must be used [INFO] [stdout] --> tests/collections/mod.rs:140:9 [INFO] [stdout] | [INFO] [stdout] 140 | &hello[0..1]; [INFO] [stdout] | ^^^^^^^^^^^^ the borrow produces a value [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] help: use `let _ = ...` to ignore the resulting value [INFO] [stdout] | [INFO] [stdout] 140 | let _ = &hello[0..1]; [INFO] [stdout] | +++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> tests/generic_trait_lifetime/mod.rs:435:9 [INFO] [stdout] | [INFO] [stdout] 434 | fn test_lifetime_annotation_in_method_definition() { [INFO] [stdout] | -------------------------------------------------- move the `impl` block outside of this function `test_lifetime_annotation_in_method_definition` [INFO] [stdout] 435 | impl<'a, T> ImportantExcerpt<'a, T> { [INFO] [stdout] | ^^^^^^^^^^^^----------------^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | `ImportantExcerpt` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: this lint may become deny-by-default in the edition 2024 and higher, see the tracking issue [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 24 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.08s [INFO] running `Command { std: "docker" "inspect" "2aa0c9dd0e4542e73fbe922b276c2618dea59010f76330db355ecb406b38cd2b", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2aa0c9dd0e4542e73fbe922b276c2618dea59010f76330db355ecb406b38cd2b", kill_on_drop: false }` [INFO] [stdout] 2aa0c9dd0e4542e73fbe922b276c2618dea59010f76330db355ecb406b38cd2b