[INFO] fetching crate tango-bench 0.6.0... [INFO] testing tango-bench-0.6.0 against 1.90.0 for beta-1.91-3 [INFO] extracting crate tango-bench 0.6.0 into /workspace/builds/worker-2-tc1/source [INFO] started tweaking crates.io crate tango-bench 0.6.0 [INFO] finished tweaking crates.io crate tango-bench 0.6.0 [INFO] tweaked toml for crates.io crate tango-bench 0.6.0 written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate tango-bench 0.6.0 on toolchain 1.90.0 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Locking 95 packages to latest compatible versions [INFO] [stderr] Adding goblin v0.7.1 (available: v0.10.1) [INFO] [stderr] Adding rand v0.8.5 (available: v0.9.2) [INFO] [stderr] Adding scroll v0.11.0 (available: v0.13.0) [INFO] [stderr] Adding thiserror v1.0.69 (available: v2.0.17) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.90.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded supports-color v3.0.2 [INFO] [stderr] Downloaded colorz v1.1.4 [INFO] [stderr] Downloaded alloca v0.4.0 [INFO] [stderr] Downloaded is_ci v1.2.0 [INFO] [stderr] Downloaded glob-match v0.2.1 [INFO] [stderr] Downloaded goblin v0.7.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 23c4f95e63b95d28aace4c6fd3d6878ed17a1ec01f0c8b83609eafa1edcfe795 [INFO] running `Command { std: "docker" "start" "-a" "23c4f95e63b95d28aace4c6fd3d6878ed17a1ec01f0c8b83609eafa1edcfe795", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "23c4f95e63b95d28aace4c6fd3d6878ed17a1ec01f0c8b83609eafa1edcfe795", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "23c4f95e63b95d28aace4c6fd3d6878ed17a1ec01f0c8b83609eafa1edcfe795", kill_on_drop: false }` [INFO] [stdout] 23c4f95e63b95d28aace4c6fd3d6878ed17a1ec01f0c8b83609eafa1edcfe795 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ff06637dcaac8fb2b49e7b9d761ea214253dd8ab60552f1ed6cde3c4a1f81841 [INFO] running `Command { std: "docker" "start" "-a" "ff06637dcaac8fb2b49e7b9d761ea214253dd8ab60552f1ed6cde3c4a1f81841", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.176 [INFO] [stderr] Compiling anstyle-query v1.1.4 [INFO] [stderr] Compiling colorchoice v1.0.4 [INFO] [stderr] Compiling anstyle-parse v0.2.7 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling alloca v0.4.0 [INFO] [stderr] Compiling is_ci v1.2.0 [INFO] [stderr] Compiling log v0.4.28 [INFO] [stderr] Compiling tango-bench v0.6.0 (/opt/rustwide/workdir) [INFO] [stderr] Compiling once_cell v1.21.3 [INFO] [stderr] Compiling plain v0.2.3 [INFO] [stderr] Compiling scroll_derive v0.11.1 [INFO] [stderr] Compiling clap_derive v4.5.47 [INFO] [stderr] Compiling libloading v0.8.9 [INFO] [stderr] Compiling glob-match v0.2.1 [INFO] [stderr] Compiling supports-color v3.0.2 [INFO] [stderr] Compiling anstream v0.6.20 [INFO] [stderr] Compiling colorz v1.1.4 [INFO] [stderr] Compiling clap_builder v4.5.48 [INFO] [stderr] Compiling scroll v0.11.0 [INFO] [stderr] Compiling goblin v0.7.1 [INFO] [stderr] Compiling getrandom v0.2.16 [INFO] [stderr] Compiling getrandom v0.3.3 [INFO] [stderr] Compiling tempfile v3.23.0 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling clap v4.5.48 [INFO] [stdout] warning: unnecessary parentheses around closure body [INFO] [stdout] --> src/lib.rs:457:25 [INFO] [stdout] | [INFO] [stdout] 457 | .map(|(&c, &b)| (c as f64 - b as f64)) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 457 - .map(|(&c, &b)| (c as f64 - b as f64)) [INFO] [stdout] 457 + .map(|(&c, &b)| c as f64 - b as f64) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `path` [INFO] [stdout] --> src/cli.rs:758:23 [INFO] [stdout] | [INFO] [stdout] 758 | fn generate_plots(path: &Path, sample_dumps: &[PathBuf]) -> Result<()> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_path` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/dylib.rs:66:18 [INFO] [stdout] | [INFO] [stdout] 66 | unsafe { SELF_VTABLE.take() }.map(|vt| spi_handle_for_vtable(vt, mode)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling this function with a null pointer is undefined behavior, even if the result of the function is unused [INFO] [stdout] --> src/dylib.rs:236:30 [INFO] [stdout] | [INFO] [stdout] 236 | let slice = unsafe { slice::from_raw_parts(name_ptr as *const u8, length as usize) }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for more information, visit and [INFO] [stdout] note: null pointer originates from here [INFO] [stdout] --> src/dylib.rs:231:39 [INFO] [stdout] | [INFO] [stdout] 231 | let name_ptr: *const c_char = null(); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] = note: `#[warn(invalid_null_arguments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dylib.rs:299:12 [INFO] [stdout] | [INFO] [stdout] 299 | if STATE.is_none() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dylib.rs:349:9 [INFO] [stdout] | [INFO] [stdout] 349 | / STATE [INFO] [stdout] 350 | | .as_ref() [INFO] [stdout] | |_____________________^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/dylib.rs:357:26 [INFO] [stdout] | [INFO] [stdout] 357 | if let Some(s) = STATE.as_mut() { [INFO] [stdout] | ^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dylib.rs:371:26 [INFO] [stdout] | [INFO] [stdout] 371 | if let Some(s) = STATE.as_ref() { [INFO] [stdout] | ^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/dylib.rs:383:26 [INFO] [stdout] | [INFO] [stdout] 383 | if let Some(s) = STATE.as_mut() { [INFO] [stdout] | ^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/dylib.rs:394:26 [INFO] [stdout] | [INFO] [stdout] 394 | if let Some(s) = STATE.as_mut() { [INFO] [stdout] | ^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/dylib.rs:406:26 [INFO] [stdout] | [INFO] [stdout] 406 | if let Some(s) = STATE.as_mut() { [INFO] [stdout] | ^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/dylib.rs:416:9 [INFO] [stdout] | [INFO] [stdout] 416 | STATE.take(); [INFO] [stdout] | ^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 14.34s [INFO] running `Command { std: "docker" "inspect" "ff06637dcaac8fb2b49e7b9d761ea214253dd8ab60552f1ed6cde3c4a1f81841", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ff06637dcaac8fb2b49e7b9d761ea214253dd8ab60552f1ed6cde3c4a1f81841", kill_on_drop: false }` [INFO] [stdout] ff06637dcaac8fb2b49e7b9d761ea214253dd8ab60552f1ed6cde3c4a1f81841 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] ef40dc6d6d7b7757dce3cb2eda78e7776f2288ed10fcc3dde635d08c6d83051a [INFO] running `Command { std: "docker" "start" "-a" "ef40dc6d6d7b7757dce3cb2eda78e7776f2288ed10fcc3dde635d08c6d83051a", kill_on_drop: false }` [INFO] [stderr] Compiling tango-bench v0.6.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary parentheses around closure body [INFO] [stdout] --> src/lib.rs:457:25 [INFO] [stdout] | [INFO] [stdout] 457 | .map(|(&c, &b)| (c as f64 - b as f64)) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 457 - .map(|(&c, &b)| (c as f64 - b as f64)) [INFO] [stdout] 457 + .map(|(&c, &b)| c as f64 - b as f64) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `path` [INFO] [stdout] --> src/cli.rs:758:23 [INFO] [stdout] | [INFO] [stdout] 758 | fn generate_plots(path: &Path, sample_dumps: &[PathBuf]) -> Result<()> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_path` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/dylib.rs:66:18 [INFO] [stdout] | [INFO] [stdout] 66 | unsafe { SELF_VTABLE.take() }.map(|vt| spi_handle_for_vtable(vt, mode)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling this function with a null pointer is undefined behavior, even if the result of the function is unused [INFO] [stdout] --> src/dylib.rs:236:30 [INFO] [stdout] | [INFO] [stdout] 236 | let slice = unsafe { slice::from_raw_parts(name_ptr as *const u8, length as usize) }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for more information, visit and [INFO] [stdout] note: null pointer originates from here [INFO] [stdout] --> src/dylib.rs:231:39 [INFO] [stdout] | [INFO] [stdout] 231 | let name_ptr: *const c_char = null(); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] = note: `#[warn(invalid_null_arguments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dylib.rs:299:12 [INFO] [stdout] | [INFO] [stdout] 299 | if STATE.is_none() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dylib.rs:349:9 [INFO] [stdout] | [INFO] [stdout] 349 | / STATE [INFO] [stdout] 350 | | .as_ref() [INFO] [stdout] | |_____________________^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/dylib.rs:357:26 [INFO] [stdout] | [INFO] [stdout] 357 | if let Some(s) = STATE.as_mut() { [INFO] [stdout] | ^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dylib.rs:371:26 [INFO] [stdout] | [INFO] [stdout] 371 | if let Some(s) = STATE.as_ref() { [INFO] [stdout] | ^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/dylib.rs:383:26 [INFO] [stdout] | [INFO] [stdout] 383 | if let Some(s) = STATE.as_mut() { [INFO] [stdout] | ^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/dylib.rs:394:26 [INFO] [stdout] | [INFO] [stdout] 394 | if let Some(s) = STATE.as_mut() { [INFO] [stdout] | ^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/dylib.rs:406:26 [INFO] [stdout] | [INFO] [stdout] 406 | if let Some(s) = STATE.as_mut() { [INFO] [stdout] | ^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/dylib.rs:416:9 [INFO] [stdout] | [INFO] [stdout] 416 | STATE.take(); [INFO] [stdout] | ^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary parentheses around closure body [INFO] [stdout] --> src/lib.rs:457:25 [INFO] [stdout] | [INFO] [stdout] 457 | .map(|(&c, &b)| (c as f64 - b as f64)) [INFO] [stdout] | ^ ^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_parens)]` on by default [INFO] [stdout] help: remove these parentheses [INFO] [stdout] | [INFO] [stdout] 457 - .map(|(&c, &b)| (c as f64 - b as f64)) [INFO] [stdout] 457 + .map(|(&c, &b)| c as f64 - b as f64) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `path` [INFO] [stdout] --> src/cli.rs:758:23 [INFO] [stdout] | [INFO] [stdout] 758 | fn generate_plots(path: &Path, sample_dumps: &[PathBuf]) -> Result<()> { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_path` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/dylib.rs:66:18 [INFO] [stdout] | [INFO] [stdout] 66 | unsafe { SELF_VTABLE.take() }.map(|vt| spi_handle_for_vtable(vt, mode)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: calling this function with a null pointer is undefined behavior, even if the result of the function is unused [INFO] [stdout] --> src/dylib.rs:236:30 [INFO] [stdout] | [INFO] [stdout] 236 | let slice = unsafe { slice::from_raw_parts(name_ptr as *const u8, length as usize) }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: for more information, visit and [INFO] [stdout] note: null pointer originates from here [INFO] [stdout] --> src/dylib.rs:231:39 [INFO] [stdout] | [INFO] [stdout] 231 | let name_ptr: *const c_char = null(); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] = note: `#[warn(invalid_null_arguments)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dylib.rs:299:12 [INFO] [stdout] | [INFO] [stdout] 299 | if STATE.is_none() { [INFO] [stdout] | ^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dylib.rs:349:9 [INFO] [stdout] | [INFO] [stdout] 349 | / STATE [INFO] [stdout] 350 | | .as_ref() [INFO] [stdout] | |_____________________^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/dylib.rs:357:26 [INFO] [stdout] | [INFO] [stdout] 357 | if let Some(s) = STATE.as_mut() { [INFO] [stdout] | ^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a shared reference to mutable static [INFO] [stdout] --> src/dylib.rs:371:26 [INFO] [stdout] | [INFO] [stdout] 371 | if let Some(s) = STATE.as_ref() { [INFO] [stdout] | ^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/dylib.rs:383:26 [INFO] [stdout] | [INFO] [stdout] 383 | if let Some(s) = STATE.as_mut() { [INFO] [stdout] | ^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/dylib.rs:394:26 [INFO] [stdout] | [INFO] [stdout] 394 | if let Some(s) = STATE.as_mut() { [INFO] [stdout] | ^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/dylib.rs:406:26 [INFO] [stdout] | [INFO] [stdout] 406 | if let Some(s) = STATE.as_mut() { [INFO] [stdout] | ^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: creating a mutable reference to mutable static [INFO] [stdout] --> src/dylib.rs:416:9 [INFO] [stdout] | [INFO] [stdout] 416 | STATE.take(); [INFO] [stdout] | ^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stdout] | [INFO] [stdout] = note: for more information, see [INFO] [stdout] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 1.27s [INFO] running `Command { std: "docker" "inspect" "ef40dc6d6d7b7757dce3cb2eda78e7776f2288ed10fcc3dde635d08c6d83051a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ef40dc6d6d7b7757dce3cb2eda78e7776f2288ed10fcc3dde635d08c6d83051a", kill_on_drop: false }` [INFO] [stdout] ef40dc6d6d7b7757dce3cb2eda78e7776f2288ed10fcc3dde635d08c6d83051a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+1.90.0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] fe02e381278abf85dbc18781e677a3d85855de00097e32c22a191b0ad69fccbb [INFO] running `Command { std: "docker" "start" "-a" "fe02e381278abf85dbc18781e677a3d85855de00097e32c22a191b0ad69fccbb", kill_on_drop: false }` [INFO] [stderr] warning: unnecessary parentheses around closure body [INFO] [stderr] --> src/lib.rs:457:25 [INFO] [stderr] | [INFO] [stderr] 457 | .map(|(&c, &b)| (c as f64 - b as f64)) [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 457 - .map(|(&c, &b)| (c as f64 - b as f64)) [INFO] [stderr] 457 + .map(|(&c, &b)| c as f64 - b as f64) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: unused variable: `path` [INFO] [stderr] --> src/cli.rs:758:23 [INFO] [stderr] | [INFO] [stderr] 758 | fn generate_plots(path: &Path, sample_dumps: &[PathBuf]) -> Result<()> { [INFO] [stderr] | ^^^^ help: if this is intentional, prefix it with an underscore: `_path` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_variables)]` on by default [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/dylib.rs:66:18 [INFO] [stderr] | [INFO] [stderr] 66 | unsafe { SELF_VTABLE.take() }.map(|vt| spi_handle_for_vtable(vt, mode)) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stderr] = note: `#[warn(static_mut_refs)]` on by default [INFO] [stderr] [INFO] [stderr] warning: calling this function with a null pointer is undefined behavior, even if the result of the function is unused [INFO] [stderr] --> src/dylib.rs:236:30 [INFO] [stderr] | [INFO] [stderr] 236 | let slice = unsafe { slice::from_raw_parts(name_ptr as *const u8, length as usize) }; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = help: for more information, visit and [INFO] [stderr] note: null pointer originates from here [INFO] [stderr] --> src/dylib.rs:231:39 [INFO] [stderr] | [INFO] [stderr] 231 | let name_ptr: *const c_char = null(); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] = note: `#[warn(invalid_null_arguments)]` on by default [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static [INFO] [stderr] --> src/dylib.rs:299:12 [INFO] [stderr] | [INFO] [stderr] 299 | if STATE.is_none() { [INFO] [stderr] | ^^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static [INFO] [stderr] --> src/dylib.rs:349:9 [INFO] [stderr] | [INFO] [stderr] 349 | / STATE [INFO] [stderr] 350 | | .as_ref() [INFO] [stderr] | |_____________________^ shared reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/dylib.rs:357:26 [INFO] [stderr] | [INFO] [stderr] 357 | if let Some(s) = STATE.as_mut() { [INFO] [stderr] | ^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a shared reference to mutable static [INFO] [stderr] --> src/dylib.rs:371:26 [INFO] [stderr] | [INFO] [stderr] 371 | if let Some(s) = STATE.as_ref() { [INFO] [stderr] | ^^^^^^^^^^^^^^ shared reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: shared references to mutable statics are dangerous; it's undefined behavior if the static is mutated or if a mutable reference is created for it while the shared reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/dylib.rs:383:26 [INFO] [stderr] | [INFO] [stderr] 383 | if let Some(s) = STATE.as_mut() { [INFO] [stderr] | ^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/dylib.rs:394:26 [INFO] [stderr] | [INFO] [stderr] 394 | if let Some(s) = STATE.as_mut() { [INFO] [stderr] | ^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/dylib.rs:406:26 [INFO] [stderr] | [INFO] [stderr] 406 | if let Some(s) = STATE.as_mut() { [INFO] [stderr] | ^^^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stderr] [INFO] [stderr] warning: creating a mutable reference to mutable static [INFO] [stderr] --> src/dylib.rs:416:9 [INFO] [stderr] | [INFO] [stderr] 416 | STATE.take(); [INFO] [stderr] | ^^^^^^^^^^^^ mutable reference to mutable static [INFO] [stderr] | [INFO] [stderr] = note: for more information, see [INFO] [stderr] = note: mutable references to mutable statics are dangerous; it's undefined behavior if any other pointer to the static is used or if any other reference is created for the static while the mutable reference lives [INFO] [stderr] [INFO] [stderr] warning: `tango-bench` (lib) generated 12 warnings (run `cargo fix --lib -p tango-bench` to apply 1 suggestion) [INFO] [stderr] warning: `tango-bench` (lib test) generated 12 warnings (12 duplicates) [INFO] [stderr] Finished `test` profile [unoptimized + debuginfo] target(s) in 0.11s [INFO] [stderr] Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/tango_bench-e6da7c874fcf9b1d) [INFO] [stdout] [INFO] [stdout] running 10 tests [INFO] [stdout] test cli::tests::check_glob ... ok [INFO] [stdout] test cli::tests::check_human_time ... ok [INFO] [stdout] test tests::check_iqr_variance_thresholds ... ok [INFO] [stdout] test tests::check_naive_variance ... ok [INFO] [stdout] test tests::check_outliers_zero_iqr ... ok [INFO] [stdout] test tests::check_summary_statistics_types ... ok [INFO] [stdout] test tests::check_running_variance ... ok [INFO] [stdout] test tests::check_summary_statistics ... ok [INFO] [stdout] test tests::check_measure_time ... ok [INFO] [stderr] Doc-tests tango_bench [INFO] [stdout] test tests::check_running_variance_stress_test ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 10 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.15s [INFO] [stdout] [INFO] [stderr] warning: unnecessary parentheses around closure body [INFO] [stderr] --> src/lib.rs:457:25 [INFO] [stderr] | [INFO] [stderr] 457 | .map(|(&c, &b)| (c as f64 - b as f64)) [INFO] [stderr] | ^ ^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_parens)]` on by default [INFO] [stderr] help: remove these parentheses [INFO] [stderr] | [INFO] [stderr] 457 - .map(|(&c, &b)| (c as f64 - b as f64)) [INFO] [stderr] 457 + .map(|(&c, &b)| c as f64 - b as f64) [INFO] [stderr] | [INFO] [stderr] [INFO] [stderr] warning: 1 warning emitted [INFO] [stderr] [INFO] [stdout] [INFO] [stdout] running 3 tests [INFO] [stdout] test src/lib.rs - tango_main (line 83) ... ok [INFO] [stdout] test src/lib.rs - tango_benchmarks (line 52) ... ok [INFO] [stdout] test src/lib.rs - MeasurementSettings (line 256) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.87s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "fe02e381278abf85dbc18781e677a3d85855de00097e32c22a191b0ad69fccbb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "fe02e381278abf85dbc18781e677a3d85855de00097e32c22a191b0ad69fccbb", kill_on_drop: false }` [INFO] [stdout] fe02e381278abf85dbc18781e677a3d85855de00097e32c22a191b0ad69fccbb