[INFO] cloning repository https://github.com/golddranks/quack [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/golddranks/quack" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgolddranks%2Fquack", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgolddranks%2Fquack'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] c5ed502163ca81321f7537cf57b396c0ddcef136 [INFO] checking golddranks/quack against try#901e6d56697c79b2e80df6a487b2318ec6f57ee3 for pr-142287 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgolddranks%2Fquack" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/golddranks/quack on toolchain 901e6d56697c79b2e80df6a487b2318ec6f57ee3 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+901e6d56697c79b2e80df6a487b2318ec6f57ee3" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] removed /workspace/builds/worker-4-tc2/source/.cargo/config [INFO] started tweaking git repo https://github.com/golddranks/quack [INFO] finished tweaking git repo https://github.com/golddranks/quack [INFO] tweaked toml for git repo https://github.com/golddranks/quack written to /workspace/builds/worker-4-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/golddranks/quack 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" "+901e6d56697c79b2e80df6a487b2318ec6f57ee3" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [ERROR] error running command: no output for 300 seconds [INFO] checking golddranks/quack against try#901e6d56697c79b2e80df6a487b2318ec6f57ee3 for pr-142287 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgolddranks%2Fquack" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/golddranks/quack on toolchain 901e6d56697c79b2e80df6a487b2318ec6f57ee3 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+901e6d56697c79b2e80df6a487b2318ec6f57ee3" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] removed /workspace/builds/worker-4-tc2/source/.cargo/config [INFO] started tweaking git repo https://github.com/golddranks/quack [INFO] finished tweaking git repo https://github.com/golddranks/quack [INFO] tweaked toml for git repo https://github.com/golddranks/quack written to /workspace/builds/worker-4-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/golddranks/quack 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" "+901e6d56697c79b2e80df6a487b2318ec6f57ee3" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:eea15d5475069c3ef791f10c2c6b5af2ee421ef2da1e680ecce1cba46243983b" "/opt/rustwide/cargo-home/bin/cargo" "+901e6d56697c79b2e80df6a487b2318ec6f57ee3" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] d43b754559ab0e0d7ad58fa2d0ddce57a618ebc0336981f5273eb5f933960570 [INFO] running `Command { std: "docker" "start" "-a" "d43b754559ab0e0d7ad58fa2d0ddce57a618ebc0336981f5273eb5f933960570", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d43b754559ab0e0d7ad58fa2d0ddce57a618ebc0336981f5273eb5f933960570", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d43b754559ab0e0d7ad58fa2d0ddce57a618ebc0336981f5273eb5f933960570", kill_on_drop: false }` [INFO] [stdout] d43b754559ab0e0d7ad58fa2d0ddce57a618ebc0336981f5273eb5f933960570 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:eea15d5475069c3ef791f10c2c6b5af2ee421ef2da1e680ecce1cba46243983b" "/opt/rustwide/cargo-home/bin/cargo" "+901e6d56697c79b2e80df6a487b2318ec6f57ee3" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 393d7f65a74b5f44b3000871c5f40c9685690abeb9eb685b2bb3a93f1e5b8982 [INFO] running `Command { std: "docker" "start" "-a" "393d7f65a74b5f44b3000871c5f40c9685690abeb9eb685b2bb3a93f1e5b8982", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.119 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Checking ppv-lite86 v0.2.16 [INFO] [stderr] Checking quack v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/elf/load.rs:4:18 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::{os::{self, STDERR, Args}, elf::parse::ProgHead, error}; [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `offset` [INFO] [stdout] --> src/os/linux.rs:170:75 [INFO] [stdout] | [INFO] [stdout] 170 | pub fn mmap(addr: *const c_void, len: i64, prot: u32, flags: u32, fd: Fd, offset: u64) -> Result { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: taking a mutable reference to a `const` item [INFO] [stdout] --> src/os.rs:23:26 [INFO] [stdout] | [INFO] [stdout] 23 | let _ = writeln!(crate::os::STDERR, "Stopped because of {:?} error.", e); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: each usage of a `const` item creates a new temporary [INFO] [stdout] = note: the mutable reference will refer to this temporary, not the original `const` item [INFO] [stdout] note: `const` item defined here [INFO] [stdout] --> src/os.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | pub const STDERR: Fd = Fd(2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(const_item_mutation)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: taking a mutable reference to a `const` item [INFO] [stdout] --> src/os.rs:46:26 [INFO] [stdout] | [INFO] [stdout] 46 | let _ = writeln!(STDERR, "panic: {:?}", loc); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: each usage of a `const` item creates a new temporary [INFO] [stdout] = note: the mutable reference will refer to this temporary, not the original `const` item [INFO] [stdout] note: `const` item defined here [INFO] [stdout] --> src/os.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | pub const STDERR: Fd = Fd(2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: taking a mutable reference to a `const` item [INFO] [stdout] --> src/os.rs:48:26 [INFO] [stdout] | [INFO] [stdout] 48 | let _ = writeln!(STDERR, "panic"); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: each usage of a `const` item creates a new temporary [INFO] [stdout] = note: the mutable reference will refer to this temporary, not the original `const` item [INFO] [stdout] note: `const` item defined here [INFO] [stdout] --> src/os.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | pub const STDERR: Fd = Fd(2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: taking a mutable reference to a `const` item [INFO] [stdout] --> src/elf/load.rs:11:14 [INFO] [stdout] | [INFO] [stdout] 11 | writeln!(STDERR, "{:x?}", x); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: each usage of a `const` item creates a new temporary [INFO] [stdout] = note: the mutable reference will refer to this temporary, not the original `const` item [INFO] [stdout] note: `const` item defined here [INFO] [stdout] --> src/os.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | pub const STDERR: Fd = Fd(2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: taking a mutable reference to a `const` item [INFO] [stdout] --> src/elf/load.rs:12:14 [INFO] [stdout] | [INFO] [stdout] 12 | writeln!(STDERR, "{:x?}", probe as fn() as u64); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: each usage of a `const` item creates a new temporary [INFO] [stdout] = note: the mutable reference will refer to this temporary, not the original `const` item [INFO] [stdout] note: `const` item defined here [INFO] [stdout] --> src/os.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | pub const STDERR: Fd = Fd(2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: taking a mutable reference to a `const` item [INFO] [stdout] --> src/elf/load.rs:13:14 [INFO] [stdout] | [INFO] [stdout] 13 | writeln!(STDERR, "main: {:x?}", crate::main as fn(Args) -> Result<(), error::Error> as u64); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: each usage of a `const` item creates a new temporary [INFO] [stdout] = note: the mutable reference will refer to this temporary, not the original `const` item [INFO] [stdout] note: `const` item defined here [INFO] [stdout] --> src/os.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | pub const STDERR: Fd = Fd(2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `buf` [INFO] [stdout] --> src/elf/load.rs:17:36 [INFO] [stdout] | [INFO] [stdout] 17 | pub fn load(phs: &[impl ProgHead], buf: &[u8]) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_buf` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: taking a mutable reference to a `const` item [INFO] [stdout] --> src/elf/load.rs:23:22 [INFO] [stdout] | [INFO] [stdout] 23 | writeln!(STDERR, "what the hell {:?} {:?}", range_to_be_loaded, prog_count); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: each usage of a `const` item creates a new temporary [INFO] [stdout] = note: the mutable reference will refer to this temporary, not the original `const` item [INFO] [stdout] note: `const` item defined here [INFO] [stdout] --> src/os.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | pub const STDERR: Fd = Fd(2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: taking a mutable reference to a `const` item [INFO] [stdout] --> src/elf/load.rs:25:22 [INFO] [stdout] | [INFO] [stdout] 25 | writeln!(STDERR, "hell yeah {:?} {:?}", range_to_be_loaded, prog_count); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: each usage of a `const` item creates a new temporary [INFO] [stdout] = note: the mutable reference will refer to this temporary, not the original `const` item [INFO] [stdout] note: `const` item defined here [INFO] [stdout] --> src/os.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | pub const STDERR: Fd = Fd(2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: taking a mutable reference to a `const` item [INFO] [stdout] --> src/elf.rs:8:22 [INFO] [stdout] | [INFO] [stdout] 8 | let _ = writeln!(os::STDERR, "{}", s); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: each usage of a `const` item creates a new temporary [INFO] [stdout] = note: the mutable reference will refer to this temporary, not the original `const` item [INFO] [stdout] note: `const` item defined here [INFO] [stdout] --> src/os.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | pub const STDERR: Fd = Fd(2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: taking a mutable reference to a `const` item [INFO] [stdout] --> src/main.rs:50:18 [INFO] [stdout] | [INFO] [stdout] 50 | writeln!(os::STDERR, "Provide a path to binary file as the first argument!")?; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: each usage of a `const` item creates a new temporary [INFO] [stdout] = note: the mutable reference will refer to this temporary, not the original `const` item [INFO] [stdout] note: `const` item defined here [INFO] [stdout] --> src/os.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | pub const STDERR: Fd = Fd(2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: taking a mutable reference to a `const` item [INFO] [stdout] --> src/main.rs:71:22 [INFO] [stdout] | [INFO] [stdout] 71 | writeln!(os::STDERR, "eh: {:?}", eh)?; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: each usage of a `const` item creates a new temporary [INFO] [stdout] = note: the mutable reference will refer to this temporary, not the original `const` item [INFO] [stdout] note: `const` item defined here [INFO] [stdout] --> src/os.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | pub const STDERR: Fd = Fd(2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: taking a mutable reference to a `const` item [INFO] [stdout] --> src/main.rs:73:26 [INFO] [stdout] | [INFO] [stdout] 73 | writeln!(os::STDERR, "ph: {:?}", ph)?; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: each usage of a `const` item creates a new temporary [INFO] [stdout] = note: the mutable reference will refer to this temporary, not the original `const` item [INFO] [stdout] note: `const` item defined here [INFO] [stdout] --> src/os.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | pub const STDERR: Fd = Fd(2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: taking a mutable reference to a `const` item [INFO] [stdout] --> src/main.rs:81:30 [INFO] [stdout] | [INFO] [stdout] 81 | writeln!(os::STDERR, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: each usage of a `const` item creates a new temporary [INFO] [stdout] = note: the mutable reference will refer to this temporary, not the original `const` item [INFO] [stdout] note: `const` item defined here [INFO] [stdout] --> src/os.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | pub const STDERR: Fd = Fd(2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `open_for_log` is never used [INFO] [stdout] --> src/os.rs:137:8 [INFO] [stdout] | [INFO] [stdout] 137 | pub fn open_for_log(path: impl AsRef<[u8]>) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variants `Read` and `Close` are never constructed [INFO] [stdout] --> src/os/linux.rs:18:5 [INFO] [stdout] | [INFO] [stdout] 17 | enum Syscall { [INFO] [stdout] | ------- variants in this enum [INFO] [stdout] 18 | Read = 0, [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 21 | Close = 3, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `read` is never used [INFO] [stdout] --> src/os/linux.rs:62:8 [INFO] [stdout] | [INFO] [stdout] 62 | pub fn read(fd: Fd, buf: &mut [u8]) -> Result { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `WR_ONLY` is never used [INFO] [stdout] --> src/os/linux.rs:85:15 [INFO] [stdout] | [INFO] [stdout] 85 | pub const WR_ONLY: i32 = 0x001; [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `RD_WR` is never used [INFO] [stdout] --> src/os/linux.rs:86:15 [INFO] [stdout] | [INFO] [stdout] 86 | pub const RD_WR: i32 = 0x002; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `CREAT` is never used [INFO] [stdout] --> src/os/linux.rs:87:15 [INFO] [stdout] | [INFO] [stdout] 87 | pub const CREAT: i32 = 0x100; [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `APPEND` is never used [INFO] [stdout] --> src/os/linux.rs:88:15 [INFO] [stdout] | [INFO] [stdout] 88 | pub const APPEND: i32 = 0x2000; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROT_NONE` is never used [INFO] [stdout] --> src/os/linux.rs:157:15 [INFO] [stdout] | [INFO] [stdout] 157 | pub const PROT_NONE: u32 = 0x00; /* Page can not be accessed. */ [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `PROT_EXEC` is never used [INFO] [stdout] --> src/os/linux.rs:160:15 [INFO] [stdout] | [INFO] [stdout] 160 | pub const PROT_EXEC: u32 = 0x04; /* Page can be executed. */ [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAP_SHARED` is never used [INFO] [stdout] --> src/os/linux.rs:164:15 [INFO] [stdout] | [INFO] [stdout] 164 | pub const MAP_SHARED: u32 = 0x0001; /* Share changes. */ [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAP_FIXED` is never used [INFO] [stdout] --> src/os/linux.rs:166:15 [INFO] [stdout] | [INFO] [stdout] 166 | pub const MAP_FIXED: u32 = 0x0010; /* Interpret addr exactly. */ [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: constant `MAP_ANON` is never used [INFO] [stdout] --> src/os/linux.rs:167:15 [INFO] [stdout] | [INFO] [stdout] 167 | pub const MAP_ANON: u32 = 0x0020; /* Don't use a file. */ [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait `ProgHead` is never used [INFO] [stdout] --> src/elf/parse.rs:41:11 [INFO] [stdout] | [INFO] [stdout] 41 | pub trait ProgHead { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `eh`, `phs`, `shs`, `sh_names`, `symtab`, and `sym_names` are never read [INFO] [stdout] --> src/elf/parse.rs:437:9 [INFO] [stdout] | [INFO] [stdout] 436 | pub struct ElfFile32<'a> { [INFO] [stdout] | --------- fields in this struct [INFO] [stdout] 437 | pub eh: ElfHead32<'a>, [INFO] [stdout] | ^^ [INFO] [stdout] 438 | pub phs: &'a [ProgHead32], [INFO] [stdout] | ^^^ [INFO] [stdout] 439 | pub shs: Option<&'a [SectHead32]>, [INFO] [stdout] | ^^^ [INFO] [stdout] 440 | pub sh_names: Option>, [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] 441 | pub symtab: Option<&'a [Sym32]>, [INFO] [stdout] | ^^^^^^ [INFO] [stdout] 442 | pub sym_names: Option>, [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `ElfFile32` 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/elf/parse.rs:457:11 [INFO] [stdout] | [INFO] [stdout] 457 | Elf32(ElfFile32<'a>), [INFO] [stdout] | ----- ^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | field in this variant [INFO] [stdout] | [INFO] [stdout] = note: `ElfParse` 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] 457 - Elf32(ElfFile32<'a>), [INFO] [stdout] 457 + Elf32(()), [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `probe` is never used [INFO] [stdout] --> src/elf/load.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn probe() { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `load` is never used [INFO] [stdout] --> src/elf/load.rs:17:8 [INFO] [stdout] | [INFO] [stdout] 17 | pub fn load(phs: &[impl ProgHead], buf: &[u8]) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: module `OpenMode` should have a snake case name [INFO] [stdout] --> src/os/linux.rs:83:9 [INFO] [stdout] | [INFO] [stdout] 83 | pub mod OpenMode { [INFO] [stdout] | ^^^^^^^^ help: convert the identifier to snake case: `open_mode` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_snake_case)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: lifetime flowing from input to output with different syntax can be confusing [INFO] [stdout] --> src/elf/parse.rs:461:18 [INFO] [stdout] | [INFO] [stdout] 461 | pub fn with(buf: &[u8]) -> Result { [INFO] [stdout] | ^^^^^ -------- the lifetime gets resolved as `'_` [INFO] [stdout] | | [INFO] [stdout] | this lifetime flows to the output [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: one option is to remove the lifetime for references and use the anonymous lifetime for paths [INFO] [stdout] | [INFO] [stdout] 461 | pub fn with(buf: &[u8]) -> Result, Error> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/elf/load.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | writeln!(STDERR, "{:x?}", x); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: `#[warn(unused_must_use)]` on by default [INFO] [stdout] = note: this warning originates in the macro `writeln` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/elf/load.rs:12:5 [INFO] [stdout] | [INFO] [stdout] 12 | writeln!(STDERR, "{:x?}", probe as fn() as u64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in the macro `writeln` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/elf/load.rs:13:5 [INFO] [stdout] | [INFO] [stdout] 13 | writeln!(STDERR, "main: {:x?}", crate::main as fn(Args) -> Result<(), error::Error> as u64); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in the macro `writeln` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/elf/load.rs:23:13 [INFO] [stdout] | [INFO] [stdout] 23 | writeln!(STDERR, "what the hell {:?} {:?}", range_to_be_loaded, prog_count); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in the macro `writeln` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused `Result` that must be used [INFO] [stdout] --> src/elf/load.rs:25:13 [INFO] [stdout] | [INFO] [stdout] 25 | writeln!(STDERR, "hell yeah {:?} {:?}", range_to_be_loaded, prog_count); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this `Result` may be an `Err` variant, which should be handled [INFO] [stdout] = note: this warning originates in the macro `writeln` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking getrandom v0.2.5 [INFO] [stderr] Checking rand_core v0.6.3 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stdout] error: couldn't read `src/elf/parse/../../../test.musl.elf`: No such file or directory (os error 2) [INFO] [stdout] --> src/elf/parse/test.rs:7:37 [INFO] [stdout] | [INFO] [stdout] 7 | let elf_file = &mut Cursor::new(include_bytes!("../../../test.musl.elf")); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `panic::PanicInfo` [INFO] [stdout] --> src/os.rs:3:5 [INFO] [stdout] | [INFO] [stdout] 3 | panic::PanicInfo, slice, ptr::null, [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::elf::parse::TransmuteSafe` [INFO] [stdout] --> src/elf/parse/enum_impls.rs:288:9 [INFO] [stdout] | [INFO] [stdout] 288 | use crate::elf::parse::TransmuteSafe; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `self` [INFO] [stdout] --> src/elf/load.rs:4:18 [INFO] [stdout] | [INFO] [stdout] 4 | use crate::{os::{self, STDERR, Args}, elf::parse::ProgHead, error}; [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_bytes_mut` found for union `EIOsAbiUnchecked` in the current scope [INFO] [stdout] --> src/elf/parse/enum_impls.rs:292:30 [INFO] [stdout] | [INFO] [stdout] 292 | let bytes = ei_osabi.as_bytes_mut(); [INFO] [stdout] | ^^^^^^^^^^^^ method not found in `EIOsAbiUnchecked` [INFO] [stdout] | [INFO] [stdout] ::: src/elf/parse/ffi_types.rs:52:1 [INFO] [stdout] | [INFO] [stdout] 52 | pub union EIOsAbiUnchecked { [INFO] [stdout] | -------------------------- method `as_bytes_mut` not found for this union [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_bytes_mut` found for union `ETypeUnchecked` in the current scope [INFO] [stdout] --> src/elf/parse/enum_impls.rs:302:28 [INFO] [stdout] | [INFO] [stdout] 302 | let bytes = e_type.as_bytes_mut(); [INFO] [stdout] | ^^^^^^^^^^^^ method not found in `ETypeUnchecked` [INFO] [stdout] | [INFO] [stdout] ::: src/elf/parse/ffi_types.rs:78:1 [INFO] [stdout] | [INFO] [stdout] 78 | pub union ETypeUnchecked { [INFO] [stdout] | ------------------------ method `as_bytes_mut` not found for this union [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_bytes_mut` found for union `EMachineUnchecked` in the current scope [INFO] [stdout] --> src/elf/parse/enum_impls.rs:312:31 [INFO] [stdout] | [INFO] [stdout] 312 | let bytes = e_machine.as_bytes_mut(); [INFO] [stdout] | ^^^^^^^^^^^^ method not found in `EMachineUnchecked` [INFO] [stdout] | [INFO] [stdout] ::: src/elf/parse/ffi_types.rs:93:1 [INFO] [stdout] | [INFO] [stdout] 93 | pub union EMachineUnchecked { [INFO] [stdout] | --------------------------- method `as_bytes_mut` not found for this union [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_bytes_mut` found for union `PTypeUnchecked` in the current scope [INFO] [stdout] --> src/elf/parse/enum_impls.rs:322:28 [INFO] [stdout] | [INFO] [stdout] 322 | let bytes = p_type.as_bytes_mut(); [INFO] [stdout] | ^^^^^^^^^^^^ method not found in `PTypeUnchecked` [INFO] [stdout] | [INFO] [stdout] ::: src/elf/parse/ffi_types.rs:186:1 [INFO] [stdout] | [INFO] [stdout] 186 | pub union PTypeUnchecked { [INFO] [stdout] | ------------------------ method `as_bytes_mut` not found for this union [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_bytes_mut` found for union `ShTypeUnchecked` in the current scope [INFO] [stdout] --> src/elf/parse/enum_impls.rs:332:29 [INFO] [stdout] | [INFO] [stdout] 332 | let bytes = sh_type.as_bytes_mut(); [INFO] [stdout] | ^^^^^^^^^^^^ method not found in `ShTypeUnchecked` [INFO] [stdout] | [INFO] [stdout] ::: src/elf/parse/ffi_types.rs:227:1 [INFO] [stdout] | [INFO] [stdout] 227 | pub union ShTypeUnchecked { [INFO] [stdout] | ------------------------- method `as_bytes_mut` not found for this union [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `as_bytes_mut` found for type parameter `T` in the current scope [INFO] [stdout] --> src/elf/parse/ffi_types.rs:374:23 [INFO] [stdout] | [INFO] [stdout] 372 | fn test() -> T { [INFO] [stdout] | - method `as_bytes_mut` not found for this type parameter [INFO] [stdout] 373 | let mut t = T::default(); [INFO] [stdout] 374 | let bytes = t.as_bytes_mut(); [INFO] [stdout] | ^^^^^^^^^^^^ method not found in `T` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0425]: cannot find function `vec_as_bytes_mut` in this scope [INFO] [stdout] --> src/elf/parse/ffi_types.rs:398:21 [INFO] [stdout] | [INFO] [stdout] 370 | fn miri_as_bytes_mut() { [INFO] [stdout] | ---------------------- similarly named function `miri_as_bytes_mut` defined here [INFO] [stdout] ... [INFO] [stdout] 398 | let bytes = vec_as_bytes_mut(&mut vec, 3); [INFO] [stdout] | ^^^^^^^^^^^^^^^^ help: a function with a similar name exists: `miri_as_bytes_mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `offset` [INFO] [stdout] --> src/os/linux.rs:170:75 [INFO] [stdout] | [INFO] [stdout] 170 | pub fn mmap(addr: *const c_void, len: i64, prot: u32, flags: u32, fd: Fd, offset: u64) -> Result { [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_offset` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: taking a mutable reference to a `const` item [INFO] [stdout] --> src/os.rs:23:26 [INFO] [stdout] | [INFO] [stdout] 23 | let _ = writeln!(crate::os::STDERR, "Stopped because of {:?} error.", e); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: each usage of a `const` item creates a new temporary [INFO] [stdout] = note: the mutable reference will refer to this temporary, not the original `const` item [INFO] [stdout] note: `const` item defined here [INFO] [stdout] --> src/os.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | pub const STDERR: Fd = Fd(2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(const_item_mutation)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: taking a mutable reference to a `const` item [INFO] [stdout] --> src/elf/load.rs:11:14 [INFO] [stdout] | [INFO] [stdout] 11 | writeln!(STDERR, "{:x?}", x); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: each usage of a `const` item creates a new temporary [INFO] [stdout] = note: the mutable reference will refer to this temporary, not the original `const` item [INFO] [stdout] note: `const` item defined here [INFO] [stdout] --> src/os.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | pub const STDERR: Fd = Fd(2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: taking a mutable reference to a `const` item [INFO] [stdout] --> src/elf/load.rs:12:14 [INFO] [stdout] | [INFO] [stdout] 12 | writeln!(STDERR, "{:x?}", probe as fn() as u64); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: each usage of a `const` item creates a new temporary [INFO] [stdout] = note: the mutable reference will refer to this temporary, not the original `const` item [INFO] [stdout] note: `const` item defined here [INFO] [stdout] --> src/os.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | pub const STDERR: Fd = Fd(2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: taking a mutable reference to a `const` item [INFO] [stdout] --> src/elf/load.rs:13:14 [INFO] [stdout] | [INFO] [stdout] 13 | writeln!(STDERR, "main: {:x?}", crate::main as fn(Args) -> Result<(), error::Error> as u64); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: each usage of a `const` item creates a new temporary [INFO] [stdout] = note: the mutable reference will refer to this temporary, not the original `const` item [INFO] [stdout] note: `const` item defined here [INFO] [stdout] --> src/os.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | pub const STDERR: Fd = Fd(2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `buf` [INFO] [stdout] --> src/elf/load.rs:17:36 [INFO] [stdout] | [INFO] [stdout] 17 | pub fn load(phs: &[impl ProgHead], buf: &[u8]) { [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_buf` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: taking a mutable reference to a `const` item [INFO] [stdout] --> src/elf/load.rs:23:22 [INFO] [stdout] | [INFO] [stdout] 23 | writeln!(STDERR, "what the hell {:?} {:?}", range_to_be_loaded, prog_count); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: each usage of a `const` item creates a new temporary [INFO] [stdout] = note: the mutable reference will refer to this temporary, not the original `const` item [INFO] [stdout] note: `const` item defined here [INFO] [stdout] --> src/os.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | pub const STDERR: Fd = Fd(2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: taking a mutable reference to a `const` item [INFO] [stdout] --> src/elf/load.rs:25:22 [INFO] [stdout] | [INFO] [stdout] 25 | writeln!(STDERR, "hell yeah {:?} {:?}", range_to_be_loaded, prog_count); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: each usage of a `const` item creates a new temporary [INFO] [stdout] = note: the mutable reference will refer to this temporary, not the original `const` item [INFO] [stdout] note: `const` item defined here [INFO] [stdout] --> src/os.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | pub const STDERR: Fd = Fd(2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: taking a mutable reference to a `const` item [INFO] [stdout] --> src/elf.rs:8:22 [INFO] [stdout] | [INFO] [stdout] 8 | let _ = writeln!(os::STDERR, "{}", s); [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: each usage of a `const` item creates a new temporary [INFO] [stdout] = note: the mutable reference will refer to this temporary, not the original `const` item [INFO] [stdout] note: `const` item defined here [INFO] [stdout] --> src/os.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | pub const STDERR: Fd = Fd(2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: taking a mutable reference to a `const` item [INFO] [stdout] --> src/main.rs:50:18 [INFO] [stdout] | [INFO] [stdout] 50 | writeln!(os::STDERR, "Provide a path to binary file as the first argument!")?; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: each usage of a `const` item creates a new temporary [INFO] [stdout] = note: the mutable reference will refer to this temporary, not the original `const` item [INFO] [stdout] note: `const` item defined here [INFO] [stdout] --> src/os.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | pub const STDERR: Fd = Fd(2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: taking a mutable reference to a `const` item [INFO] [stdout] --> src/main.rs:71:22 [INFO] [stdout] | [INFO] [stdout] 71 | writeln!(os::STDERR, "eh: {:?}", eh)?; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: each usage of a `const` item creates a new temporary [INFO] [stdout] = note: the mutable reference will refer to this temporary, not the original `const` item [INFO] [stdout] note: `const` item defined here [INFO] [stdout] --> src/os.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | pub const STDERR: Fd = Fd(2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: taking a mutable reference to a `const` item [INFO] [stdout] --> src/main.rs:73:26 [INFO] [stdout] | [INFO] [stdout] 73 | writeln!(os::STDERR, "ph: {:?}", ph)?; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: each usage of a `const` item creates a new temporary [INFO] [stdout] = note: the mutable reference will refer to this temporary, not the original `const` item [INFO] [stdout] note: `const` item defined here [INFO] [stdout] --> src/os.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | pub const STDERR: Fd = Fd(2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: taking a mutable reference to a `const` item [INFO] [stdout] --> src/main.rs:81:30 [INFO] [stdout] | [INFO] [stdout] 81 | writeln!(os::STDERR, [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: each usage of a `const` item creates a new temporary [INFO] [stdout] = note: the mutable reference will refer to this temporary, not the original `const` item [INFO] [stdout] note: `const` item defined here [INFO] [stdout] --> src/os.rs:33:1 [INFO] [stdout] | [INFO] [stdout] 33 | pub const STDERR: Fd = Fd(2); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0425, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0425`. [INFO] [stdout] [INFO] [stderr] error: could not compile `quack` (bin "quack" test) due to 8 previous errors; 16 warnings emitted [INFO] running `Command { std: "docker" "inspect" "393d7f65a74b5f44b3000871c5f40c9685690abeb9eb685b2bb3a93f1e5b8982", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "393d7f65a74b5f44b3000871c5f40c9685690abeb9eb685b2bb3a93f1e5b8982", kill_on_drop: false }` [INFO] [stdout] 393d7f65a74b5f44b3000871c5f40c9685690abeb9eb685b2bb3a93f1e5b8982