[INFO] cloning repository https://github.com/biabeb/irv [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/biabeb/irv" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbiabeb%2Firv", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbiabeb%2Firv'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] deb93278dd5f2e655129e6ab6dc9bfffa3a67559 [INFO] testing biabeb/irv against beta-2022-02-22 for beta-1.60-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbiabeb%2Firv" "/workspace/builds/worker-9/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-9/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/biabeb/irv on toolchain beta-2022-02-22 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-02-22" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/biabeb/irv [INFO] finished tweaking git repo https://github.com/biabeb/irv [INFO] tweaked toml for git repo https://github.com/biabeb/irv written to /workspace/builds/worker-9/source/Cargo.toml [INFO] crate git repo https://github.com/biabeb/irv already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-02-22" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-02-22" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 4a23fe23624a5e8585e7c87b8655eb1db7a7a1b5f0ee1ca5016945570fd40fcc [INFO] running `Command { std: "docker" "start" "-a" "4a23fe23624a5e8585e7c87b8655eb1db7a7a1b5f0ee1ca5016945570fd40fcc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "4a23fe23624a5e8585e7c87b8655eb1db7a7a1b5f0ee1ca5016945570fd40fcc", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "4a23fe23624a5e8585e7c87b8655eb1db7a7a1b5f0ee1ca5016945570fd40fcc", kill_on_drop: false }` [INFO] [stdout] 4a23fe23624a5e8585e7c87b8655eb1db7a7a1b5f0ee1ca5016945570fd40fcc [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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" "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:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-02-22" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 9244622a381d924454c1a60ec4c637a41b4ac0ab7e017a43cbccb61a15d51e8c [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "9244622a381d924454c1a60ec4c637a41b4ac0ab7e017a43cbccb61a15d51e8c", kill_on_drop: false }` [INFO] [stderr] Compiling irv v0.0.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: private type `TrapCause` in public interface (error E0446) [INFO] [stdout] --> src/hart/csr.rs:117:5 [INFO] [stdout] | [INFO] [stdout] 117 | pub fn is_pending(&self, interrupt: TrapCause) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(private_in_public)]` on by default [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #34537 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: private type `TrapCause` in public interface (error E0446) [INFO] [stdout] --> src/hart/csr.rs:121:5 [INFO] [stdout] | [INFO] [stdout] 121 | pub fn set_pending(&mut self, interrupt: TrapCause, value: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #34537 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: private type `TrapCause` in public interface (error E0446) [INFO] [stdout] --> src/hart/csr.rs:137:5 [INFO] [stdout] | [INFO] [stdout] 137 | pub fn is_enabled(&self, interrupt: TrapCause) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #34537 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: private type `TrapValue` in public interface (error E0446) [INFO] [stdout] --> src/hart/csr.rs:150:5 [INFO] [stdout] | [INFO] [stdout] 150 | pub fn set(&mut self, value: TrapValue) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #34537 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: private type `TrapCause` in public interface (error E0446) [INFO] [stdout] --> src/hart/csr.rs:164:5 [INFO] [stdout] | [INFO] [stdout] 164 | pub fn set(&mut self, cause: TrapCause) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #34537 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: private type `TrapCause` in public interface (error E0446) [INFO] [stdout] --> src/hart/csr.rs:218:5 [INFO] [stdout] | [INFO] [stdout] 218 | pub fn is_delegated(&self, trap: TrapCause) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #34537 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Hart` [INFO] [stdout] --> src/hart.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Hart { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `User` [INFO] [stdout] --> src/hart.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | User = 0b00, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `PrivilegeLevel` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:25:10 [INFO] [stdout] | [INFO] [stdout] 25 | #[derive(Clone, Copy, PartialEq, Eq)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Supervisor` [INFO] [stdout] --> src/hart.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | Supervisor = 0b01, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `PrivilegeLevel` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:25:10 [INFO] [stdout] | [INFO] [stdout] 25 | #[derive(Clone, Copy, PartialEq, Eq)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Machine` [INFO] [stdout] --> src/hart.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | Machine = 0b11, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `PrivilegeLevel` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:25:10 [INFO] [stdout] | [INFO] [stdout] 25 | #[derive(Clone, Copy, PartialEq, Eq)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `UserSoftwareInterrupt` [INFO] [stdout] --> src/hart.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | UserSoftwareInterrupt = Self::interrupt(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `SupervisorSoftwareInterrupt` [INFO] [stdout] --> src/hart.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | SupervisorSoftwareInterrupt = Self::interrupt(1), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `MachineSoftwareInterrupt` [INFO] [stdout] --> src/hart.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | MachineSoftwareInterrupt = Self::interrupt(2), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `UserTimerInterrupt` [INFO] [stdout] --> src/hart.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 43 | UserTimerInterrupt = Self::interrupt(4), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `SupervisorTimerInterrupt` [INFO] [stdout] --> src/hart.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | SupervisorTimerInterrupt = Self::interrupt(5), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `MachineTimerInterrupt` [INFO] [stdout] --> src/hart.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 45 | MachineTimerInterrupt = Self::interrupt(7), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `UserExternalInterrupt` [INFO] [stdout] --> src/hart.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 46 | UserExternalInterrupt = Self::interrupt(8), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `SupervisorExternalInterrupt` [INFO] [stdout] --> src/hart.rs:47:5 [INFO] [stdout] | [INFO] [stdout] 47 | SupervisorExternalInterrupt = Self::interrupt(9), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `MachineExternalInterrupt` [INFO] [stdout] --> src/hart.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 48 | MachineExternalInterrupt = Self::interrupt(11), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `InstructionAddressMisaligned` [INFO] [stdout] --> src/hart.rs:51:5 [INFO] [stdout] | [INFO] [stdout] 51 | InstructionAddressMisaligned = Self::exception(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `InstructionAccessFault` [INFO] [stdout] --> src/hart.rs:52:5 [INFO] [stdout] | [INFO] [stdout] 52 | InstructionAccessFault = Self::exception(1), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `IllegalInstruction` [INFO] [stdout] --> src/hart.rs:53:5 [INFO] [stdout] | [INFO] [stdout] 53 | IllegalInstruction = Self::exception(2), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Breakpoint` [INFO] [stdout] --> src/hart.rs:54:5 [INFO] [stdout] | [INFO] [stdout] 54 | Breakpoint = Self::exception(3), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `LoadAddressMisaligned` [INFO] [stdout] --> src/hart.rs:55:5 [INFO] [stdout] | [INFO] [stdout] 55 | LoadAddressMisaligned = Self::exception(4), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `LoadAccessFault` [INFO] [stdout] --> src/hart.rs:56:5 [INFO] [stdout] | [INFO] [stdout] 56 | LoadAccessFault = Self::exception(5), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `StoreAmoAddressMisaligned` [INFO] [stdout] --> src/hart.rs:57:5 [INFO] [stdout] | [INFO] [stdout] 57 | StoreAmoAddressMisaligned = Self::exception(6), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `StoreAmoAccessFault` [INFO] [stdout] --> src/hart.rs:58:5 [INFO] [stdout] | [INFO] [stdout] 58 | StoreAmoAccessFault = Self::exception(7), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `EnvironmentCallFromUMode` [INFO] [stdout] --> src/hart.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 59 | EnvironmentCallFromUMode = Self::exception(8), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `EnvironmentCallFromSMode` [INFO] [stdout] --> src/hart.rs:60:5 [INFO] [stdout] | [INFO] [stdout] 60 | EnvironmentCallFromSMode = Self::exception(9), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `EnvironmentCallFromMMode` [INFO] [stdout] --> src/hart.rs:61:5 [INFO] [stdout] | [INFO] [stdout] 61 | EnvironmentCallFromMMode = Self::exception(11), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `InstructionPageFault` [INFO] [stdout] --> src/hart.rs:62:5 [INFO] [stdout] | [INFO] [stdout] 62 | InstructionPageFault = Self::exception(12), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `LoadPageFault` [INFO] [stdout] --> src/hart.rs:63:5 [INFO] [stdout] | [INFO] [stdout] 63 | LoadPageFault = Self::exception(13), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `StoreAmoPageFault` [INFO] [stdout] --> src/hart.rs:64:5 [INFO] [stdout] | [INFO] [stdout] 64 | StoreAmoPageFault = Self::exception(15), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `TrapValue` [INFO] [stdout] --> src/hart.rs:68:8 [INFO] [stdout] | [INFO] [stdout] 68 | struct TrapValue(u64); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `InvalidCsr` [INFO] [stdout] --> src/hart.rs:71:8 [INFO] [stdout] | [INFO] [stdout] 71 | struct InvalidCsr; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/hart.rs:75:12 [INFO] [stdout] | [INFO] [stdout] 75 | pub fn new(bus: B) -> Hart { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `execute` [INFO] [stdout] --> src/hart.rs:113:12 [INFO] [stdout] | [INFO] [stdout] 113 | pub fn execute(&mut self) [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `csr` [INFO] [stdout] --> src/hart.rs:204:8 [INFO] [stdout] | [INFO] [stdout] 204 | fn csr(&mut self, address: CsrAddress, f: impl FnOnce(u64) -> u64) -> Result { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `trap` [INFO] [stdout] --> src/hart.rs:236:8 [INFO] [stdout] | [INFO] [stdout] 236 | fn trap(&mut self, cause: TrapCause, value: TrapValue) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `handle_trap_machine` [INFO] [stdout] --> src/hart.rs:252:8 [INFO] [stdout] | [INFO] [stdout] 252 | fn handle_trap_machine(&mut self, cause: TrapCause, value: TrapValue) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `handle_trap_supervisor` [INFO] [stdout] --> src/hart.rs:262:8 [INFO] [stdout] | [INFO] [stdout] 262 | fn handle_trap_supervisor(&mut self, cause: TrapCause, value: TrapValue) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `empty` [INFO] [stdout] --> src/hart.rs:286:18 [INFO] [stdout] | [INFO] [stdout] 286 | pub const fn empty() -> TrapValue { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/memory.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn new<'d>(data: &'d mut [u64]) -> &'d mut Memory { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `data` [INFO] [stdout] --> src/memory.rs:47:12 [INFO] [stdout] | [INFO] [stdout] 47 | pub fn data(&mut self) -> &mut [u8] { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `is_sufficient_privilege` [INFO] [stdout] --> src/hart/csr.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn is_sufficient_privilege(address: CsrAddress, privilege: PrivilegeLevel) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `is_read_only` [INFO] [stdout] --> src/hart/csr.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | pub fn is_read_only(address: CsrAddress) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `SSTATUS` [INFO] [stdout] --> src/hart/csr.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | pub const SSTATUS: CsrAddress = CsrAddress::new(0x100); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MSTATUS` [INFO] [stdout] --> src/hart/csr.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | pub const MSTATUS: CsrAddress = CsrAddress::new(0x300); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MISA` [INFO] [stdout] --> src/hart/csr.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | pub const MISA: CsrAddress = CsrAddress::new(0x301); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MEDELEG` [INFO] [stdout] --> src/hart/csr.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | pub const MEDELEG: CsrAddress = CsrAddress::new(0x302); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `SIE` [INFO] [stdout] --> src/hart/csr.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 25 | pub const SIE: CsrAddress = CsrAddress::new(0x104); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MIE` [INFO] [stdout] --> src/hart/csr.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | pub const MIE: CsrAddress = CsrAddress::new(0x304); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `STVEC` [INFO] [stdout] --> src/hart/csr.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | pub const STVEC: CsrAddress = CsrAddress::new(0x105); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MTVEC` [INFO] [stdout] --> src/hart/csr.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | pub const MTVEC: CsrAddress = CsrAddress::new(0x305); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `SCOUNTEREN` [INFO] [stdout] --> src/hart/csr.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | pub const SCOUNTEREN: CsrAddress = CsrAddress::new(0x106); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MCOUNTEREN` [INFO] [stdout] --> src/hart/csr.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | pub const MCOUNTEREN: CsrAddress = CsrAddress::new(0x306); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `SSCRATCH` [INFO] [stdout] --> src/hart/csr.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | pub const SSCRATCH: CsrAddress = CsrAddress::new(0x140); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MSCRATCH` [INFO] [stdout] --> src/hart/csr.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | pub const MSCRATCH: CsrAddress = CsrAddress::new(0x340); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `SEPC` [INFO] [stdout] --> src/hart/csr.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 33 | pub const SEPC: CsrAddress = CsrAddress::new(0x141); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MEPC` [INFO] [stdout] --> src/hart/csr.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | pub const MEPC: CsrAddress = CsrAddress::new(0x341); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `SCAUSE` [INFO] [stdout] --> src/hart/csr.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | pub const SCAUSE: CsrAddress = CsrAddress::new(0x142); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MCAUSE` [INFO] [stdout] --> src/hart/csr.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | pub const MCAUSE: CsrAddress = CsrAddress::new(0x342); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `STVAL` [INFO] [stdout] --> src/hart/csr.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | pub const STVAL: CsrAddress = CsrAddress::new(0x143); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MTVAL` [INFO] [stdout] --> src/hart/csr.rs:38:5 [INFO] [stdout] | [INFO] [stdout] 38 | pub const MTVAL: CsrAddress = CsrAddress::new(0x343); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `SIP` [INFO] [stdout] --> src/hart/csr.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 39 | pub const SIP: CsrAddress = CsrAddress::new(0x144); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MIP` [INFO] [stdout] --> src/hart/csr.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | pub const MIP: CsrAddress = CsrAddress::new(0x344); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `SATP` [INFO] [stdout] --> src/hart/csr.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | pub const SATP: CsrAddress = CsrAddress::new(0x180); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MVENDORID` [INFO] [stdout] --> src/hart/csr.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | pub const MVENDORID: CsrAddress = CsrAddress::new(0xF11); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MARCHID` [INFO] [stdout] --> src/hart/csr.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 43 | pub const MARCHID: CsrAddress = CsrAddress::new(0xF12); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MIMPID` [INFO] [stdout] --> src/hart/csr.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | pub const MIMPID: CsrAddress = CsrAddress::new(0xF13); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MHARTID` [INFO] [stdout] --> src/hart/csr.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 45 | pub const MHARTID: CsrAddress = CsrAddress::new(0xF14); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/hart/csr.rs:48:18 [INFO] [stdout] | [INFO] [stdout] 48 | pub const fn new(address: u16) -> CsrAddress { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new_unchecked` [INFO] [stdout] --> src/hart/csr.rs:61:25 [INFO] [stdout] | [INFO] [stdout] 61 | pub const unsafe fn new_unchecked(address: u16) -> CsrAddress { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `inner` [INFO] [stdout] --> src/hart/csr.rs:65:18 [INFO] [stdout] | [INFO] [stdout] 65 | pub const fn inner(self) -> u16 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Csr` [INFO] [stdout] --> src/hart/csr.rs:70:12 [INFO] [stdout] | [INFO] [stdout] 70 | pub struct Csr { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `ReadOnly` [INFO] [stdout] --> src/hart/csr.rs:95:12 [INFO] [stdout] | [INFO] [stdout] 95 | pub struct ReadOnly(pub u64); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access` [INFO] [stdout] --> src/hart/csr.rs:98:12 [INFO] [stdout] | [INFO] [stdout] 98 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `set` [INFO] [stdout] --> src/hart/csr.rs:103:12 [INFO] [stdout] | [INFO] [stdout] 103 | pub fn set(&mut self, value: u64) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Ip` [INFO] [stdout] --> src/hart/csr.rs:108:12 [INFO] [stdout] | [INFO] [stdout] 108 | pub struct Ip(pub u64); [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access` [INFO] [stdout] --> src/hart/csr.rs:111:12 [INFO] [stdout] | [INFO] [stdout] 111 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `is_pending` [INFO] [stdout] --> src/hart/csr.rs:117:12 [INFO] [stdout] | [INFO] [stdout] 117 | pub fn is_pending(&self, interrupt: TrapCause) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `set_pending` [INFO] [stdout] --> src/hart/csr.rs:121:12 [INFO] [stdout] | [INFO] [stdout] 121 | pub fn set_pending(&mut self, interrupt: TrapCause, value: bool) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Ie` [INFO] [stdout] --> src/hart/csr.rs:128:12 [INFO] [stdout] | [INFO] [stdout] 128 | pub struct Ie(pub u64); [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access` [INFO] [stdout] --> src/hart/csr.rs:131:12 [INFO] [stdout] | [INFO] [stdout] 131 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `is_enabled` [INFO] [stdout] --> src/hart/csr.rs:137:12 [INFO] [stdout] | [INFO] [stdout] 137 | pub fn is_enabled(&self, interrupt: TrapCause) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Tval` [INFO] [stdout] --> src/hart/csr.rs:142:12 [INFO] [stdout] | [INFO] [stdout] 142 | pub struct Tval(pub u64); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access` [INFO] [stdout] --> src/hart/csr.rs:145:12 [INFO] [stdout] | [INFO] [stdout] 145 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `set` [INFO] [stdout] --> src/hart/csr.rs:150:12 [INFO] [stdout] | [INFO] [stdout] 150 | pub fn set(&mut self, value: TrapValue) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Cause` [INFO] [stdout] --> src/hart/csr.rs:155:12 [INFO] [stdout] | [INFO] [stdout] 155 | pub struct Cause(pub u64); [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access` [INFO] [stdout] --> src/hart/csr.rs:158:12 [INFO] [stdout] | [INFO] [stdout] 158 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `set` [INFO] [stdout] --> src/hart/csr.rs:164:12 [INFO] [stdout] | [INFO] [stdout] 164 | pub fn set(&mut self, cause: TrapCause) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Epc` [INFO] [stdout] --> src/hart/csr.rs:169:12 [INFO] [stdout] | [INFO] [stdout] 169 | pub struct Epc(pub u64); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access` [INFO] [stdout] --> src/hart/csr.rs:172:12 [INFO] [stdout] | [INFO] [stdout] 172 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `set` [INFO] [stdout] --> src/hart/csr.rs:177:12 [INFO] [stdout] | [INFO] [stdout] 177 | pub fn set(&mut self, epc: u64) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Scratch` [INFO] [stdout] --> src/hart/csr.rs:182:12 [INFO] [stdout] | [INFO] [stdout] 182 | pub struct Scratch(pub u64); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access` [INFO] [stdout] --> src/hart/csr.rs:185:12 [INFO] [stdout] | [INFO] [stdout] 185 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Tvec` [INFO] [stdout] --> src/hart/csr.rs:191:12 [INFO] [stdout] | [INFO] [stdout] 191 | pub struct Tvec(pub u64); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access` [INFO] [stdout] --> src/hart/csr.rs:194:12 [INFO] [stdout] | [INFO] [stdout] 194 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `mode` [INFO] [stdout] --> src/hart/csr.rs:200:12 [INFO] [stdout] | [INFO] [stdout] 200 | pub fn mode(&self) -> u64 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `base` [INFO] [stdout] --> src/hart/csr.rs:204:12 [INFO] [stdout] | [INFO] [stdout] 204 | pub fn base(&self) -> u64 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Deleg` [INFO] [stdout] --> src/hart/csr.rs:209:12 [INFO] [stdout] | [INFO] [stdout] 209 | pub struct Deleg(pub u64); [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access` [INFO] [stdout] --> src/hart/csr.rs:212:12 [INFO] [stdout] | [INFO] [stdout] 212 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `is_delegated` [INFO] [stdout] --> src/hart/csr.rs:218:12 [INFO] [stdout] | [INFO] [stdout] 218 | pub fn is_delegated(&self, trap: TrapCause) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Status` [INFO] [stdout] --> src/hart/csr.rs:223:12 [INFO] [stdout] | [INFO] [stdout] 223 | pub struct Status(pub u64); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `M_WRITE_MASK` [INFO] [stdout] --> src/hart/csr.rs:226:5 [INFO] [stdout] | [INFO] [stdout] 226 | / const M_WRITE_MASK: u64 = 0b1 << 1 [INFO] [stdout] 227 | | | 0b1 << 3 [INFO] [stdout] 228 | | | 0b1 << 5 [INFO] [stdout] 229 | | | 0b1 << 7 [INFO] [stdout] ... | [INFO] [stdout] 235 | | | 0b1 << 21 [INFO] [stdout] 236 | | | 0b1 << 22; [INFO] [stdout] | |____________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `S_WRITE_MASK` [INFO] [stdout] --> src/hart/csr.rs:237:5 [INFO] [stdout] | [INFO] [stdout] 237 | / const S_WRITE_MASK: u64 = 0b1 << 1 [INFO] [stdout] 238 | | | 0b1 << 5 [INFO] [stdout] 239 | | | 0b1 << 8 [INFO] [stdout] 240 | | | 0b1 << 18 [INFO] [stdout] 241 | | | 0b1 << 19; [INFO] [stdout] | |____________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `S_READ_MASK` [INFO] [stdout] --> src/hart/csr.rs:242:5 [INFO] [stdout] | [INFO] [stdout] 242 | const S_READ_MASK: u64 = Self::S_WRITE_MASK; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access_mstatus` [INFO] [stdout] --> src/hart/csr.rs:244:12 [INFO] [stdout] | [INFO] [stdout] 244 | pub fn access_mstatus(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access_sstatus` [INFO] [stdout] --> src/hart/csr.rs:249:12 [INFO] [stdout] | [INFO] [stdout] 249 | pub fn access_sstatus(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `sie` [INFO] [stdout] --> src/hart/csr.rs:255:12 [INFO] [stdout] | [INFO] [stdout] 255 | pub fn sie(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `mie` [INFO] [stdout] --> src/hart/csr.rs:260:12 [INFO] [stdout] | [INFO] [stdout] 260 | pub fn mie(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `spie` [INFO] [stdout] --> src/hart/csr.rs:265:12 [INFO] [stdout] | [INFO] [stdout] 265 | pub fn spie(&self) -> u64 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `ube` [INFO] [stdout] --> src/hart/csr.rs:270:12 [INFO] [stdout] | [INFO] [stdout] 270 | pub fn ube(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `mpie` [INFO] [stdout] --> src/hart/csr.rs:275:12 [INFO] [stdout] | [INFO] [stdout] 275 | pub fn mpie(&self) -> u64 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `spp` [INFO] [stdout] --> src/hart/csr.rs:280:12 [INFO] [stdout] | [INFO] [stdout] 280 | pub fn spp(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `vs` [INFO] [stdout] --> src/hart/csr.rs:285:12 [INFO] [stdout] | [INFO] [stdout] 285 | pub fn vs(&self) -> u64 { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `mpp` [INFO] [stdout] --> src/hart/csr.rs:290:12 [INFO] [stdout] | [INFO] [stdout] 290 | pub fn mpp(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `fs` [INFO] [stdout] --> src/hart/csr.rs:295:12 [INFO] [stdout] | [INFO] [stdout] 295 | pub fn fs(&self) -> u64 { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `xs` [INFO] [stdout] --> src/hart/csr.rs:300:12 [INFO] [stdout] | [INFO] [stdout] 300 | pub fn xs(&self) -> u64 { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `mprv` [INFO] [stdout] --> src/hart/csr.rs:305:12 [INFO] [stdout] | [INFO] [stdout] 305 | pub fn mprv(&self) -> u64 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `sum` [INFO] [stdout] --> src/hart/csr.rs:310:12 [INFO] [stdout] | [INFO] [stdout] 310 | pub fn sum(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `mxr` [INFO] [stdout] --> src/hart/csr.rs:315:12 [INFO] [stdout] | [INFO] [stdout] 315 | pub fn mxr(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `tvm` [INFO] [stdout] --> src/hart/csr.rs:320:12 [INFO] [stdout] | [INFO] [stdout] 320 | pub fn tvm(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `tw` [INFO] [stdout] --> src/hart/csr.rs:325:12 [INFO] [stdout] | [INFO] [stdout] 325 | pub fn tw(&self) -> u64 { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `tsr` [INFO] [stdout] --> src/hart/csr.rs:330:12 [INFO] [stdout] | [INFO] [stdout] 330 | pub fn tsr(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `uxl` [INFO] [stdout] --> src/hart/csr.rs:335:12 [INFO] [stdout] | [INFO] [stdout] 335 | pub fn uxl(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `sxl` [INFO] [stdout] --> src/hart/csr.rs:340:12 [INFO] [stdout] | [INFO] [stdout] 340 | pub fn sxl(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `sbe` [INFO] [stdout] --> src/hart/csr.rs:345:12 [INFO] [stdout] | [INFO] [stdout] 345 | pub fn sbe(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `mbe` [INFO] [stdout] --> src/hart/csr.rs:350:12 [INFO] [stdout] | [INFO] [stdout] 350 | pub fn mbe(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `sd` [INFO] [stdout] --> src/hart/csr.rs:355:12 [INFO] [stdout] | [INFO] [stdout] 355 | pub fn sd(&self) -> u64 { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `lui` [INFO] [stdout] --> src/hart/instruction.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn lui(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `auipc` [INFO] [stdout] --> src/hart/instruction.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn auipc(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `jal` [INFO] [stdout] --> src/hart/instruction.rs:26:8 [INFO] [stdout] | [INFO] [stdout] 26 | pub fn jal(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `jalr` [INFO] [stdout] --> src/hart/instruction.rs:37:8 [INFO] [stdout] | [INFO] [stdout] 37 | pub fn jalr(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `beq` [INFO] [stdout] --> src/hart/instruction.rs:48:8 [INFO] [stdout] | [INFO] [stdout] 48 | pub fn beq(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `bne` [INFO] [stdout] --> src/hart/instruction.rs:52:8 [INFO] [stdout] | [INFO] [stdout] 52 | pub fn bne(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `blt` [INFO] [stdout] --> src/hart/instruction.rs:56:8 [INFO] [stdout] | [INFO] [stdout] 56 | pub fn blt(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `bge` [INFO] [stdout] --> src/hart/instruction.rs:64:8 [INFO] [stdout] | [INFO] [stdout] 64 | pub fn bge(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `bltu` [INFO] [stdout] --> src/hart/instruction.rs:72:8 [INFO] [stdout] | [INFO] [stdout] 72 | pub fn bltu(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `bgeu` [INFO] [stdout] --> src/hart/instruction.rs:76:8 [INFO] [stdout] | [INFO] [stdout] 76 | pub fn bgeu(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `branch` [INFO] [stdout] --> src/hart/instruction.rs:81:4 [INFO] [stdout] | [INFO] [stdout] 81 | fn branch(hart: &mut Hart, raw: u32, condition: bool) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `l` [INFO] [stdout] --> src/hart/instruction.rs:94:4 [INFO] [stdout] | [INFO] [stdout] 94 | fn l>(hart: &mut Hart, raw: u32, convert: impl FnOnce(T) -> u64) { [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `lb` [INFO] [stdout] --> src/hart/instruction.rs:106:8 [INFO] [stdout] | [INFO] [stdout] 106 | pub fn lb>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `lh` [INFO] [stdout] --> src/hart/instruction.rs:110:8 [INFO] [stdout] | [INFO] [stdout] 110 | pub fn lh>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `lw` [INFO] [stdout] --> src/hart/instruction.rs:114:8 [INFO] [stdout] | [INFO] [stdout] 114 | pub fn lw>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `ld` [INFO] [stdout] --> src/hart/instruction.rs:118:8 [INFO] [stdout] | [INFO] [stdout] 118 | pub fn ld>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `lbu` [INFO] [stdout] --> src/hart/instruction.rs:122:8 [INFO] [stdout] | [INFO] [stdout] 122 | pub fn lbu>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `lhu` [INFO] [stdout] --> src/hart/instruction.rs:126:8 [INFO] [stdout] | [INFO] [stdout] 126 | pub fn lhu>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `lwu` [INFO] [stdout] --> src/hart/instruction.rs:130:8 [INFO] [stdout] | [INFO] [stdout] 130 | pub fn lwu>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `s` [INFO] [stdout] --> src/hart/instruction.rs:135:4 [INFO] [stdout] | [INFO] [stdout] 135 | fn s>(hart: &mut Hart, raw: u32, convert: impl FnOnce(u64) -> T) { [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sb` [INFO] [stdout] --> src/hart/instruction.rs:148:8 [INFO] [stdout] | [INFO] [stdout] 148 | pub fn sb>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sh` [INFO] [stdout] --> src/hart/instruction.rs:152:8 [INFO] [stdout] | [INFO] [stdout] 152 | pub fn sh>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sw` [INFO] [stdout] --> src/hart/instruction.rs:156:8 [INFO] [stdout] | [INFO] [stdout] 156 | pub fn sw>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sd` [INFO] [stdout] --> src/hart/instruction.rs:160:8 [INFO] [stdout] | [INFO] [stdout] 160 | pub fn sd>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `addi` [INFO] [stdout] --> src/hart/instruction.rs:164:8 [INFO] [stdout] | [INFO] [stdout] 164 | pub fn addi(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `addiw` [INFO] [stdout] --> src/hart/instruction.rs:168:8 [INFO] [stdout] | [INFO] [stdout] 168 | pub fn addiw(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `slti` [INFO] [stdout] --> src/hart/instruction.rs:172:8 [INFO] [stdout] | [INFO] [stdout] 172 | pub fn slti(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sltiu` [INFO] [stdout] --> src/hart/instruction.rs:176:8 [INFO] [stdout] | [INFO] [stdout] 176 | pub fn sltiu(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `xori` [INFO] [stdout] --> src/hart/instruction.rs:180:8 [INFO] [stdout] | [INFO] [stdout] 180 | pub fn xori(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `ori` [INFO] [stdout] --> src/hart/instruction.rs:184:8 [INFO] [stdout] | [INFO] [stdout] 184 | pub fn ori(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `andi` [INFO] [stdout] --> src/hart/instruction.rs:188:8 [INFO] [stdout] | [INFO] [stdout] 188 | pub fn andi(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `slli` [INFO] [stdout] --> src/hart/instruction.rs:192:8 [INFO] [stdout] | [INFO] [stdout] 192 | pub fn slli(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `srxi` [INFO] [stdout] --> src/hart/instruction.rs:196:8 [INFO] [stdout] | [INFO] [stdout] 196 | pub fn srxi(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `slliw` [INFO] [stdout] --> src/hart/instruction.rs:206:8 [INFO] [stdout] | [INFO] [stdout] 206 | pub fn slliw(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `srxiw` [INFO] [stdout] --> src/hart/instruction.rs:210:8 [INFO] [stdout] | [INFO] [stdout] 210 | pub fn srxiw(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `add_sub` [INFO] [stdout] --> src/hart/instruction.rs:220:8 [INFO] [stdout] | [INFO] [stdout] 220 | pub fn add_sub(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `addw_subw` [INFO] [stdout] --> src/hart/instruction.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 230 | pub fn addw_subw(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sll` [INFO] [stdout] --> src/hart/instruction.rs:242:8 [INFO] [stdout] | [INFO] [stdout] 242 | pub fn sll(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `slt` [INFO] [stdout] --> src/hart/instruction.rs:246:8 [INFO] [stdout] | [INFO] [stdout] 246 | pub fn slt(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sltu` [INFO] [stdout] --> src/hart/instruction.rs:250:8 [INFO] [stdout] | [INFO] [stdout] 250 | pub fn sltu(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `xor` [INFO] [stdout] --> src/hart/instruction.rs:254:8 [INFO] [stdout] | [INFO] [stdout] 254 | pub fn xor(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `srx` [INFO] [stdout] --> src/hart/instruction.rs:258:8 [INFO] [stdout] | [INFO] [stdout] 258 | pub fn srx(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `or` [INFO] [stdout] --> src/hart/instruction.rs:269:8 [INFO] [stdout] | [INFO] [stdout] 269 | pub fn or(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `and` [INFO] [stdout] --> src/hart/instruction.rs:273:8 [INFO] [stdout] | [INFO] [stdout] 273 | pub fn and(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sllw` [INFO] [stdout] --> src/hart/instruction.rs:277:8 [INFO] [stdout] | [INFO] [stdout] 277 | pub fn sllw(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `srxw` [INFO] [stdout] --> src/hart/instruction.rs:282:8 [INFO] [stdout] | [INFO] [stdout] 282 | pub fn srxw(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `fence` [INFO] [stdout] --> src/hart/instruction.rs:294:8 [INFO] [stdout] | [INFO] [stdout] 294 | pub fn fence(_hart: &mut Hart, _raw: u32) {} [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `ecall_ebreak` [INFO] [stdout] --> src/hart/instruction.rs:296:8 [INFO] [stdout] | [INFO] [stdout] 296 | pub fn ecall_ebreak(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `csrrw` [INFO] [stdout] --> src/hart/instruction.rs:310:8 [INFO] [stdout] | [INFO] [stdout] 310 | pub fn csrrw(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `csrrs` [INFO] [stdout] --> src/hart/instruction.rs:328:8 [INFO] [stdout] | [INFO] [stdout] 328 | pub fn csrrs(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `csrrc` [INFO] [stdout] --> src/hart/instruction.rs:348:8 [INFO] [stdout] | [INFO] [stdout] 348 | pub fn csrrc(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `csrrwi` [INFO] [stdout] --> src/hart/instruction.rs:368:8 [INFO] [stdout] | [INFO] [stdout] 368 | pub fn csrrwi(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `csrrsi` [INFO] [stdout] --> src/hart/instruction.rs:383:8 [INFO] [stdout] | [INFO] [stdout] 383 | pub fn csrrsi(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `csrrci` [INFO] [stdout] --> src/hart/instruction.rs:400:8 [INFO] [stdout] | [INFO] [stdout] 400 | pub fn csrrci(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `rd` [INFO] [stdout] --> src/hart/instruction.rs:419:10 [INFO] [stdout] | [INFO] [stdout] 419 | const fn rd(raw: u32) -> RegisterIndex { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `rs1` [INFO] [stdout] --> src/hart/instruction.rs:427:10 [INFO] [stdout] | [INFO] [stdout] 427 | const fn rs1(raw: u32) -> RegisterIndex { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `rs2` [INFO] [stdout] --> src/hart/instruction.rs:435:10 [INFO] [stdout] | [INFO] [stdout] 435 | const fn rs2(raw: u32) -> RegisterIndex { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `i_imm` [INFO] [stdout] --> src/hart/instruction.rs:443:10 [INFO] [stdout] | [INFO] [stdout] 443 | const fn i_imm(raw: u32) -> i32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `s_imm` [INFO] [stdout] --> src/hart/instruction.rs:449:10 [INFO] [stdout] | [INFO] [stdout] 449 | const fn s_imm(raw: u32) -> i32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `b_imm` [INFO] [stdout] --> src/hart/instruction.rs:458:10 [INFO] [stdout] | [INFO] [stdout] 458 | const fn b_imm(raw: u32) -> i32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `u_imm` [INFO] [stdout] --> src/hart/instruction.rs:469:10 [INFO] [stdout] | [INFO] [stdout] 469 | const fn u_imm(raw: u32) -> i32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `j_imm` [INFO] [stdout] --> src/hart/instruction.rs:476:10 [INFO] [stdout] | [INFO] [stdout] 476 | const fn j_imm(raw: u32) -> i32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `shamt` [INFO] [stdout] --> src/hart/instruction.rs:485:10 [INFO] [stdout] | [INFO] [stdout] 485 | const fn shamt(raw: u32) -> u32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `csr` [INFO] [stdout] --> src/hart/instruction.rs:491:4 [INFO] [stdout] | [INFO] [stdout] 491 | fn csr(raw: u32) -> CsrAddress { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `uimm` [INFO] [stdout] --> src/hart/instruction.rs:499:10 [INFO] [stdout] | [INFO] [stdout] 499 | const fn uimm(raw: u32) -> u32 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `X0` [INFO] [stdout] --> src/hart/instruction.rs:523:5 [INFO] [stdout] | [INFO] [stdout] 523 | pub const X0: RegisterIndex = RegisterIndex(0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new_unchecked` [INFO] [stdout] --> src/hart/instruction.rs:530:25 [INFO] [stdout] | [INFO] [stdout] 530 | pub const unsafe fn new_unchecked(index: usize) -> RegisterIndex { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 197 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 1.67s [INFO] running `Command { std: "docker" "inspect" "9244622a381d924454c1a60ec4c637a41b4ac0ab7e017a43cbccb61a15d51e8c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "9244622a381d924454c1a60ec4c637a41b4ac0ab7e017a43cbccb61a15d51e8c", kill_on_drop: false }` [INFO] [stdout] 9244622a381d924454c1a60ec4c637a41b4ac0ab7e017a43cbccb61a15d51e8c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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" "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:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-02-22" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] a72cd6dc1f5be280d870bcd90487246fbb363ebeb5c2d1630395fbd2dba2e1f9 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "a72cd6dc1f5be280d870bcd90487246fbb363ebeb5c2d1630395fbd2dba2e1f9", kill_on_drop: false }` [INFO] [stdout] warning: private type `TrapCause` in public interface (error E0446) [INFO] [stdout] --> src/hart/csr.rs:117:5 [INFO] [stdout] | [INFO] [stdout] 117 | pub fn is_pending(&self, interrupt: TrapCause) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(private_in_public)]` on by default [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #34537 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: private type `TrapCause` in public interface (error E0446) [INFO] [stdout] --> src/hart/csr.rs:121:5 [INFO] [stdout] | [INFO] [stdout] 121 | pub fn set_pending(&mut self, interrupt: TrapCause, value: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #34537 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: private type `TrapCause` in public interface (error E0446) [INFO] [stdout] --> src/hart/csr.rs:137:5 [INFO] [stdout] | [INFO] [stdout] 137 | pub fn is_enabled(&self, interrupt: TrapCause) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #34537 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: private type `TrapValue` in public interface (error E0446) [INFO] [stdout] --> src/hart/csr.rs:150:5 [INFO] [stdout] | [INFO] [stdout] 150 | pub fn set(&mut self, value: TrapValue) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #34537 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: private type `TrapCause` in public interface (error E0446) [INFO] [stdout] --> src/hart/csr.rs:164:5 [INFO] [stdout] | [INFO] [stdout] 164 | pub fn set(&mut self, cause: TrapCause) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #34537 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: private type `TrapCause` in public interface (error E0446) [INFO] [stdout] --> src/hart/csr.rs:218:5 [INFO] [stdout] | [INFO] [stdout] 218 | pub fn is_delegated(&self, trap: TrapCause) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #34537 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Hart` [INFO] [stdout] --> src/hart.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Hart { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `User` [INFO] [stdout] --> src/hart.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | User = 0b00, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `PrivilegeLevel` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:25:10 [INFO] [stdout] | [INFO] [stdout] 25 | #[derive(Clone, Copy, PartialEq, Eq)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Supervisor` [INFO] [stdout] --> src/hart.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | Supervisor = 0b01, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `PrivilegeLevel` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:25:10 [INFO] [stdout] | [INFO] [stdout] 25 | #[derive(Clone, Copy, PartialEq, Eq)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Machine` [INFO] [stdout] --> src/hart.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | Machine = 0b11, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `PrivilegeLevel` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:25:10 [INFO] [stdout] | [INFO] [stdout] 25 | #[derive(Clone, Copy, PartialEq, Eq)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `UserSoftwareInterrupt` [INFO] [stdout] --> src/hart.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | UserSoftwareInterrupt = Self::interrupt(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `SupervisorSoftwareInterrupt` [INFO] [stdout] --> src/hart.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | SupervisorSoftwareInterrupt = Self::interrupt(1), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `MachineSoftwareInterrupt` [INFO] [stdout] --> src/hart.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | MachineSoftwareInterrupt = Self::interrupt(2), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `UserTimerInterrupt` [INFO] [stdout] --> src/hart.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 43 | UserTimerInterrupt = Self::interrupt(4), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `SupervisorTimerInterrupt` [INFO] [stdout] --> src/hart.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | SupervisorTimerInterrupt = Self::interrupt(5), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `MachineTimerInterrupt` [INFO] [stdout] --> src/hart.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 45 | MachineTimerInterrupt = Self::interrupt(7), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `UserExternalInterrupt` [INFO] [stdout] --> src/hart.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 46 | UserExternalInterrupt = Self::interrupt(8), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `SupervisorExternalInterrupt` [INFO] [stdout] --> src/hart.rs:47:5 [INFO] [stdout] | [INFO] [stdout] 47 | SupervisorExternalInterrupt = Self::interrupt(9), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `MachineExternalInterrupt` [INFO] [stdout] --> src/hart.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 48 | MachineExternalInterrupt = Self::interrupt(11), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `InstructionAddressMisaligned` [INFO] [stdout] --> src/hart.rs:51:5 [INFO] [stdout] | [INFO] [stdout] 51 | InstructionAddressMisaligned = Self::exception(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `InstructionAccessFault` [INFO] [stdout] --> src/hart.rs:52:5 [INFO] [stdout] | [INFO] [stdout] 52 | InstructionAccessFault = Self::exception(1), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `IllegalInstruction` [INFO] [stdout] --> src/hart.rs:53:5 [INFO] [stdout] | [INFO] [stdout] 53 | IllegalInstruction = Self::exception(2), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Breakpoint` [INFO] [stdout] --> src/hart.rs:54:5 [INFO] [stdout] | [INFO] [stdout] 54 | Breakpoint = Self::exception(3), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `LoadAddressMisaligned` [INFO] [stdout] --> src/hart.rs:55:5 [INFO] [stdout] | [INFO] [stdout] 55 | LoadAddressMisaligned = Self::exception(4), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `LoadAccessFault` [INFO] [stdout] --> src/hart.rs:56:5 [INFO] [stdout] | [INFO] [stdout] 56 | LoadAccessFault = Self::exception(5), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `StoreAmoAddressMisaligned` [INFO] [stdout] --> src/hart.rs:57:5 [INFO] [stdout] | [INFO] [stdout] 57 | StoreAmoAddressMisaligned = Self::exception(6), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `StoreAmoAccessFault` [INFO] [stdout] --> src/hart.rs:58:5 [INFO] [stdout] | [INFO] [stdout] 58 | StoreAmoAccessFault = Self::exception(7), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `EnvironmentCallFromUMode` [INFO] [stdout] --> src/hart.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 59 | EnvironmentCallFromUMode = Self::exception(8), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `EnvironmentCallFromSMode` [INFO] [stdout] --> src/hart.rs:60:5 [INFO] [stdout] | [INFO] [stdout] 60 | EnvironmentCallFromSMode = Self::exception(9), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `EnvironmentCallFromMMode` [INFO] [stdout] --> src/hart.rs:61:5 [INFO] [stdout] | [INFO] [stdout] 61 | EnvironmentCallFromMMode = Self::exception(11), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `InstructionPageFault` [INFO] [stdout] --> src/hart.rs:62:5 [INFO] [stdout] | [INFO] [stdout] 62 | InstructionPageFault = Self::exception(12), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `LoadPageFault` [INFO] [stdout] --> src/hart.rs:63:5 [INFO] [stdout] | [INFO] [stdout] 63 | LoadPageFault = Self::exception(13), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `StoreAmoPageFault` [INFO] [stdout] --> src/hart.rs:64:5 [INFO] [stdout] | [INFO] [stdout] 64 | StoreAmoPageFault = Self::exception(15), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `TrapValue` [INFO] [stdout] --> src/hart.rs:68:8 [INFO] [stdout] | [INFO] [stdout] 68 | struct TrapValue(u64); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `InvalidCsr` [INFO] [stdout] --> src/hart.rs:71:8 [INFO] [stdout] | [INFO] [stdout] 71 | struct InvalidCsr; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/hart.rs:75:12 [INFO] [stdout] | [INFO] [stdout] 75 | pub fn new(bus: B) -> Hart { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `execute` [INFO] [stdout] --> src/hart.rs:113:12 [INFO] [stdout] | [INFO] [stdout] 113 | pub fn execute(&mut self) [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `csr` [INFO] [stdout] --> src/hart.rs:204:8 [INFO] [stdout] | [INFO] [stdout] 204 | fn csr(&mut self, address: CsrAddress, f: impl FnOnce(u64) -> u64) -> Result { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `trap` [INFO] [stdout] --> src/hart.rs:236:8 [INFO] [stdout] | [INFO] [stdout] 236 | fn trap(&mut self, cause: TrapCause, value: TrapValue) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `handle_trap_machine` [INFO] [stdout] --> src/hart.rs:252:8 [INFO] [stdout] | [INFO] [stdout] 252 | fn handle_trap_machine(&mut self, cause: TrapCause, value: TrapValue) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `handle_trap_supervisor` [INFO] [stdout] --> src/hart.rs:262:8 [INFO] [stdout] | [INFO] [stdout] 262 | fn handle_trap_supervisor(&mut self, cause: TrapCause, value: TrapValue) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `empty` [INFO] [stdout] --> src/hart.rs:286:18 [INFO] [stdout] | [INFO] [stdout] 286 | pub const fn empty() -> TrapValue { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/memory.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn new<'d>(data: &'d mut [u64]) -> &'d mut Memory { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `data` [INFO] [stdout] --> src/memory.rs:47:12 [INFO] [stdout] | [INFO] [stdout] 47 | pub fn data(&mut self) -> &mut [u8] { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `is_sufficient_privilege` [INFO] [stdout] --> src/hart/csr.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn is_sufficient_privilege(address: CsrAddress, privilege: PrivilegeLevel) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `is_read_only` [INFO] [stdout] --> src/hart/csr.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | pub fn is_read_only(address: CsrAddress) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `SSTATUS` [INFO] [stdout] --> src/hart/csr.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | pub const SSTATUS: CsrAddress = CsrAddress::new(0x100); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MSTATUS` [INFO] [stdout] --> src/hart/csr.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | pub const MSTATUS: CsrAddress = CsrAddress::new(0x300); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MISA` [INFO] [stdout] --> src/hart/csr.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | pub const MISA: CsrAddress = CsrAddress::new(0x301); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MEDELEG` [INFO] [stdout] --> src/hart/csr.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | pub const MEDELEG: CsrAddress = CsrAddress::new(0x302); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `SIE` [INFO] [stdout] --> src/hart/csr.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 25 | pub const SIE: CsrAddress = CsrAddress::new(0x104); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MIE` [INFO] [stdout] --> src/hart/csr.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | pub const MIE: CsrAddress = CsrAddress::new(0x304); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `STVEC` [INFO] [stdout] --> src/hart/csr.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | pub const STVEC: CsrAddress = CsrAddress::new(0x105); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MTVEC` [INFO] [stdout] --> src/hart/csr.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | pub const MTVEC: CsrAddress = CsrAddress::new(0x305); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `SCOUNTEREN` [INFO] [stdout] --> src/hart/csr.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | pub const SCOUNTEREN: CsrAddress = CsrAddress::new(0x106); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MCOUNTEREN` [INFO] [stdout] --> src/hart/csr.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | pub const MCOUNTEREN: CsrAddress = CsrAddress::new(0x306); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `SSCRATCH` [INFO] [stdout] --> src/hart/csr.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | pub const SSCRATCH: CsrAddress = CsrAddress::new(0x140); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MSCRATCH` [INFO] [stdout] --> src/hart/csr.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | pub const MSCRATCH: CsrAddress = CsrAddress::new(0x340); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `SEPC` [INFO] [stdout] --> src/hart/csr.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 33 | pub const SEPC: CsrAddress = CsrAddress::new(0x141); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MEPC` [INFO] [stdout] --> src/hart/csr.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | pub const MEPC: CsrAddress = CsrAddress::new(0x341); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `SCAUSE` [INFO] [stdout] --> src/hart/csr.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | pub const SCAUSE: CsrAddress = CsrAddress::new(0x142); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MCAUSE` [INFO] [stdout] --> src/hart/csr.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | pub const MCAUSE: CsrAddress = CsrAddress::new(0x342); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `STVAL` [INFO] [stdout] --> src/hart/csr.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | pub const STVAL: CsrAddress = CsrAddress::new(0x143); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MTVAL` [INFO] [stdout] --> src/hart/csr.rs:38:5 [INFO] [stdout] | [INFO] [stdout] 38 | pub const MTVAL: CsrAddress = CsrAddress::new(0x343); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `SIP` [INFO] [stdout] --> src/hart/csr.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 39 | pub const SIP: CsrAddress = CsrAddress::new(0x144); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MIP` [INFO] [stdout] --> src/hart/csr.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | pub const MIP: CsrAddress = CsrAddress::new(0x344); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `SATP` [INFO] [stdout] --> src/hart/csr.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | pub const SATP: CsrAddress = CsrAddress::new(0x180); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MVENDORID` [INFO] [stdout] --> src/hart/csr.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | pub const MVENDORID: CsrAddress = CsrAddress::new(0xF11); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MARCHID` [INFO] [stdout] --> src/hart/csr.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 43 | pub const MARCHID: CsrAddress = CsrAddress::new(0xF12); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MIMPID` [INFO] [stdout] --> src/hart/csr.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | pub const MIMPID: CsrAddress = CsrAddress::new(0xF13); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MHARTID` [INFO] [stdout] --> src/hart/csr.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 45 | pub const MHARTID: CsrAddress = CsrAddress::new(0xF14); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/hart/csr.rs:48:18 [INFO] [stdout] | [INFO] [stdout] 48 | pub const fn new(address: u16) -> CsrAddress { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new_unchecked` [INFO] [stdout] --> src/hart/csr.rs:61:25 [INFO] [stdout] | [INFO] [stdout] 61 | pub const unsafe fn new_unchecked(address: u16) -> CsrAddress { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `inner` [INFO] [stdout] --> src/hart/csr.rs:65:18 [INFO] [stdout] | [INFO] [stdout] 65 | pub const fn inner(self) -> u16 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Csr` [INFO] [stdout] --> src/hart/csr.rs:70:12 [INFO] [stdout] | [INFO] [stdout] 70 | pub struct Csr { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `ReadOnly` [INFO] [stdout] --> src/hart/csr.rs:95:12 [INFO] [stdout] | [INFO] [stdout] 95 | pub struct ReadOnly(pub u64); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access` [INFO] [stdout] --> src/hart/csr.rs:98:12 [INFO] [stdout] | [INFO] [stdout] 98 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `set` [INFO] [stdout] --> src/hart/csr.rs:103:12 [INFO] [stdout] | [INFO] [stdout] 103 | pub fn set(&mut self, value: u64) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Ip` [INFO] [stdout] --> src/hart/csr.rs:108:12 [INFO] [stdout] | [INFO] [stdout] 108 | pub struct Ip(pub u64); [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access` [INFO] [stdout] --> src/hart/csr.rs:111:12 [INFO] [stdout] | [INFO] [stdout] 111 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `is_pending` [INFO] [stdout] --> src/hart/csr.rs:117:12 [INFO] [stdout] | [INFO] [stdout] 117 | pub fn is_pending(&self, interrupt: TrapCause) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `set_pending` [INFO] [stdout] --> src/hart/csr.rs:121:12 [INFO] [stdout] | [INFO] [stdout] 121 | pub fn set_pending(&mut self, interrupt: TrapCause, value: bool) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Ie` [INFO] [stdout] --> src/hart/csr.rs:128:12 [INFO] [stdout] | [INFO] [stdout] 128 | pub struct Ie(pub u64); [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access` [INFO] [stdout] --> src/hart/csr.rs:131:12 [INFO] [stdout] | [INFO] [stdout] 131 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `is_enabled` [INFO] [stdout] --> src/hart/csr.rs:137:12 [INFO] [stdout] | [INFO] [stdout] 137 | pub fn is_enabled(&self, interrupt: TrapCause) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Tval` [INFO] [stdout] --> src/hart/csr.rs:142:12 [INFO] [stdout] | [INFO] [stdout] 142 | pub struct Tval(pub u64); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access` [INFO] [stdout] --> src/hart/csr.rs:145:12 [INFO] [stdout] | [INFO] [stdout] 145 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `set` [INFO] [stdout] --> src/hart/csr.rs:150:12 [INFO] [stdout] | [INFO] [stdout] 150 | pub fn set(&mut self, value: TrapValue) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Cause` [INFO] [stdout] --> src/hart/csr.rs:155:12 [INFO] [stdout] | [INFO] [stdout] 155 | pub struct Cause(pub u64); [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access` [INFO] [stdout] --> src/hart/csr.rs:158:12 [INFO] [stdout] | [INFO] [stdout] 158 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `set` [INFO] [stdout] --> src/hart/csr.rs:164:12 [INFO] [stdout] | [INFO] [stdout] 164 | pub fn set(&mut self, cause: TrapCause) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Epc` [INFO] [stdout] --> src/hart/csr.rs:169:12 [INFO] [stdout] | [INFO] [stdout] 169 | pub struct Epc(pub u64); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access` [INFO] [stdout] --> src/hart/csr.rs:172:12 [INFO] [stdout] | [INFO] [stdout] 172 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `set` [INFO] [stdout] --> src/hart/csr.rs:177:12 [INFO] [stdout] | [INFO] [stdout] 177 | pub fn set(&mut self, epc: u64) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Scratch` [INFO] [stdout] --> src/hart/csr.rs:182:12 [INFO] [stdout] | [INFO] [stdout] 182 | pub struct Scratch(pub u64); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access` [INFO] [stdout] --> src/hart/csr.rs:185:12 [INFO] [stdout] | [INFO] [stdout] 185 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Tvec` [INFO] [stdout] --> src/hart/csr.rs:191:12 [INFO] [stdout] | [INFO] [stdout] 191 | pub struct Tvec(pub u64); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access` [INFO] [stdout] --> src/hart/csr.rs:194:12 [INFO] [stdout] | [INFO] [stdout] 194 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `mode` [INFO] [stdout] --> src/hart/csr.rs:200:12 [INFO] [stdout] | [INFO] [stdout] 200 | pub fn mode(&self) -> u64 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `base` [INFO] [stdout] --> src/hart/csr.rs:204:12 [INFO] [stdout] | [INFO] [stdout] 204 | pub fn base(&self) -> u64 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Deleg` [INFO] [stdout] --> src/hart/csr.rs:209:12 [INFO] [stdout] | [INFO] [stdout] 209 | pub struct Deleg(pub u64); [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access` [INFO] [stdout] --> src/hart/csr.rs:212:12 [INFO] [stdout] | [INFO] [stdout] 212 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `is_delegated` [INFO] [stdout] --> src/hart/csr.rs:218:12 [INFO] [stdout] | [INFO] [stdout] 218 | pub fn is_delegated(&self, trap: TrapCause) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Status` [INFO] [stdout] --> src/hart/csr.rs:223:12 [INFO] [stdout] | [INFO] [stdout] 223 | pub struct Status(pub u64); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `M_WRITE_MASK` [INFO] [stdout] --> src/hart/csr.rs:226:5 [INFO] [stdout] | [INFO] [stdout] 226 | / const M_WRITE_MASK: u64 = 0b1 << 1 [INFO] [stdout] 227 | | | 0b1 << 3 [INFO] [stdout] 228 | | | 0b1 << 5 [INFO] [stdout] 229 | | | 0b1 << 7 [INFO] [stdout] ... | [INFO] [stdout] 235 | | | 0b1 << 21 [INFO] [stdout] 236 | | | 0b1 << 22; [INFO] [stdout] | |____________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `S_WRITE_MASK` [INFO] [stdout] --> src/hart/csr.rs:237:5 [INFO] [stdout] | [INFO] [stdout] 237 | / const S_WRITE_MASK: u64 = 0b1 << 1 [INFO] [stdout] 238 | | | 0b1 << 5 [INFO] [stdout] 239 | | | 0b1 << 8 [INFO] [stdout] 240 | | | 0b1 << 18 [INFO] [stdout] 241 | | | 0b1 << 19; [INFO] [stdout] | |____________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `S_READ_MASK` [INFO] [stdout] --> src/hart/csr.rs:242:5 [INFO] [stdout] | [INFO] [stdout] 242 | const S_READ_MASK: u64 = Self::S_WRITE_MASK; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access_mstatus` [INFO] [stdout] --> src/hart/csr.rs:244:12 [INFO] [stdout] | [INFO] [stdout] 244 | pub fn access_mstatus(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access_sstatus` [INFO] [stdout] --> src/hart/csr.rs:249:12 [INFO] [stdout] | [INFO] [stdout] 249 | pub fn access_sstatus(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `sie` [INFO] [stdout] --> src/hart/csr.rs:255:12 [INFO] [stdout] | [INFO] [stdout] 255 | pub fn sie(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `mie` [INFO] [stdout] --> src/hart/csr.rs:260:12 [INFO] [stdout] | [INFO] [stdout] 260 | pub fn mie(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `spie` [INFO] [stdout] --> src/hart/csr.rs:265:12 [INFO] [stdout] | [INFO] [stdout] 265 | pub fn spie(&self) -> u64 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `ube` [INFO] [stdout] --> src/hart/csr.rs:270:12 [INFO] [stdout] | [INFO] [stdout] 270 | pub fn ube(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `mpie` [INFO] [stdout] --> src/hart/csr.rs:275:12 [INFO] [stdout] | [INFO] [stdout] 275 | pub fn mpie(&self) -> u64 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `spp` [INFO] [stdout] --> src/hart/csr.rs:280:12 [INFO] [stdout] | [INFO] [stdout] 280 | pub fn spp(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `vs` [INFO] [stdout] --> src/hart/csr.rs:285:12 [INFO] [stdout] | [INFO] [stdout] 285 | pub fn vs(&self) -> u64 { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `mpp` [INFO] [stdout] --> src/hart/csr.rs:290:12 [INFO] [stdout] | [INFO] [stdout] 290 | pub fn mpp(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `fs` [INFO] [stdout] --> src/hart/csr.rs:295:12 [INFO] [stdout] | [INFO] [stdout] 295 | pub fn fs(&self) -> u64 { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `xs` [INFO] [stdout] --> src/hart/csr.rs:300:12 [INFO] [stdout] | [INFO] [stdout] 300 | pub fn xs(&self) -> u64 { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `mprv` [INFO] [stdout] --> src/hart/csr.rs:305:12 [INFO] [stdout] | [INFO] [stdout] 305 | pub fn mprv(&self) -> u64 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `sum` [INFO] [stdout] --> src/hart/csr.rs:310:12 [INFO] [stdout] | [INFO] [stdout] 310 | pub fn sum(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `mxr` [INFO] [stdout] --> src/hart/csr.rs:315:12 [INFO] [stdout] | [INFO] [stdout] 315 | pub fn mxr(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `tvm` [INFO] [stdout] --> src/hart/csr.rs:320:12 [INFO] [stdout] | [INFO] [stdout] 320 | pub fn tvm(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `tw` [INFO] [stdout] --> src/hart/csr.rs:325:12 [INFO] [stdout] | [INFO] [stdout] 325 | pub fn tw(&self) -> u64 { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `tsr` [INFO] [stdout] --> src/hart/csr.rs:330:12 [INFO] [stdout] | [INFO] [stdout] 330 | pub fn tsr(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `uxl` [INFO] [stdout] --> src/hart/csr.rs:335:12 [INFO] [stdout] | [INFO] [stdout] 335 | pub fn uxl(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `sxl` [INFO] [stdout] --> src/hart/csr.rs:340:12 [INFO] [stdout] | [INFO] [stdout] 340 | pub fn sxl(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `sbe` [INFO] [stdout] --> src/hart/csr.rs:345:12 [INFO] [stdout] | [INFO] [stdout] 345 | pub fn sbe(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `mbe` [INFO] [stdout] --> src/hart/csr.rs:350:12 [INFO] [stdout] | [INFO] [stdout] 350 | pub fn mbe(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `sd` [INFO] [stdout] --> src/hart/csr.rs:355:12 [INFO] [stdout] | [INFO] [stdout] 355 | pub fn sd(&self) -> u64 { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `lui` [INFO] [stdout] --> src/hart/instruction.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn lui(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `auipc` [INFO] [stdout] --> src/hart/instruction.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn auipc(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `jal` [INFO] [stdout] --> src/hart/instruction.rs:26:8 [INFO] [stdout] | [INFO] [stdout] 26 | pub fn jal(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `jalr` [INFO] [stdout] --> src/hart/instruction.rs:37:8 [INFO] [stdout] | [INFO] [stdout] 37 | pub fn jalr(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `beq` [INFO] [stdout] --> src/hart/instruction.rs:48:8 [INFO] [stdout] | [INFO] [stdout] 48 | pub fn beq(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `bne` [INFO] [stdout] --> src/hart/instruction.rs:52:8 [INFO] [stdout] | [INFO] [stdout] 52 | pub fn bne(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `blt` [INFO] [stdout] --> src/hart/instruction.rs:56:8 [INFO] [stdout] | [INFO] [stdout] 56 | pub fn blt(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `bge` [INFO] [stdout] --> src/hart/instruction.rs:64:8 [INFO] [stdout] | [INFO] [stdout] 64 | pub fn bge(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `bltu` [INFO] [stdout] --> src/hart/instruction.rs:72:8 [INFO] [stdout] | [INFO] [stdout] 72 | pub fn bltu(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `bgeu` [INFO] [stdout] --> src/hart/instruction.rs:76:8 [INFO] [stdout] | [INFO] [stdout] 76 | pub fn bgeu(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `branch` [INFO] [stdout] --> src/hart/instruction.rs:81:4 [INFO] [stdout] | [INFO] [stdout] 81 | fn branch(hart: &mut Hart, raw: u32, condition: bool) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `l` [INFO] [stdout] --> src/hart/instruction.rs:94:4 [INFO] [stdout] | [INFO] [stdout] 94 | fn l>(hart: &mut Hart, raw: u32, convert: impl FnOnce(T) -> u64) { [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `lb` [INFO] [stdout] --> src/hart/instruction.rs:106:8 [INFO] [stdout] | [INFO] [stdout] 106 | pub fn lb>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `lh` [INFO] [stdout] --> src/hart/instruction.rs:110:8 [INFO] [stdout] | [INFO] [stdout] 110 | pub fn lh>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `lw` [INFO] [stdout] --> src/hart/instruction.rs:114:8 [INFO] [stdout] | [INFO] [stdout] 114 | pub fn lw>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `ld` [INFO] [stdout] --> src/hart/instruction.rs:118:8 [INFO] [stdout] | [INFO] [stdout] 118 | pub fn ld>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `lbu` [INFO] [stdout] --> src/hart/instruction.rs:122:8 [INFO] [stdout] | [INFO] [stdout] 122 | pub fn lbu>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `lhu` [INFO] [stdout] --> src/hart/instruction.rs:126:8 [INFO] [stdout] | [INFO] [stdout] 126 | pub fn lhu>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `lwu` [INFO] [stdout] --> src/hart/instruction.rs:130:8 [INFO] [stdout] | [INFO] [stdout] 130 | pub fn lwu>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `s` [INFO] [stdout] --> src/hart/instruction.rs:135:4 [INFO] [stdout] | [INFO] [stdout] 135 | fn s>(hart: &mut Hart, raw: u32, convert: impl FnOnce(u64) -> T) { [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sb` [INFO] [stdout] --> src/hart/instruction.rs:148:8 [INFO] [stdout] | [INFO] [stdout] 148 | pub fn sb>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sh` [INFO] [stdout] --> src/hart/instruction.rs:152:8 [INFO] [stdout] | [INFO] [stdout] 152 | pub fn sh>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sw` [INFO] [stdout] --> src/hart/instruction.rs:156:8 [INFO] [stdout] | [INFO] [stdout] 156 | pub fn sw>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sd` [INFO] [stdout] --> src/hart/instruction.rs:160:8 [INFO] [stdout] | [INFO] [stdout] 160 | pub fn sd>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `addi` [INFO] [stdout] --> src/hart/instruction.rs:164:8 [INFO] [stdout] | [INFO] [stdout] 164 | pub fn addi(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `addiw` [INFO] [stdout] --> src/hart/instruction.rs:168:8 [INFO] [stdout] | [INFO] [stdout] 168 | pub fn addiw(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `slti` [INFO] [stdout] --> src/hart/instruction.rs:172:8 [INFO] [stdout] | [INFO] [stdout] 172 | pub fn slti(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sltiu` [INFO] [stdout] --> src/hart/instruction.rs:176:8 [INFO] [stdout] | [INFO] [stdout] 176 | pub fn sltiu(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `xori` [INFO] [stdout] --> src/hart/instruction.rs:180:8 [INFO] [stdout] | [INFO] [stdout] 180 | pub fn xori(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling irv v0.0.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: function is never used: `ori` [INFO] [stdout] --> src/hart/instruction.rs:184:8 [INFO] [stdout] | [INFO] [stdout] 184 | pub fn ori(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `andi` [INFO] [stdout] --> src/hart/instruction.rs:188:8 [INFO] [stdout] | [INFO] [stdout] 188 | pub fn andi(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `slli` [INFO] [stdout] --> src/hart/instruction.rs:192:8 [INFO] [stdout] | [INFO] [stdout] 192 | pub fn slli(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `srxi` [INFO] [stdout] --> src/hart/instruction.rs:196:8 [INFO] [stdout] | [INFO] [stdout] 196 | pub fn srxi(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `slliw` [INFO] [stdout] --> src/hart/instruction.rs:206:8 [INFO] [stdout] | [INFO] [stdout] 206 | pub fn slliw(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `srxiw` [INFO] [stdout] --> src/hart/instruction.rs:210:8 [INFO] [stdout] | [INFO] [stdout] 210 | pub fn srxiw(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `add_sub` [INFO] [stdout] --> src/hart/instruction.rs:220:8 [INFO] [stdout] | [INFO] [stdout] 220 | pub fn add_sub(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `addw_subw` [INFO] [stdout] --> src/hart/instruction.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 230 | pub fn addw_subw(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sll` [INFO] [stdout] --> src/hart/instruction.rs:242:8 [INFO] [stdout] | [INFO] [stdout] 242 | pub fn sll(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `slt` [INFO] [stdout] --> src/hart/instruction.rs:246:8 [INFO] [stdout] | [INFO] [stdout] 246 | pub fn slt(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sltu` [INFO] [stdout] --> src/hart/instruction.rs:250:8 [INFO] [stdout] | [INFO] [stdout] 250 | pub fn sltu(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `xor` [INFO] [stdout] --> src/hart/instruction.rs:254:8 [INFO] [stdout] | [INFO] [stdout] 254 | pub fn xor(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `srx` [INFO] [stdout] --> src/hart/instruction.rs:258:8 [INFO] [stdout] | [INFO] [stdout] 258 | pub fn srx(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `or` [INFO] [stdout] --> src/hart/instruction.rs:269:8 [INFO] [stdout] | [INFO] [stdout] 269 | pub fn or(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `and` [INFO] [stdout] --> src/hart/instruction.rs:273:8 [INFO] [stdout] | [INFO] [stdout] 273 | pub fn and(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sllw` [INFO] [stdout] --> src/hart/instruction.rs:277:8 [INFO] [stdout] | [INFO] [stdout] 277 | pub fn sllw(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `srxw` [INFO] [stdout] --> src/hart/instruction.rs:282:8 [INFO] [stdout] | [INFO] [stdout] 282 | pub fn srxw(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `fence` [INFO] [stdout] --> src/hart/instruction.rs:294:8 [INFO] [stdout] | [INFO] [stdout] 294 | pub fn fence(_hart: &mut Hart, _raw: u32) {} [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `ecall_ebreak` [INFO] [stdout] --> src/hart/instruction.rs:296:8 [INFO] [stdout] | [INFO] [stdout] 296 | pub fn ecall_ebreak(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `csrrw` [INFO] [stdout] --> src/hart/instruction.rs:310:8 [INFO] [stdout] | [INFO] [stdout] 310 | pub fn csrrw(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `csrrs` [INFO] [stdout] --> src/hart/instruction.rs:328:8 [INFO] [stdout] | [INFO] [stdout] 328 | pub fn csrrs(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `csrrc` [INFO] [stdout] --> src/hart/instruction.rs:348:8 [INFO] [stdout] | [INFO] [stdout] 348 | pub fn csrrc(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `csrrwi` [INFO] [stdout] --> src/hart/instruction.rs:368:8 [INFO] [stdout] | [INFO] [stdout] 368 | pub fn csrrwi(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `csrrsi` [INFO] [stdout] --> src/hart/instruction.rs:383:8 [INFO] [stdout] | [INFO] [stdout] 383 | pub fn csrrsi(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `csrrci` [INFO] [stdout] --> src/hart/instruction.rs:400:8 [INFO] [stdout] | [INFO] [stdout] 400 | pub fn csrrci(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `rd` [INFO] [stdout] --> src/hart/instruction.rs:419:10 [INFO] [stdout] | [INFO] [stdout] 419 | const fn rd(raw: u32) -> RegisterIndex { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `rs1` [INFO] [stdout] --> src/hart/instruction.rs:427:10 [INFO] [stdout] | [INFO] [stdout] 427 | const fn rs1(raw: u32) -> RegisterIndex { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `rs2` [INFO] [stdout] --> src/hart/instruction.rs:435:10 [INFO] [stdout] | [INFO] [stdout] 435 | const fn rs2(raw: u32) -> RegisterIndex { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `i_imm` [INFO] [stdout] --> src/hart/instruction.rs:443:10 [INFO] [stdout] | [INFO] [stdout] 443 | const fn i_imm(raw: u32) -> i32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `s_imm` [INFO] [stdout] --> src/hart/instruction.rs:449:10 [INFO] [stdout] | [INFO] [stdout] 449 | const fn s_imm(raw: u32) -> i32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `b_imm` [INFO] [stdout] --> src/hart/instruction.rs:458:10 [INFO] [stdout] | [INFO] [stdout] 458 | const fn b_imm(raw: u32) -> i32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `u_imm` [INFO] [stdout] --> src/hart/instruction.rs:469:10 [INFO] [stdout] | [INFO] [stdout] 469 | const fn u_imm(raw: u32) -> i32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `j_imm` [INFO] [stdout] --> src/hart/instruction.rs:476:10 [INFO] [stdout] | [INFO] [stdout] 476 | const fn j_imm(raw: u32) -> i32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `shamt` [INFO] [stdout] --> src/hart/instruction.rs:485:10 [INFO] [stdout] | [INFO] [stdout] 485 | const fn shamt(raw: u32) -> u32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `csr` [INFO] [stdout] --> src/hart/instruction.rs:491:4 [INFO] [stdout] | [INFO] [stdout] 491 | fn csr(raw: u32) -> CsrAddress { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `uimm` [INFO] [stdout] --> src/hart/instruction.rs:499:10 [INFO] [stdout] | [INFO] [stdout] 499 | const fn uimm(raw: u32) -> u32 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `X0` [INFO] [stdout] --> src/hart/instruction.rs:523:5 [INFO] [stdout] | [INFO] [stdout] 523 | pub const X0: RegisterIndex = RegisterIndex(0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new_unchecked` [INFO] [stdout] --> src/hart/instruction.rs:530:25 [INFO] [stdout] | [INFO] [stdout] 530 | pub const unsafe fn new_unchecked(index: usize) -> RegisterIndex { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 197 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: private type `TrapCause` in public interface (error E0446) [INFO] [stdout] --> src/hart/csr.rs:117:5 [INFO] [stdout] | [INFO] [stdout] 117 | pub fn is_pending(&self, interrupt: TrapCause) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(private_in_public)]` on by default [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #34537 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: private type `TrapCause` in public interface (error E0446) [INFO] [stdout] --> src/hart/csr.rs:121:5 [INFO] [stdout] | [INFO] [stdout] 121 | pub fn set_pending(&mut self, interrupt: TrapCause, value: bool) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #34537 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: private type `TrapCause` in public interface (error E0446) [INFO] [stdout] --> src/hart/csr.rs:137:5 [INFO] [stdout] | [INFO] [stdout] 137 | pub fn is_enabled(&self, interrupt: TrapCause) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #34537 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: private type `TrapValue` in public interface (error E0446) [INFO] [stdout] --> src/hart/csr.rs:150:5 [INFO] [stdout] | [INFO] [stdout] 150 | pub fn set(&mut self, value: TrapValue) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #34537 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: private type `TrapCause` in public interface (error E0446) [INFO] [stdout] --> src/hart/csr.rs:164:5 [INFO] [stdout] | [INFO] [stdout] 164 | pub fn set(&mut self, cause: TrapCause) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #34537 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: private type `TrapCause` in public interface (error E0446) [INFO] [stdout] --> src/hart/csr.rs:218:5 [INFO] [stdout] | [INFO] [stdout] 218 | pub fn is_delegated(&self, trap: TrapCause) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #34537 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Hart` [INFO] [stdout] --> src/hart.rs:9:12 [INFO] [stdout] | [INFO] [stdout] 9 | pub struct Hart { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `User` [INFO] [stdout] --> src/hart.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | User = 0b00, [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `PrivilegeLevel` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:25:10 [INFO] [stdout] | [INFO] [stdout] 25 | #[derive(Clone, Copy, PartialEq, Eq)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Supervisor` [INFO] [stdout] --> src/hart.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | Supervisor = 0b01, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `PrivilegeLevel` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:25:10 [INFO] [stdout] | [INFO] [stdout] 25 | #[derive(Clone, Copy, PartialEq, Eq)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Machine` [INFO] [stdout] --> src/hart.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | Machine = 0b11, [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `PrivilegeLevel` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:25:10 [INFO] [stdout] | [INFO] [stdout] 25 | #[derive(Clone, Copy, PartialEq, Eq)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `UserSoftwareInterrupt` [INFO] [stdout] --> src/hart.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | UserSoftwareInterrupt = Self::interrupt(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `SupervisorSoftwareInterrupt` [INFO] [stdout] --> src/hart.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | SupervisorSoftwareInterrupt = Self::interrupt(1), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `MachineSoftwareInterrupt` [INFO] [stdout] --> src/hart.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | MachineSoftwareInterrupt = Self::interrupt(2), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `UserTimerInterrupt` [INFO] [stdout] --> src/hart.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 43 | UserTimerInterrupt = Self::interrupt(4), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `SupervisorTimerInterrupt` [INFO] [stdout] --> src/hart.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | SupervisorTimerInterrupt = Self::interrupt(5), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `MachineTimerInterrupt` [INFO] [stdout] --> src/hart.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 45 | MachineTimerInterrupt = Self::interrupt(7), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `UserExternalInterrupt` [INFO] [stdout] --> src/hart.rs:46:5 [INFO] [stdout] | [INFO] [stdout] 46 | UserExternalInterrupt = Self::interrupt(8), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `SupervisorExternalInterrupt` [INFO] [stdout] --> src/hart.rs:47:5 [INFO] [stdout] | [INFO] [stdout] 47 | SupervisorExternalInterrupt = Self::interrupt(9), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `MachineExternalInterrupt` [INFO] [stdout] --> src/hart.rs:48:5 [INFO] [stdout] | [INFO] [stdout] 48 | MachineExternalInterrupt = Self::interrupt(11), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `InstructionAddressMisaligned` [INFO] [stdout] --> src/hart.rs:51:5 [INFO] [stdout] | [INFO] [stdout] 51 | InstructionAddressMisaligned = Self::exception(0), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `InstructionAccessFault` [INFO] [stdout] --> src/hart.rs:52:5 [INFO] [stdout] | [INFO] [stdout] 52 | InstructionAccessFault = Self::exception(1), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `IllegalInstruction` [INFO] [stdout] --> src/hart.rs:53:5 [INFO] [stdout] | [INFO] [stdout] 53 | IllegalInstruction = Self::exception(2), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `Breakpoint` [INFO] [stdout] --> src/hart.rs:54:5 [INFO] [stdout] | [INFO] [stdout] 54 | Breakpoint = Self::exception(3), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `LoadAddressMisaligned` [INFO] [stdout] --> src/hart.rs:55:5 [INFO] [stdout] | [INFO] [stdout] 55 | LoadAddressMisaligned = Self::exception(4), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `LoadAccessFault` [INFO] [stdout] --> src/hart.rs:56:5 [INFO] [stdout] | [INFO] [stdout] 56 | LoadAccessFault = Self::exception(5), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `StoreAmoAddressMisaligned` [INFO] [stdout] --> src/hart.rs:57:5 [INFO] [stdout] | [INFO] [stdout] 57 | StoreAmoAddressMisaligned = Self::exception(6), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `StoreAmoAccessFault` [INFO] [stdout] --> src/hart.rs:58:5 [INFO] [stdout] | [INFO] [stdout] 58 | StoreAmoAccessFault = Self::exception(7), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `EnvironmentCallFromUMode` [INFO] [stdout] --> src/hart.rs:59:5 [INFO] [stdout] | [INFO] [stdout] 59 | EnvironmentCallFromUMode = Self::exception(8), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `EnvironmentCallFromSMode` [INFO] [stdout] --> src/hart.rs:60:5 [INFO] [stdout] | [INFO] [stdout] 60 | EnvironmentCallFromSMode = Self::exception(9), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `EnvironmentCallFromMMode` [INFO] [stdout] --> src/hart.rs:61:5 [INFO] [stdout] | [INFO] [stdout] 61 | EnvironmentCallFromMMode = Self::exception(11), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `InstructionPageFault` [INFO] [stdout] --> src/hart.rs:62:5 [INFO] [stdout] | [INFO] [stdout] 62 | InstructionPageFault = Self::exception(12), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `LoadPageFault` [INFO] [stdout] --> src/hart.rs:63:5 [INFO] [stdout] | [INFO] [stdout] 63 | LoadPageFault = Self::exception(13), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variant is never constructed: `StoreAmoPageFault` [INFO] [stdout] --> src/hart.rs:64:5 [INFO] [stdout] | [INFO] [stdout] 64 | StoreAmoPageFault = Self::exception(15), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stdout] --> src/hart.rs:37:10 [INFO] [stdout] | [INFO] [stdout] 37 | #[derive(Clone, Copy)] [INFO] [stdout] | ^^^^^ [INFO] [stdout] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `TrapValue` [INFO] [stdout] --> src/hart.rs:68:8 [INFO] [stdout] | [INFO] [stdout] 68 | struct TrapValue(u64); [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `InvalidCsr` [INFO] [stdout] --> src/hart.rs:71:8 [INFO] [stdout] | [INFO] [stdout] 71 | struct InvalidCsr; [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/hart.rs:75:12 [INFO] [stdout] | [INFO] [stdout] 75 | pub fn new(bus: B) -> Hart { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `execute` [INFO] [stdout] --> src/hart.rs:113:12 [INFO] [stdout] | [INFO] [stdout] 113 | pub fn execute(&mut self) [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `csr` [INFO] [stdout] --> src/hart.rs:204:8 [INFO] [stdout] | [INFO] [stdout] 204 | fn csr(&mut self, address: CsrAddress, f: impl FnOnce(u64) -> u64) -> Result { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `trap` [INFO] [stdout] --> src/hart.rs:236:8 [INFO] [stdout] | [INFO] [stdout] 236 | fn trap(&mut self, cause: TrapCause, value: TrapValue) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `handle_trap_machine` [INFO] [stdout] --> src/hart.rs:252:8 [INFO] [stdout] | [INFO] [stdout] 252 | fn handle_trap_machine(&mut self, cause: TrapCause, value: TrapValue) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `handle_trap_supervisor` [INFO] [stdout] --> src/hart.rs:262:8 [INFO] [stdout] | [INFO] [stdout] 262 | fn handle_trap_supervisor(&mut self, cause: TrapCause, value: TrapValue) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `empty` [INFO] [stdout] --> src/hart.rs:286:18 [INFO] [stdout] | [INFO] [stdout] 286 | pub const fn empty() -> TrapValue { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/memory.rs:21:12 [INFO] [stdout] | [INFO] [stdout] 21 | pub fn new<'d>(data: &'d mut [u64]) -> &'d mut Memory { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `data` [INFO] [stdout] --> src/memory.rs:47:12 [INFO] [stdout] | [INFO] [stdout] 47 | pub fn data(&mut self) -> &mut [u8] { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `is_sufficient_privilege` [INFO] [stdout] --> src/hart/csr.rs:7:8 [INFO] [stdout] | [INFO] [stdout] 7 | pub fn is_sufficient_privilege(address: CsrAddress, privilege: PrivilegeLevel) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `is_read_only` [INFO] [stdout] --> src/hart/csr.rs:12:8 [INFO] [stdout] | [INFO] [stdout] 12 | pub fn is_read_only(address: CsrAddress) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `SSTATUS` [INFO] [stdout] --> src/hart/csr.rs:21:5 [INFO] [stdout] | [INFO] [stdout] 21 | pub const SSTATUS: CsrAddress = CsrAddress::new(0x100); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MSTATUS` [INFO] [stdout] --> src/hart/csr.rs:22:5 [INFO] [stdout] | [INFO] [stdout] 22 | pub const MSTATUS: CsrAddress = CsrAddress::new(0x300); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MISA` [INFO] [stdout] --> src/hart/csr.rs:23:5 [INFO] [stdout] | [INFO] [stdout] 23 | pub const MISA: CsrAddress = CsrAddress::new(0x301); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MEDELEG` [INFO] [stdout] --> src/hart/csr.rs:24:5 [INFO] [stdout] | [INFO] [stdout] 24 | pub const MEDELEG: CsrAddress = CsrAddress::new(0x302); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `SIE` [INFO] [stdout] --> src/hart/csr.rs:25:5 [INFO] [stdout] | [INFO] [stdout] 25 | pub const SIE: CsrAddress = CsrAddress::new(0x104); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MIE` [INFO] [stdout] --> src/hart/csr.rs:26:5 [INFO] [stdout] | [INFO] [stdout] 26 | pub const MIE: CsrAddress = CsrAddress::new(0x304); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `STVEC` [INFO] [stdout] --> src/hart/csr.rs:27:5 [INFO] [stdout] | [INFO] [stdout] 27 | pub const STVEC: CsrAddress = CsrAddress::new(0x105); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MTVEC` [INFO] [stdout] --> src/hart/csr.rs:28:5 [INFO] [stdout] | [INFO] [stdout] 28 | pub const MTVEC: CsrAddress = CsrAddress::new(0x305); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `SCOUNTEREN` [INFO] [stdout] --> src/hart/csr.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 29 | pub const SCOUNTEREN: CsrAddress = CsrAddress::new(0x106); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MCOUNTEREN` [INFO] [stdout] --> src/hart/csr.rs:30:5 [INFO] [stdout] | [INFO] [stdout] 30 | pub const MCOUNTEREN: CsrAddress = CsrAddress::new(0x306); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `SSCRATCH` [INFO] [stdout] --> src/hart/csr.rs:31:5 [INFO] [stdout] | [INFO] [stdout] 31 | pub const SSCRATCH: CsrAddress = CsrAddress::new(0x140); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MSCRATCH` [INFO] [stdout] --> src/hart/csr.rs:32:5 [INFO] [stdout] | [INFO] [stdout] 32 | pub const MSCRATCH: CsrAddress = CsrAddress::new(0x340); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `SEPC` [INFO] [stdout] --> src/hart/csr.rs:33:5 [INFO] [stdout] | [INFO] [stdout] 33 | pub const SEPC: CsrAddress = CsrAddress::new(0x141); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MEPC` [INFO] [stdout] --> src/hart/csr.rs:34:5 [INFO] [stdout] | [INFO] [stdout] 34 | pub const MEPC: CsrAddress = CsrAddress::new(0x341); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `SCAUSE` [INFO] [stdout] --> src/hart/csr.rs:35:5 [INFO] [stdout] | [INFO] [stdout] 35 | pub const SCAUSE: CsrAddress = CsrAddress::new(0x142); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MCAUSE` [INFO] [stdout] --> src/hart/csr.rs:36:5 [INFO] [stdout] | [INFO] [stdout] 36 | pub const MCAUSE: CsrAddress = CsrAddress::new(0x342); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `STVAL` [INFO] [stdout] --> src/hart/csr.rs:37:5 [INFO] [stdout] | [INFO] [stdout] 37 | pub const STVAL: CsrAddress = CsrAddress::new(0x143); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MTVAL` [INFO] [stdout] --> src/hart/csr.rs:38:5 [INFO] [stdout] | [INFO] [stdout] 38 | pub const MTVAL: CsrAddress = CsrAddress::new(0x343); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `SIP` [INFO] [stdout] --> src/hart/csr.rs:39:5 [INFO] [stdout] | [INFO] [stdout] 39 | pub const SIP: CsrAddress = CsrAddress::new(0x144); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MIP` [INFO] [stdout] --> src/hart/csr.rs:40:5 [INFO] [stdout] | [INFO] [stdout] 40 | pub const MIP: CsrAddress = CsrAddress::new(0x344); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `SATP` [INFO] [stdout] --> src/hart/csr.rs:41:5 [INFO] [stdout] | [INFO] [stdout] 41 | pub const SATP: CsrAddress = CsrAddress::new(0x180); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MVENDORID` [INFO] [stdout] --> src/hart/csr.rs:42:5 [INFO] [stdout] | [INFO] [stdout] 42 | pub const MVENDORID: CsrAddress = CsrAddress::new(0xF11); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MARCHID` [INFO] [stdout] --> src/hart/csr.rs:43:5 [INFO] [stdout] | [INFO] [stdout] 43 | pub const MARCHID: CsrAddress = CsrAddress::new(0xF12); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MIMPID` [INFO] [stdout] --> src/hart/csr.rs:44:5 [INFO] [stdout] | [INFO] [stdout] 44 | pub const MIMPID: CsrAddress = CsrAddress::new(0xF13); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `MHARTID` [INFO] [stdout] --> src/hart/csr.rs:45:5 [INFO] [stdout] | [INFO] [stdout] 45 | pub const MHARTID: CsrAddress = CsrAddress::new(0xF14); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new` [INFO] [stdout] --> src/hart/csr.rs:48:18 [INFO] [stdout] | [INFO] [stdout] 48 | pub const fn new(address: u16) -> CsrAddress { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new_unchecked` [INFO] [stdout] --> src/hart/csr.rs:61:25 [INFO] [stdout] | [INFO] [stdout] 61 | pub const unsafe fn new_unchecked(address: u16) -> CsrAddress { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `inner` [INFO] [stdout] --> src/hart/csr.rs:65:18 [INFO] [stdout] | [INFO] [stdout] 65 | pub const fn inner(self) -> u16 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Csr` [INFO] [stdout] --> src/hart/csr.rs:70:12 [INFO] [stdout] | [INFO] [stdout] 70 | pub struct Csr { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `ReadOnly` [INFO] [stdout] --> src/hart/csr.rs:95:12 [INFO] [stdout] | [INFO] [stdout] 95 | pub struct ReadOnly(pub u64); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access` [INFO] [stdout] --> src/hart/csr.rs:98:12 [INFO] [stdout] | [INFO] [stdout] 98 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `set` [INFO] [stdout] --> src/hart/csr.rs:103:12 [INFO] [stdout] | [INFO] [stdout] 103 | pub fn set(&mut self, value: u64) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Ip` [INFO] [stdout] --> src/hart/csr.rs:108:12 [INFO] [stdout] | [INFO] [stdout] 108 | pub struct Ip(pub u64); [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access` [INFO] [stdout] --> src/hart/csr.rs:111:12 [INFO] [stdout] | [INFO] [stdout] 111 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `is_pending` [INFO] [stdout] --> src/hart/csr.rs:117:12 [INFO] [stdout] | [INFO] [stdout] 117 | pub fn is_pending(&self, interrupt: TrapCause) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `set_pending` [INFO] [stdout] --> src/hart/csr.rs:121:12 [INFO] [stdout] | [INFO] [stdout] 121 | pub fn set_pending(&mut self, interrupt: TrapCause, value: bool) { [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Ie` [INFO] [stdout] --> src/hart/csr.rs:128:12 [INFO] [stdout] | [INFO] [stdout] 128 | pub struct Ie(pub u64); [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access` [INFO] [stdout] --> src/hart/csr.rs:131:12 [INFO] [stdout] | [INFO] [stdout] 131 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `is_enabled` [INFO] [stdout] --> src/hart/csr.rs:137:12 [INFO] [stdout] | [INFO] [stdout] 137 | pub fn is_enabled(&self, interrupt: TrapCause) -> bool { [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Tval` [INFO] [stdout] --> src/hart/csr.rs:142:12 [INFO] [stdout] | [INFO] [stdout] 142 | pub struct Tval(pub u64); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access` [INFO] [stdout] --> src/hart/csr.rs:145:12 [INFO] [stdout] | [INFO] [stdout] 145 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `set` [INFO] [stdout] --> src/hart/csr.rs:150:12 [INFO] [stdout] | [INFO] [stdout] 150 | pub fn set(&mut self, value: TrapValue) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Cause` [INFO] [stdout] --> src/hart/csr.rs:155:12 [INFO] [stdout] | [INFO] [stdout] 155 | pub struct Cause(pub u64); [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access` [INFO] [stdout] --> src/hart/csr.rs:158:12 [INFO] [stdout] | [INFO] [stdout] 158 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `set` [INFO] [stdout] --> src/hart/csr.rs:164:12 [INFO] [stdout] | [INFO] [stdout] 164 | pub fn set(&mut self, cause: TrapCause) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Epc` [INFO] [stdout] --> src/hart/csr.rs:169:12 [INFO] [stdout] | [INFO] [stdout] 169 | pub struct Epc(pub u64); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access` [INFO] [stdout] --> src/hart/csr.rs:172:12 [INFO] [stdout] | [INFO] [stdout] 172 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `set` [INFO] [stdout] --> src/hart/csr.rs:177:12 [INFO] [stdout] | [INFO] [stdout] 177 | pub fn set(&mut self, epc: u64) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Scratch` [INFO] [stdout] --> src/hart/csr.rs:182:12 [INFO] [stdout] | [INFO] [stdout] 182 | pub struct Scratch(pub u64); [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access` [INFO] [stdout] --> src/hart/csr.rs:185:12 [INFO] [stdout] | [INFO] [stdout] 185 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Tvec` [INFO] [stdout] --> src/hart/csr.rs:191:12 [INFO] [stdout] | [INFO] [stdout] 191 | pub struct Tvec(pub u64); [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access` [INFO] [stdout] --> src/hart/csr.rs:194:12 [INFO] [stdout] | [INFO] [stdout] 194 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `mode` [INFO] [stdout] --> src/hart/csr.rs:200:12 [INFO] [stdout] | [INFO] [stdout] 200 | pub fn mode(&self) -> u64 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `base` [INFO] [stdout] --> src/hart/csr.rs:204:12 [INFO] [stdout] | [INFO] [stdout] 204 | pub fn base(&self) -> u64 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Deleg` [INFO] [stdout] --> src/hart/csr.rs:209:12 [INFO] [stdout] | [INFO] [stdout] 209 | pub struct Deleg(pub u64); [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access` [INFO] [stdout] --> src/hart/csr.rs:212:12 [INFO] [stdout] | [INFO] [stdout] 212 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `is_delegated` [INFO] [stdout] --> src/hart/csr.rs:218:12 [INFO] [stdout] | [INFO] [stdout] 218 | pub fn is_delegated(&self, trap: TrapCause) -> bool { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct is never constructed: `Status` [INFO] [stdout] --> src/hart/csr.rs:223:12 [INFO] [stdout] | [INFO] [stdout] 223 | pub struct Status(pub u64); [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `M_WRITE_MASK` [INFO] [stdout] --> src/hart/csr.rs:226:5 [INFO] [stdout] | [INFO] [stdout] 226 | / const M_WRITE_MASK: u64 = 0b1 << 1 [INFO] [stdout] 227 | | | 0b1 << 3 [INFO] [stdout] 228 | | | 0b1 << 5 [INFO] [stdout] 229 | | | 0b1 << 7 [INFO] [stdout] ... | [INFO] [stdout] 235 | | | 0b1 << 21 [INFO] [stdout] 236 | | | 0b1 << 22; [INFO] [stdout] | |____________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `S_WRITE_MASK` [INFO] [stdout] --> src/hart/csr.rs:237:5 [INFO] [stdout] | [INFO] [stdout] 237 | / const S_WRITE_MASK: u64 = 0b1 << 1 [INFO] [stdout] 238 | | | 0b1 << 5 [INFO] [stdout] 239 | | | 0b1 << 8 [INFO] [stdout] 240 | | | 0b1 << 18 [INFO] [stdout] 241 | | | 0b1 << 19; [INFO] [stdout] | |____________________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `S_READ_MASK` [INFO] [stdout] --> src/hart/csr.rs:242:5 [INFO] [stdout] | [INFO] [stdout] 242 | const S_READ_MASK: u64 = Self::S_WRITE_MASK; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access_mstatus` [INFO] [stdout] --> src/hart/csr.rs:244:12 [INFO] [stdout] | [INFO] [stdout] 244 | pub fn access_mstatus(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `access_sstatus` [INFO] [stdout] --> src/hart/csr.rs:249:12 [INFO] [stdout] | [INFO] [stdout] 249 | pub fn access_sstatus(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `sie` [INFO] [stdout] --> src/hart/csr.rs:255:12 [INFO] [stdout] | [INFO] [stdout] 255 | pub fn sie(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `mie` [INFO] [stdout] --> src/hart/csr.rs:260:12 [INFO] [stdout] | [INFO] [stdout] 260 | pub fn mie(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `spie` [INFO] [stdout] --> src/hart/csr.rs:265:12 [INFO] [stdout] | [INFO] [stdout] 265 | pub fn spie(&self) -> u64 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `ube` [INFO] [stdout] --> src/hart/csr.rs:270:12 [INFO] [stdout] | [INFO] [stdout] 270 | pub fn ube(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `mpie` [INFO] [stdout] --> src/hart/csr.rs:275:12 [INFO] [stdout] | [INFO] [stdout] 275 | pub fn mpie(&self) -> u64 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `spp` [INFO] [stdout] --> src/hart/csr.rs:280:12 [INFO] [stdout] | [INFO] [stdout] 280 | pub fn spp(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `vs` [INFO] [stdout] --> src/hart/csr.rs:285:12 [INFO] [stdout] | [INFO] [stdout] 285 | pub fn vs(&self) -> u64 { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `mpp` [INFO] [stdout] --> src/hart/csr.rs:290:12 [INFO] [stdout] | [INFO] [stdout] 290 | pub fn mpp(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `fs` [INFO] [stdout] --> src/hart/csr.rs:295:12 [INFO] [stdout] | [INFO] [stdout] 295 | pub fn fs(&self) -> u64 { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `xs` [INFO] [stdout] --> src/hart/csr.rs:300:12 [INFO] [stdout] | [INFO] [stdout] 300 | pub fn xs(&self) -> u64 { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `mprv` [INFO] [stdout] --> src/hart/csr.rs:305:12 [INFO] [stdout] | [INFO] [stdout] 305 | pub fn mprv(&self) -> u64 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `sum` [INFO] [stdout] --> src/hart/csr.rs:310:12 [INFO] [stdout] | [INFO] [stdout] 310 | pub fn sum(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `mxr` [INFO] [stdout] --> src/hart/csr.rs:315:12 [INFO] [stdout] | [INFO] [stdout] 315 | pub fn mxr(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `tvm` [INFO] [stdout] --> src/hart/csr.rs:320:12 [INFO] [stdout] | [INFO] [stdout] 320 | pub fn tvm(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `tw` [INFO] [stdout] --> src/hart/csr.rs:325:12 [INFO] [stdout] | [INFO] [stdout] 325 | pub fn tw(&self) -> u64 { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `tsr` [INFO] [stdout] --> src/hart/csr.rs:330:12 [INFO] [stdout] | [INFO] [stdout] 330 | pub fn tsr(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `uxl` [INFO] [stdout] --> src/hart/csr.rs:335:12 [INFO] [stdout] | [INFO] [stdout] 335 | pub fn uxl(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `sxl` [INFO] [stdout] --> src/hart/csr.rs:340:12 [INFO] [stdout] | [INFO] [stdout] 340 | pub fn sxl(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `sbe` [INFO] [stdout] --> src/hart/csr.rs:345:12 [INFO] [stdout] | [INFO] [stdout] 345 | pub fn sbe(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `mbe` [INFO] [stdout] --> src/hart/csr.rs:350:12 [INFO] [stdout] | [INFO] [stdout] 350 | pub fn mbe(&self) -> u64 { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `sd` [INFO] [stdout] --> src/hart/csr.rs:355:12 [INFO] [stdout] | [INFO] [stdout] 355 | pub fn sd(&self) -> u64 { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `lui` [INFO] [stdout] --> src/hart/instruction.rs:18:8 [INFO] [stdout] | [INFO] [stdout] 18 | pub fn lui(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `auipc` [INFO] [stdout] --> src/hart/instruction.rs:22:8 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn auipc(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `jal` [INFO] [stdout] --> src/hart/instruction.rs:26:8 [INFO] [stdout] | [INFO] [stdout] 26 | pub fn jal(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `jalr` [INFO] [stdout] --> src/hart/instruction.rs:37:8 [INFO] [stdout] | [INFO] [stdout] 37 | pub fn jalr(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `beq` [INFO] [stdout] --> src/hart/instruction.rs:48:8 [INFO] [stdout] | [INFO] [stdout] 48 | pub fn beq(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `bne` [INFO] [stdout] --> src/hart/instruction.rs:52:8 [INFO] [stdout] | [INFO] [stdout] 52 | pub fn bne(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `blt` [INFO] [stdout] --> src/hart/instruction.rs:56:8 [INFO] [stdout] | [INFO] [stdout] 56 | pub fn blt(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `bge` [INFO] [stdout] --> src/hart/instruction.rs:64:8 [INFO] [stdout] | [INFO] [stdout] 64 | pub fn bge(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `bltu` [INFO] [stdout] --> src/hart/instruction.rs:72:8 [INFO] [stdout] | [INFO] [stdout] 72 | pub fn bltu(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `bgeu` [INFO] [stdout] --> src/hart/instruction.rs:76:8 [INFO] [stdout] | [INFO] [stdout] 76 | pub fn bgeu(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `branch` [INFO] [stdout] --> src/hart/instruction.rs:81:4 [INFO] [stdout] | [INFO] [stdout] 81 | fn branch(hart: &mut Hart, raw: u32, condition: bool) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `l` [INFO] [stdout] --> src/hart/instruction.rs:94:4 [INFO] [stdout] | [INFO] [stdout] 94 | fn l>(hart: &mut Hart, raw: u32, convert: impl FnOnce(T) -> u64) { [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `lb` [INFO] [stdout] --> src/hart/instruction.rs:106:8 [INFO] [stdout] | [INFO] [stdout] 106 | pub fn lb>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `lh` [INFO] [stdout] --> src/hart/instruction.rs:110:8 [INFO] [stdout] | [INFO] [stdout] 110 | pub fn lh>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `lw` [INFO] [stdout] --> src/hart/instruction.rs:114:8 [INFO] [stdout] | [INFO] [stdout] 114 | pub fn lw>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `ld` [INFO] [stdout] --> src/hart/instruction.rs:118:8 [INFO] [stdout] | [INFO] [stdout] 118 | pub fn ld>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `lbu` [INFO] [stdout] --> src/hart/instruction.rs:122:8 [INFO] [stdout] | [INFO] [stdout] 122 | pub fn lbu>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `lhu` [INFO] [stdout] --> src/hart/instruction.rs:126:8 [INFO] [stdout] | [INFO] [stdout] 126 | pub fn lhu>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `lwu` [INFO] [stdout] --> src/hart/instruction.rs:130:8 [INFO] [stdout] | [INFO] [stdout] 130 | pub fn lwu>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `s` [INFO] [stdout] --> src/hart/instruction.rs:135:4 [INFO] [stdout] | [INFO] [stdout] 135 | fn s>(hart: &mut Hart, raw: u32, convert: impl FnOnce(u64) -> T) { [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sb` [INFO] [stdout] --> src/hart/instruction.rs:148:8 [INFO] [stdout] | [INFO] [stdout] 148 | pub fn sb>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sh` [INFO] [stdout] --> src/hart/instruction.rs:152:8 [INFO] [stdout] | [INFO] [stdout] 152 | pub fn sh>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sw` [INFO] [stdout] --> src/hart/instruction.rs:156:8 [INFO] [stdout] | [INFO] [stdout] 156 | pub fn sw>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sd` [INFO] [stdout] --> src/hart/instruction.rs:160:8 [INFO] [stdout] | [INFO] [stdout] 160 | pub fn sd>(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `addi` [INFO] [stdout] --> src/hart/instruction.rs:164:8 [INFO] [stdout] | [INFO] [stdout] 164 | pub fn addi(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `addiw` [INFO] [stdout] --> src/hart/instruction.rs:168:8 [INFO] [stdout] | [INFO] [stdout] 168 | pub fn addiw(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `slti` [INFO] [stdout] --> src/hart/instruction.rs:172:8 [INFO] [stdout] | [INFO] [stdout] 172 | pub fn slti(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sltiu` [INFO] [stdout] --> src/hart/instruction.rs:176:8 [INFO] [stdout] | [INFO] [stdout] 176 | pub fn sltiu(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `xori` [INFO] [stdout] --> src/hart/instruction.rs:180:8 [INFO] [stdout] | [INFO] [stdout] 180 | pub fn xori(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `ori` [INFO] [stdout] --> src/hart/instruction.rs:184:8 [INFO] [stdout] | [INFO] [stdout] 184 | pub fn ori(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `andi` [INFO] [stdout] --> src/hart/instruction.rs:188:8 [INFO] [stdout] | [INFO] [stdout] 188 | pub fn andi(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `slli` [INFO] [stdout] --> src/hart/instruction.rs:192:8 [INFO] [stdout] | [INFO] [stdout] 192 | pub fn slli(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `srxi` [INFO] [stdout] --> src/hart/instruction.rs:196:8 [INFO] [stdout] | [INFO] [stdout] 196 | pub fn srxi(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `slliw` [INFO] [stdout] --> src/hart/instruction.rs:206:8 [INFO] [stdout] | [INFO] [stdout] 206 | pub fn slliw(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `srxiw` [INFO] [stdout] --> src/hart/instruction.rs:210:8 [INFO] [stdout] | [INFO] [stdout] 210 | pub fn srxiw(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `add_sub` [INFO] [stdout] --> src/hart/instruction.rs:220:8 [INFO] [stdout] | [INFO] [stdout] 220 | pub fn add_sub(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `addw_subw` [INFO] [stdout] --> src/hart/instruction.rs:230:8 [INFO] [stdout] | [INFO] [stdout] 230 | pub fn addw_subw(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sll` [INFO] [stdout] --> src/hart/instruction.rs:242:8 [INFO] [stdout] | [INFO] [stdout] 242 | pub fn sll(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `slt` [INFO] [stdout] --> src/hart/instruction.rs:246:8 [INFO] [stdout] | [INFO] [stdout] 246 | pub fn slt(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sltu` [INFO] [stdout] --> src/hart/instruction.rs:250:8 [INFO] [stdout] | [INFO] [stdout] 250 | pub fn sltu(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `xor` [INFO] [stdout] --> src/hart/instruction.rs:254:8 [INFO] [stdout] | [INFO] [stdout] 254 | pub fn xor(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `srx` [INFO] [stdout] --> src/hart/instruction.rs:258:8 [INFO] [stdout] | [INFO] [stdout] 258 | pub fn srx(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `or` [INFO] [stdout] --> src/hart/instruction.rs:269:8 [INFO] [stdout] | [INFO] [stdout] 269 | pub fn or(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `and` [INFO] [stdout] --> src/hart/instruction.rs:273:8 [INFO] [stdout] | [INFO] [stdout] 273 | pub fn and(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `sllw` [INFO] [stdout] --> src/hart/instruction.rs:277:8 [INFO] [stdout] | [INFO] [stdout] 277 | pub fn sllw(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `srxw` [INFO] [stdout] --> src/hart/instruction.rs:282:8 [INFO] [stdout] | [INFO] [stdout] 282 | pub fn srxw(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `fence` [INFO] [stdout] --> src/hart/instruction.rs:294:8 [INFO] [stdout] | [INFO] [stdout] 294 | pub fn fence(_hart: &mut Hart, _raw: u32) {} [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `ecall_ebreak` [INFO] [stdout] --> src/hart/instruction.rs:296:8 [INFO] [stdout] | [INFO] [stdout] 296 | pub fn ecall_ebreak(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `csrrw` [INFO] [stdout] --> src/hart/instruction.rs:310:8 [INFO] [stdout] | [INFO] [stdout] 310 | pub fn csrrw(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `csrrs` [INFO] [stdout] --> src/hart/instruction.rs:328:8 [INFO] [stdout] | [INFO] [stdout] 328 | pub fn csrrs(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `csrrc` [INFO] [stdout] --> src/hart/instruction.rs:348:8 [INFO] [stdout] | [INFO] [stdout] 348 | pub fn csrrc(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `csrrwi` [INFO] [stdout] --> src/hart/instruction.rs:368:8 [INFO] [stdout] | [INFO] [stdout] 368 | pub fn csrrwi(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `csrrsi` [INFO] [stdout] --> src/hart/instruction.rs:383:8 [INFO] [stdout] | [INFO] [stdout] 383 | pub fn csrrsi(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `csrrci` [INFO] [stdout] --> src/hart/instruction.rs:400:8 [INFO] [stdout] | [INFO] [stdout] 400 | pub fn csrrci(hart: &mut Hart, raw: u32) { [INFO] [stdout] | ^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `rd` [INFO] [stdout] --> src/hart/instruction.rs:419:10 [INFO] [stdout] | [INFO] [stdout] 419 | const fn rd(raw: u32) -> RegisterIndex { [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `rs1` [INFO] [stdout] --> src/hart/instruction.rs:427:10 [INFO] [stdout] | [INFO] [stdout] 427 | const fn rs1(raw: u32) -> RegisterIndex { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `rs2` [INFO] [stdout] --> src/hart/instruction.rs:435:10 [INFO] [stdout] | [INFO] [stdout] 435 | const fn rs2(raw: u32) -> RegisterIndex { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `i_imm` [INFO] [stdout] --> src/hart/instruction.rs:443:10 [INFO] [stdout] | [INFO] [stdout] 443 | const fn i_imm(raw: u32) -> i32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `s_imm` [INFO] [stdout] --> src/hart/instruction.rs:449:10 [INFO] [stdout] | [INFO] [stdout] 449 | const fn s_imm(raw: u32) -> i32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `b_imm` [INFO] [stdout] --> src/hart/instruction.rs:458:10 [INFO] [stdout] | [INFO] [stdout] 458 | const fn b_imm(raw: u32) -> i32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `u_imm` [INFO] [stdout] --> src/hart/instruction.rs:469:10 [INFO] [stdout] | [INFO] [stdout] 469 | const fn u_imm(raw: u32) -> i32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `j_imm` [INFO] [stdout] --> src/hart/instruction.rs:476:10 [INFO] [stdout] | [INFO] [stdout] 476 | const fn j_imm(raw: u32) -> i32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `shamt` [INFO] [stdout] --> src/hart/instruction.rs:485:10 [INFO] [stdout] | [INFO] [stdout] 485 | const fn shamt(raw: u32) -> u32 { [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `csr` [INFO] [stdout] --> src/hart/instruction.rs:491:4 [INFO] [stdout] | [INFO] [stdout] 491 | fn csr(raw: u32) -> CsrAddress { [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function is never used: `uimm` [INFO] [stdout] --> src/hart/instruction.rs:499:10 [INFO] [stdout] | [INFO] [stdout] 499 | const fn uimm(raw: u32) -> u32 { [INFO] [stdout] | ^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated constant is never used: `X0` [INFO] [stdout] --> src/hart/instruction.rs:523:5 [INFO] [stdout] | [INFO] [stdout] 523 | pub const X0: RegisterIndex = RegisterIndex(0); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function is never used: `new_unchecked` [INFO] [stdout] --> src/hart/instruction.rs:530:25 [INFO] [stdout] | [INFO] [stdout] 530 | pub const unsafe fn new_unchecked(index: usize) -> RegisterIndex { [INFO] [stdout] | ^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 197 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 1.15s [INFO] running `Command { std: "docker" "inspect" "a72cd6dc1f5be280d870bcd90487246fbb363ebeb5c2d1630395fbd2dba2e1f9", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a72cd6dc1f5be280d870bcd90487246fbb363ebeb5c2d1630395fbd2dba2e1f9", kill_on_drop: false }` [INFO] [stdout] a72cd6dc1f5be280d870bcd90487246fbb363ebeb5c2d1630395fbd2dba2e1f9 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/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" "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:0cd99ca24d8e8c98e67c542213511d985b8778b5bdcbb160e038429496686047" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-02-22" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 0a6201bb64bd9ab54b317b610ba866e0987761d230e0f77f88a9cd0da0189eff [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "0a6201bb64bd9ab54b317b610ba866e0987761d230e0f77f88a9cd0da0189eff", kill_on_drop: false }` [INFO] [stderr] warning: private type `TrapCause` in public interface (error E0446) [INFO] [stderr] --> src/hart/csr.rs:117:5 [INFO] [stderr] | [INFO] [stderr] 117 | pub fn is_pending(&self, interrupt: TrapCause) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(private_in_public)]` on by default [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #34537 [INFO] [stderr] [INFO] [stderr] warning: private type `TrapCause` in public interface (error E0446) [INFO] [stderr] --> src/hart/csr.rs:121:5 [INFO] [stderr] | [INFO] [stderr] 121 | pub fn set_pending(&mut self, interrupt: TrapCause, value: bool) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #34537 [INFO] [stderr] [INFO] [stderr] warning: private type `TrapCause` in public interface (error E0446) [INFO] [stderr] --> src/hart/csr.rs:137:5 [INFO] [stderr] | [INFO] [stderr] 137 | pub fn is_enabled(&self, interrupt: TrapCause) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #34537 [INFO] [stderr] [INFO] [stderr] warning: private type `TrapValue` in public interface (error E0446) [INFO] [stderr] --> src/hart/csr.rs:150:5 [INFO] [stderr] | [INFO] [stderr] 150 | pub fn set(&mut self, value: TrapValue) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #34537 [INFO] [stderr] [INFO] [stderr] warning: private type `TrapCause` in public interface (error E0446) [INFO] [stderr] --> src/hart/csr.rs:164:5 [INFO] [stderr] | [INFO] [stderr] 164 | pub fn set(&mut self, cause: TrapCause) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #34537 [INFO] [stderr] [INFO] [stderr] warning: private type `TrapCause` in public interface (error E0446) [INFO] [stderr] --> src/hart/csr.rs:218:5 [INFO] [stderr] | [INFO] [stderr] 218 | pub fn is_delegated(&self, trap: TrapCause) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #34537 [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Hart` [INFO] [stderr] --> src/hart.rs:9:12 [INFO] [stderr] | [INFO] [stderr] 9 | pub struct Hart { [INFO] [stderr] | ^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(dead_code)]` on by default [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `User` [INFO] [stderr] --> src/hart.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | User = 0b00, [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `PrivilegeLevel` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/hart.rs:25:10 [INFO] [stderr] | [INFO] [stderr] 25 | #[derive(Clone, Copy, PartialEq, Eq)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Supervisor` [INFO] [stderr] --> src/hart.rs:30:5 [INFO] [stderr] | [INFO] [stderr] 30 | Supervisor = 0b01, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `PrivilegeLevel` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/hart.rs:25:10 [INFO] [stderr] | [INFO] [stderr] 25 | #[derive(Clone, Copy, PartialEq, Eq)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Machine` [INFO] [stderr] --> src/hart.rs:32:5 [INFO] [stderr] | [INFO] [stderr] 32 | Machine = 0b11, [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `PrivilegeLevel` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/hart.rs:25:10 [INFO] [stderr] | [INFO] [stderr] 25 | #[derive(Clone, Copy, PartialEq, Eq)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `UserSoftwareInterrupt` [INFO] [stderr] --> src/hart.rs:40:5 [INFO] [stderr] | [INFO] [stderr] 40 | UserSoftwareInterrupt = Self::interrupt(0), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/hart.rs:37:10 [INFO] [stderr] | [INFO] [stderr] 37 | #[derive(Clone, Copy)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `SupervisorSoftwareInterrupt` [INFO] [stderr] --> src/hart.rs:41:5 [INFO] [stderr] | [INFO] [stderr] 41 | SupervisorSoftwareInterrupt = Self::interrupt(1), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/hart.rs:37:10 [INFO] [stderr] | [INFO] [stderr] 37 | #[derive(Clone, Copy)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `MachineSoftwareInterrupt` [INFO] [stderr] --> src/hart.rs:42:5 [INFO] [stderr] | [INFO] [stderr] 42 | MachineSoftwareInterrupt = Self::interrupt(2), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/hart.rs:37:10 [INFO] [stderr] | [INFO] [stderr] 37 | #[derive(Clone, Copy)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `UserTimerInterrupt` [INFO] [stderr] --> src/hart.rs:43:5 [INFO] [stderr] | [INFO] [stderr] 43 | UserTimerInterrupt = Self::interrupt(4), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/hart.rs:37:10 [INFO] [stderr] | [INFO] [stderr] 37 | #[derive(Clone, Copy)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `SupervisorTimerInterrupt` [INFO] [stderr] --> src/hart.rs:44:5 [INFO] [stderr] | [INFO] [stderr] 44 | SupervisorTimerInterrupt = Self::interrupt(5), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/hart.rs:37:10 [INFO] [stderr] | [INFO] [stderr] 37 | #[derive(Clone, Copy)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `MachineTimerInterrupt` [INFO] [stderr] --> src/hart.rs:45:5 [INFO] [stderr] | [INFO] [stderr] 45 | MachineTimerInterrupt = Self::interrupt(7), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/hart.rs:37:10 [INFO] [stderr] | [INFO] [stderr] 37 | #[derive(Clone, Copy)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `UserExternalInterrupt` [INFO] [stderr] --> src/hart.rs:46:5 [INFO] [stderr] | [INFO] [stderr] 46 | UserExternalInterrupt = Self::interrupt(8), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/hart.rs:37:10 [INFO] [stderr] | [INFO] [stderr] 37 | #[derive(Clone, Copy)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `SupervisorExternalInterrupt` [INFO] [stderr] --> src/hart.rs:47:5 [INFO] [stderr] | [INFO] [stderr] 47 | SupervisorExternalInterrupt = Self::interrupt(9), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/hart.rs:37:10 [INFO] [stderr] | [INFO] [stderr] 37 | #[derive(Clone, Copy)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `MachineExternalInterrupt` [INFO] [stderr] --> src/hart.rs:48:5 [INFO] [stderr] | [INFO] [stderr] 48 | MachineExternalInterrupt = Self::interrupt(11), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/hart.rs:37:10 [INFO] [stderr] | [INFO] [stderr] 37 | #[derive(Clone, Copy)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `InstructionAddressMisaligned` [INFO] [stderr] --> src/hart.rs:51:5 [INFO] [stderr] | [INFO] [stderr] 51 | InstructionAddressMisaligned = Self::exception(0), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/hart.rs:37:10 [INFO] [stderr] | [INFO] [stderr] 37 | #[derive(Clone, Copy)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `InstructionAccessFault` [INFO] [stderr] --> src/hart.rs:52:5 [INFO] [stderr] | [INFO] [stderr] 52 | InstructionAccessFault = Self::exception(1), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/hart.rs:37:10 [INFO] [stderr] | [INFO] [stderr] 37 | #[derive(Clone, Copy)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `IllegalInstruction` [INFO] [stderr] --> src/hart.rs:53:5 [INFO] [stderr] | [INFO] [stderr] 53 | IllegalInstruction = Self::exception(2), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/hart.rs:37:10 [INFO] [stderr] | [INFO] [stderr] 37 | #[derive(Clone, Copy)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `Breakpoint` [INFO] [stderr] --> src/hart.rs:54:5 [INFO] [stderr] | [INFO] [stderr] 54 | Breakpoint = Self::exception(3), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/hart.rs:37:10 [INFO] [stderr] | [INFO] [stderr] 37 | #[derive(Clone, Copy)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `LoadAddressMisaligned` [INFO] [stderr] --> src/hart.rs:55:5 [INFO] [stderr] | [INFO] [stderr] 55 | LoadAddressMisaligned = Self::exception(4), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/hart.rs:37:10 [INFO] [stderr] | [INFO] [stderr] 37 | #[derive(Clone, Copy)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `LoadAccessFault` [INFO] [stderr] --> src/hart.rs:56:5 [INFO] [stderr] | [INFO] [stderr] 56 | LoadAccessFault = Self::exception(5), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/hart.rs:37:10 [INFO] [stderr] | [INFO] [stderr] 37 | #[derive(Clone, Copy)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `StoreAmoAddressMisaligned` [INFO] [stderr] --> src/hart.rs:57:5 [INFO] [stderr] | [INFO] [stderr] 57 | StoreAmoAddressMisaligned = Self::exception(6), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/hart.rs:37:10 [INFO] [stderr] | [INFO] [stderr] 37 | #[derive(Clone, Copy)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `StoreAmoAccessFault` [INFO] [stderr] --> src/hart.rs:58:5 [INFO] [stderr] | [INFO] [stderr] 58 | StoreAmoAccessFault = Self::exception(7), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/hart.rs:37:10 [INFO] [stderr] | [INFO] [stderr] 37 | #[derive(Clone, Copy)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `EnvironmentCallFromUMode` [INFO] [stderr] --> src/hart.rs:59:5 [INFO] [stderr] | [INFO] [stderr] 59 | EnvironmentCallFromUMode = Self::exception(8), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/hart.rs:37:10 [INFO] [stderr] | [INFO] [stderr] 37 | #[derive(Clone, Copy)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `EnvironmentCallFromSMode` [INFO] [stderr] --> src/hart.rs:60:5 [INFO] [stderr] | [INFO] [stderr] 60 | EnvironmentCallFromSMode = Self::exception(9), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/hart.rs:37:10 [INFO] [stderr] | [INFO] [stderr] 37 | #[derive(Clone, Copy)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `EnvironmentCallFromMMode` [INFO] [stderr] --> src/hart.rs:61:5 [INFO] [stderr] | [INFO] [stderr] 61 | EnvironmentCallFromMMode = Self::exception(11), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/hart.rs:37:10 [INFO] [stderr] | [INFO] [stderr] 37 | #[derive(Clone, Copy)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `InstructionPageFault` [INFO] [stderr] --> src/hart.rs:62:5 [INFO] [stderr] | [INFO] [stderr] 62 | InstructionPageFault = Self::exception(12), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/hart.rs:37:10 [INFO] [stderr] | [INFO] [stderr] 37 | #[derive(Clone, Copy)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `LoadPageFault` [INFO] [stderr] --> src/hart.rs:63:5 [INFO] [stderr] | [INFO] [stderr] 63 | LoadPageFault = Self::exception(13), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/hart.rs:37:10 [INFO] [stderr] | [INFO] [stderr] 37 | #[derive(Clone, Copy)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: variant is never constructed: `StoreAmoPageFault` [INFO] [stderr] --> src/hart.rs:64:5 [INFO] [stderr] | [INFO] [stderr] 64 | StoreAmoPageFault = Self::exception(15), [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] note: `TrapCause` has a derived impl for the trait `Clone`, but this is intentionally ignored during dead code analysis [INFO] [stderr] --> src/hart.rs:37:10 [INFO] [stderr] | [INFO] [stderr] 37 | #[derive(Clone, Copy)] [INFO] [stderr] | ^^^^^ [INFO] [stderr] = note: this warning originates in the derive macro `Clone` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `TrapValue` [INFO] [stderr] --> src/hart.rs:68:8 [INFO] [stderr] | [INFO] [stderr] 68 | struct TrapValue(u64); [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `InvalidCsr` [INFO] [stderr] --> src/hart.rs:71:8 [INFO] [stderr] | [INFO] [stderr] 71 | struct InvalidCsr; [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/hart.rs:75:12 [INFO] [stderr] | [INFO] [stderr] 75 | pub fn new(bus: B) -> Hart { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `execute` [INFO] [stderr] --> src/hart.rs:113:12 [INFO] [stderr] | [INFO] [stderr] 113 | pub fn execute(&mut self) [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `csr` [INFO] [stderr] --> src/hart.rs:204:8 [INFO] [stderr] | [INFO] [stderr] 204 | fn csr(&mut self, address: CsrAddress, f: impl FnOnce(u64) -> u64) -> Result { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `trap` [INFO] [stderr] --> src/hart.rs:236:8 [INFO] [stderr] | [INFO] [stderr] 236 | fn trap(&mut self, cause: TrapCause, value: TrapValue) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `handle_trap_machine` [INFO] [stderr] --> src/hart.rs:252:8 [INFO] [stderr] | [INFO] [stderr] 252 | fn handle_trap_machine(&mut self, cause: TrapCause, value: TrapValue) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `handle_trap_supervisor` [INFO] [stderr] --> src/hart.rs:262:8 [INFO] [stderr] | [INFO] [stderr] 262 | fn handle_trap_supervisor(&mut self, cause: TrapCause, value: TrapValue) { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `empty` [INFO] [stderr] --> src/hart.rs:286:18 [INFO] [stderr] | [INFO] [stderr] 286 | pub const fn empty() -> TrapValue { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/memory.rs:21:12 [INFO] [stderr] | [INFO] [stderr] 21 | pub fn new<'d>(data: &'d mut [u64]) -> &'d mut Memory { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `data` [INFO] [stderr] --> src/memory.rs:47:12 [INFO] [stderr] | [INFO] [stderr] 47 | pub fn data(&mut self) -> &mut [u8] { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `is_sufficient_privilege` [INFO] [stderr] --> src/hart/csr.rs:7:8 [INFO] [stderr] | [INFO] [stderr] 7 | pub fn is_sufficient_privilege(address: CsrAddress, privilege: PrivilegeLevel) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `is_read_only` [INFO] [stderr] --> src/hart/csr.rs:12:8 [INFO] [stderr] | [INFO] [stderr] 12 | pub fn is_read_only(address: CsrAddress) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated constant is never used: `SSTATUS` [INFO] [stderr] --> src/hart/csr.rs:21:5 [INFO] [stderr] | [INFO] [stderr] 21 | pub const SSTATUS: CsrAddress = CsrAddress::new(0x100); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated constant is never used: `MSTATUS` [INFO] [stderr] --> src/hart/csr.rs:22:5 [INFO] [stderr] | [INFO] [stderr] 22 | pub const MSTATUS: CsrAddress = CsrAddress::new(0x300); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated constant is never used: `MISA` [INFO] [stderr] --> src/hart/csr.rs:23:5 [INFO] [stderr] | [INFO] [stderr] 23 | pub const MISA: CsrAddress = CsrAddress::new(0x301); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated constant is never used: `MEDELEG` [INFO] [stderr] --> src/hart/csr.rs:24:5 [INFO] [stderr] | [INFO] [stderr] 24 | pub const MEDELEG: CsrAddress = CsrAddress::new(0x302); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated constant is never used: `SIE` [INFO] [stderr] --> src/hart/csr.rs:25:5 [INFO] [stderr] | [INFO] [stderr] 25 | pub const SIE: CsrAddress = CsrAddress::new(0x104); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated constant is never used: `MIE` [INFO] [stderr] --> src/hart/csr.rs:26:5 [INFO] [stderr] | [INFO] [stderr] 26 | pub const MIE: CsrAddress = CsrAddress::new(0x304); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated constant is never used: `STVEC` [INFO] [stderr] --> src/hart/csr.rs:27:5 [INFO] [stderr] | [INFO] [stderr] 27 | pub const STVEC: CsrAddress = CsrAddress::new(0x105); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated constant is never used: `MTVEC` [INFO] [stderr] --> src/hart/csr.rs:28:5 [INFO] [stderr] | [INFO] [stderr] 28 | pub const MTVEC: CsrAddress = CsrAddress::new(0x305); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated constant is never used: `SCOUNTEREN` [INFO] [stderr] --> src/hart/csr.rs:29:5 [INFO] [stderr] | [INFO] [stderr] 29 | pub const SCOUNTEREN: CsrAddress = CsrAddress::new(0x106); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated constant is never used: `MCOUNTEREN` [INFO] [stderr] --> src/hart/csr.rs:30:5 [INFO] [stderr] | [INFO] [stderr] 30 | pub const MCOUNTEREN: CsrAddress = CsrAddress::new(0x306); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated constant is never used: `SSCRATCH` [INFO] [stderr] --> src/hart/csr.rs:31:5 [INFO] [stderr] | [INFO] [stderr] 31 | pub const SSCRATCH: CsrAddress = CsrAddress::new(0x140); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated constant is never used: `MSCRATCH` [INFO] [stderr] --> src/hart/csr.rs:32:5 [INFO] [stderr] | [INFO] [stderr] 32 | pub const MSCRATCH: CsrAddress = CsrAddress::new(0x340); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated constant is never used: `SEPC` [INFO] [stderr] --> src/hart/csr.rs:33:5 [INFO] [stderr] | [INFO] [stderr] 33 | pub const SEPC: CsrAddress = CsrAddress::new(0x141); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated constant is never used: `MEPC` [INFO] [stderr] --> src/hart/csr.rs:34:5 [INFO] [stderr] | [INFO] [stderr] 34 | pub const MEPC: CsrAddress = CsrAddress::new(0x341); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated constant is never used: `SCAUSE` [INFO] [stderr] --> src/hart/csr.rs:35:5 [INFO] [stderr] | [INFO] [stderr] 35 | pub const SCAUSE: CsrAddress = CsrAddress::new(0x142); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated constant is never used: `MCAUSE` [INFO] [stderr] --> src/hart/csr.rs:36:5 [INFO] [stderr] | [INFO] [stderr] 36 | pub const MCAUSE: CsrAddress = CsrAddress::new(0x342); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated constant is never used: `STVAL` [INFO] [stderr] --> src/hart/csr.rs:37:5 [INFO] [stderr] | [INFO] [stderr] 37 | pub const STVAL: CsrAddress = CsrAddress::new(0x143); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated constant is never used: `MTVAL` [INFO] [stderr] --> src/hart/csr.rs:38:5 [INFO] [stderr] | [INFO] [stderr] 38 | pub const MTVAL: CsrAddress = CsrAddress::new(0x343); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated constant is never used: `SIP` [INFO] [stderr] --> src/hart/csr.rs:39:5 [INFO] [stderr] | [INFO] [stderr] 39 | pub const SIP: CsrAddress = CsrAddress::new(0x144); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated constant is never used: `MIP` [INFO] [stderr] --> src/hart/csr.rs:40:5 [INFO] [stderr] | [INFO] [stderr] 40 | pub const MIP: CsrAddress = CsrAddress::new(0x344); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated constant is never used: `SATP` [INFO] [stderr] --> src/hart/csr.rs:41:5 [INFO] [stderr] | [INFO] [stderr] 41 | pub const SATP: CsrAddress = CsrAddress::new(0x180); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated constant is never used: `MVENDORID` [INFO] [stderr] --> src/hart/csr.rs:42:5 [INFO] [stderr] | [INFO] [stderr] 42 | pub const MVENDORID: CsrAddress = CsrAddress::new(0xF11); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated constant is never used: `MARCHID` [INFO] [stderr] --> src/hart/csr.rs:43:5 [INFO] [stderr] | [INFO] [stderr] 43 | pub const MARCHID: CsrAddress = CsrAddress::new(0xF12); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated constant is never used: `MIMPID` [INFO] [stderr] --> src/hart/csr.rs:44:5 [INFO] [stderr] | [INFO] [stderr] 44 | pub const MIMPID: CsrAddress = CsrAddress::new(0xF13); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated constant is never used: `MHARTID` [INFO] [stderr] --> src/hart/csr.rs:45:5 [INFO] [stderr] | [INFO] [stderr] 45 | pub const MHARTID: CsrAddress = CsrAddress::new(0xF14); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new` [INFO] [stderr] --> src/hart/csr.rs:48:18 [INFO] [stderr] | [INFO] [stderr] 48 | pub const fn new(address: u16) -> CsrAddress { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new_unchecked` [INFO] [stderr] --> src/hart/csr.rs:61:25 [INFO] [stderr] | [INFO] [stderr] 61 | pub const unsafe fn new_unchecked(address: u16) -> CsrAddress { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `inner` [INFO] [stderr] --> src/hart/csr.rs:65:18 [INFO] [stderr] | [INFO] [stderr] 65 | pub const fn inner(self) -> u16 { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Csr` [INFO] [stderr] --> src/hart/csr.rs:70:12 [INFO] [stderr] | [INFO] [stderr] 70 | pub struct Csr { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `ReadOnly` [INFO] [stderr] --> src/hart/csr.rs:95:12 [INFO] [stderr] | [INFO] [stderr] 95 | pub struct ReadOnly(pub u64); [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `access` [INFO] [stderr] --> src/hart/csr.rs:98:12 [INFO] [stderr] | [INFO] [stderr] 98 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `set` [INFO] [stderr] --> src/hart/csr.rs:103:12 [INFO] [stderr] | [INFO] [stderr] 103 | pub fn set(&mut self, value: u64) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Ip` [INFO] [stderr] --> src/hart/csr.rs:108:12 [INFO] [stderr] | [INFO] [stderr] 108 | pub struct Ip(pub u64); [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `access` [INFO] [stderr] --> src/hart/csr.rs:111:12 [INFO] [stderr] | [INFO] [stderr] 111 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `is_pending` [INFO] [stderr] --> src/hart/csr.rs:117:12 [INFO] [stderr] | [INFO] [stderr] 117 | pub fn is_pending(&self, interrupt: TrapCause) -> bool { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `set_pending` [INFO] [stderr] --> src/hart/csr.rs:121:12 [INFO] [stderr] | [INFO] [stderr] 121 | pub fn set_pending(&mut self, interrupt: TrapCause, value: bool) { [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Ie` [INFO] [stderr] --> src/hart/csr.rs:128:12 [INFO] [stderr] | [INFO] [stderr] 128 | pub struct Ie(pub u64); [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `access` [INFO] [stderr] --> src/hart/csr.rs:131:12 [INFO] [stderr] | [INFO] [stderr] 131 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `is_enabled` [INFO] [stderr] --> src/hart/csr.rs:137:12 [INFO] [stderr] | [INFO] [stderr] 137 | pub fn is_enabled(&self, interrupt: TrapCause) -> bool { [INFO] [stderr] | ^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Tval` [INFO] [stderr] --> src/hart/csr.rs:142:12 [INFO] [stderr] | [INFO] [stderr] 142 | pub struct Tval(pub u64); [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `access` [INFO] [stderr] --> src/hart/csr.rs:145:12 [INFO] [stderr] | [INFO] [stderr] 145 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `set` [INFO] [stderr] --> src/hart/csr.rs:150:12 [INFO] [stderr] | [INFO] [stderr] 150 | pub fn set(&mut self, value: TrapValue) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Cause` [INFO] [stderr] --> src/hart/csr.rs:155:12 [INFO] [stderr] | [INFO] [stderr] 155 | pub struct Cause(pub u64); [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `access` [INFO] [stderr] --> src/hart/csr.rs:158:12 [INFO] [stderr] | [INFO] [stderr] 158 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `set` [INFO] [stderr] --> src/hart/csr.rs:164:12 [INFO] [stderr] | [INFO] [stderr] 164 | pub fn set(&mut self, cause: TrapCause) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Epc` [INFO] [stderr] --> src/hart/csr.rs:169:12 [INFO] [stderr] | [INFO] [stderr] 169 | pub struct Epc(pub u64); [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `access` [INFO] [stderr] --> src/hart/csr.rs:172:12 [INFO] [stderr] | [INFO] [stderr] 172 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `set` [INFO] [stderr] --> src/hart/csr.rs:177:12 [INFO] [stderr] | [INFO] [stderr] 177 | pub fn set(&mut self, epc: u64) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Scratch` [INFO] [stderr] --> src/hart/csr.rs:182:12 [INFO] [stderr] | [INFO] [stderr] 182 | pub struct Scratch(pub u64); [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `access` [INFO] [stderr] --> src/hart/csr.rs:185:12 [INFO] [stderr] | [INFO] [stderr] 185 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Tvec` [INFO] [stderr] --> src/hart/csr.rs:191:12 [INFO] [stderr] | [INFO] [stderr] 191 | pub struct Tvec(pub u64); [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `access` [INFO] [stderr] --> src/hart/csr.rs:194:12 [INFO] [stderr] | [INFO] [stderr] 194 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `mode` [INFO] [stderr] --> src/hart/csr.rs:200:12 [INFO] [stderr] | [INFO] [stderr] 200 | pub fn mode(&self) -> u64 { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `base` [INFO] [stderr] --> src/hart/csr.rs:204:12 [INFO] [stderr] | [INFO] [stderr] 204 | pub fn base(&self) -> u64 { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Deleg` [INFO] [stderr] --> src/hart/csr.rs:209:12 [INFO] [stderr] | [INFO] [stderr] 209 | pub struct Deleg(pub u64); [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `access` [INFO] [stderr] --> src/hart/csr.rs:212:12 [INFO] [stderr] | [INFO] [stderr] 212 | pub fn access(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `is_delegated` [INFO] [stderr] --> src/hart/csr.rs:218:12 [INFO] [stderr] | [INFO] [stderr] 218 | pub fn is_delegated(&self, trap: TrapCause) -> bool { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: struct is never constructed: `Status` [INFO] [stderr] --> src/hart/csr.rs:223:12 [INFO] [stderr] | [INFO] [stderr] 223 | pub struct Status(pub u64); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated constant is never used: `M_WRITE_MASK` [INFO] [stderr] --> src/hart/csr.rs:226:5 [INFO] [stderr] | [INFO] [stderr] 226 | / const M_WRITE_MASK: u64 = 0b1 << 1 [INFO] [stderr] 227 | | | 0b1 << 3 [INFO] [stderr] 228 | | | 0b1 << 5 [INFO] [stderr] 229 | | | 0b1 << 7 [INFO] [stderr] ... | [INFO] [stderr] 235 | | | 0b1 << 21 [INFO] [stderr] 236 | | | 0b1 << 22; [INFO] [stderr] | |____________________^ [INFO] [stderr] [INFO] [stderr] warning: associated constant is never used: `S_WRITE_MASK` [INFO] [stderr] --> src/hart/csr.rs:237:5 [INFO] [stderr] | [INFO] [stderr] 237 | / const S_WRITE_MASK: u64 = 0b1 << 1 [INFO] [stderr] 238 | | | 0b1 << 5 [INFO] [stderr] 239 | | | 0b1 << 8 [INFO] [stderr] 240 | | | 0b1 << 18 [INFO] [stderr] 241 | | | 0b1 << 19; [INFO] [stderr] | |____________________^ [INFO] [stderr] [INFO] [stderr] warning: associated constant is never used: `S_READ_MASK` [INFO] [stderr] --> src/hart/csr.rs:242:5 [INFO] [stderr] | [INFO] [stderr] 242 | const S_READ_MASK: u64 = Self::S_WRITE_MASK; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `access_mstatus` [INFO] [stderr] --> src/hart/csr.rs:244:12 [INFO] [stderr] | [INFO] [stderr] 244 | pub fn access_mstatus(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `access_sstatus` [INFO] [stderr] --> src/hart/csr.rs:249:12 [INFO] [stderr] | [INFO] [stderr] 249 | pub fn access_sstatus(&mut self, f: impl FnOnce(u64) -> u64) -> u64 { [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `sie` [INFO] [stderr] --> src/hart/csr.rs:255:12 [INFO] [stderr] | [INFO] [stderr] 255 | pub fn sie(&self) -> u64 { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `mie` [INFO] [stderr] --> src/hart/csr.rs:260:12 [INFO] [stderr] | [INFO] [stderr] 260 | pub fn mie(&self) -> u64 { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `spie` [INFO] [stderr] --> src/hart/csr.rs:265:12 [INFO] [stderr] | [INFO] [stderr] 265 | pub fn spie(&self) -> u64 { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `ube` [INFO] [stderr] --> src/hart/csr.rs:270:12 [INFO] [stderr] | [INFO] [stderr] 270 | pub fn ube(&self) -> u64 { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `mpie` [INFO] [stderr] --> src/hart/csr.rs:275:12 [INFO] [stderr] | [INFO] [stderr] 275 | pub fn mpie(&self) -> u64 { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `spp` [INFO] [stderr] --> src/hart/csr.rs:280:12 [INFO] [stderr] | [INFO] [stderr] 280 | pub fn spp(&self) -> u64 { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `vs` [INFO] [stderr] --> src/hart/csr.rs:285:12 [INFO] [stderr] | [INFO] [stderr] 285 | pub fn vs(&self) -> u64 { [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `mpp` [INFO] [stderr] --> src/hart/csr.rs:290:12 [INFO] [stderr] | [INFO] [stderr] 290 | pub fn mpp(&self) -> u64 { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `fs` [INFO] [stderr] --> src/hart/csr.rs:295:12 [INFO] [stderr] | [INFO] [stderr] 295 | pub fn fs(&self) -> u64 { [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `xs` [INFO] [stderr] --> src/hart/csr.rs:300:12 [INFO] [stderr] | [INFO] [stderr] 300 | pub fn xs(&self) -> u64 { [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `mprv` [INFO] [stderr] --> src/hart/csr.rs:305:12 [INFO] [stderr] | [INFO] [stderr] 305 | pub fn mprv(&self) -> u64 { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `sum` [INFO] [stderr] --> src/hart/csr.rs:310:12 [INFO] [stderr] | [INFO] [stderr] 310 | pub fn sum(&self) -> u64 { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `mxr` [INFO] [stderr] --> src/hart/csr.rs:315:12 [INFO] [stderr] | [INFO] [stderr] 315 | pub fn mxr(&self) -> u64 { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `tvm` [INFO] [stderr] --> src/hart/csr.rs:320:12 [INFO] [stderr] | [INFO] [stderr] 320 | pub fn tvm(&self) -> u64 { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `tw` [INFO] [stderr] --> src/hart/csr.rs:325:12 [INFO] [stderr] | [INFO] [stderr] 325 | pub fn tw(&self) -> u64 { [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `tsr` [INFO] [stderr] --> src/hart/csr.rs:330:12 [INFO] [stderr] | [INFO] [stderr] 330 | pub fn tsr(&self) -> u64 { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `uxl` [INFO] [stderr] --> src/hart/csr.rs:335:12 [INFO] [stderr] | [INFO] [stderr] 335 | pub fn uxl(&self) -> u64 { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `sxl` [INFO] [stderr] --> src/hart/csr.rs:340:12 [INFO] [stderr] | [INFO] [stderr] 340 | pub fn sxl(&self) -> u64 { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `sbe` [INFO] [stderr] --> src/hart/csr.rs:345:12 [INFO] [stderr] | [INFO] [stderr] 345 | pub fn sbe(&self) -> u64 { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `mbe` [INFO] [stderr] --> src/hart/csr.rs:350:12 [INFO] [stderr] | [INFO] [stderr] 350 | pub fn mbe(&self) -> u64 { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `sd` [INFO] [stderr] --> src/hart/csr.rs:355:12 [INFO] [stderr] | [INFO] [stderr] 355 | pub fn sd(&self) -> u64 { [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `lui` [INFO] [stderr] --> src/hart/instruction.rs:18:8 [INFO] [stderr] | [INFO] [stderr] 18 | pub fn lui(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `auipc` [INFO] [stderr] --> src/hart/instruction.rs:22:8 [INFO] [stderr] | [INFO] [stderr] 22 | pub fn auipc(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `jal` [INFO] [stderr] --> src/hart/instruction.rs:26:8 [INFO] [stderr] | [INFO] [stderr] 26 | pub fn jal(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `jalr` [INFO] [stderr] --> src/hart/instruction.rs:37:8 [INFO] [stderr] | [INFO] [stderr] 37 | pub fn jalr(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `beq` [INFO] [stderr] --> src/hart/instruction.rs:48:8 [INFO] [stderr] | [INFO] [stderr] 48 | pub fn beq(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `bne` [INFO] [stderr] --> src/hart/instruction.rs:52:8 [INFO] [stderr] | [INFO] [stderr] 52 | pub fn bne(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `blt` [INFO] [stderr] --> src/hart/instruction.rs:56:8 [INFO] [stderr] | [INFO] [stderr] 56 | pub fn blt(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `bge` [INFO] [stderr] --> src/hart/instruction.rs:64:8 [INFO] [stderr] | [INFO] [stderr] 64 | pub fn bge(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `bltu` [INFO] [stderr] --> src/hart/instruction.rs:72:8 [INFO] [stderr] | [INFO] [stderr] 72 | pub fn bltu(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `bgeu` [INFO] [stderr] --> src/hart/instruction.rs:76:8 [INFO] [stderr] | [INFO] [stderr] 76 | pub fn bgeu(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `branch` [INFO] [stderr] --> src/hart/instruction.rs:81:4 [INFO] [stderr] | [INFO] [stderr] 81 | fn branch(hart: &mut Hart, raw: u32, condition: bool) { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `l` [INFO] [stderr] --> src/hart/instruction.rs:94:4 [INFO] [stderr] | [INFO] [stderr] 94 | fn l>(hart: &mut Hart, raw: u32, convert: impl FnOnce(T) -> u64) { [INFO] [stderr] | ^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `lb` [INFO] [stderr] --> src/hart/instruction.rs:106:8 [INFO] [stderr] | [INFO] [stderr] 106 | pub fn lb>(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `lh` [INFO] [stderr] --> src/hart/instruction.rs:110:8 [INFO] [stderr] | [INFO] [stderr] 110 | pub fn lh>(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `lw` [INFO] [stderr] --> src/hart/instruction.rs:114:8 [INFO] [stderr] | [INFO] [stderr] 114 | pub fn lw>(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `ld` [INFO] [stderr] --> src/hart/instruction.rs:118:8 [INFO] [stderr] | [INFO] [stderr] 118 | pub fn ld>(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `lbu` [INFO] [stderr] --> src/hart/instruction.rs:122:8 [INFO] [stderr] | [INFO] [stderr] 122 | pub fn lbu>(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `lhu` [INFO] [stderr] --> src/hart/instruction.rs:126:8 [INFO] [stderr] | [INFO] [stderr] 126 | pub fn lhu>(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `lwu` [INFO] [stderr] --> src/hart/instruction.rs:130:8 [INFO] [stderr] | [INFO] [stderr] 130 | pub fn lwu>(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `s` [INFO] [stderr] --> src/hart/instruction.rs:135:4 [INFO] [stderr] | [INFO] [stderr] 135 | fn s>(hart: &mut Hart, raw: u32, convert: impl FnOnce(u64) -> T) { [INFO] [stderr] | ^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `sb` [INFO] [stderr] --> src/hart/instruction.rs:148:8 [INFO] [stderr] | [INFO] [stderr] 148 | pub fn sb>(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `sh` [INFO] [stderr] --> src/hart/instruction.rs:152:8 [INFO] [stderr] | [INFO] [stderr] 152 | pub fn sh>(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `sw` [INFO] [stderr] --> src/hart/instruction.rs:156:8 [INFO] [stderr] | [INFO] [stderr] 156 | pub fn sw>(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `sd` [INFO] [stderr] --> src/hart/instruction.rs:160:8 [INFO] [stderr] | [INFO] [stderr] 160 | pub fn sd>(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `addi` [INFO] [stderr] --> src/hart/instruction.rs:164:8 [INFO] [stderr] | [INFO] [stderr] 164 | pub fn addi(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `addiw` [INFO] [stderr] --> src/hart/instruction.rs:168:8 [INFO] [stderr] | [INFO] [stderr] 168 | pub fn addiw(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `slti` [INFO] [stderr] --> src/hart/instruction.rs:172:8 [INFO] [stderr] | [INFO] [stderr] 172 | pub fn slti(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `sltiu` [INFO] [stderr] --> src/hart/instruction.rs:176:8 [INFO] [stderr] | [INFO] [stderr] 176 | pub fn sltiu(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `xori` [INFO] [stderr] --> src/hart/instruction.rs:180:8 [INFO] [stderr] | [INFO] [stderr] 180 | pub fn xori(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `ori` [INFO] [stderr] --> src/hart/instruction.rs:184:8 [INFO] [stderr] | [INFO] [stderr] 184 | pub fn ori(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `andi` [INFO] [stderr] --> src/hart/instruction.rs:188:8 [INFO] [stderr] | [INFO] [stderr] 188 | pub fn andi(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `slli` [INFO] [stderr] --> src/hart/instruction.rs:192:8 [INFO] [stderr] | [INFO] [stderr] 192 | pub fn slli(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `srxi` [INFO] [stderr] --> src/hart/instruction.rs:196:8 [INFO] [stderr] | [INFO] [stderr] 196 | pub fn srxi(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `slliw` [INFO] [stderr] --> src/hart/instruction.rs:206:8 [INFO] [stderr] | [INFO] [stderr] 206 | pub fn slliw(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `srxiw` [INFO] [stderr] --> src/hart/instruction.rs:210:8 [INFO] [stderr] | [INFO] [stderr] 210 | pub fn srxiw(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `add_sub` [INFO] [stderr] --> src/hart/instruction.rs:220:8 [INFO] [stderr] | [INFO] [stderr] 220 | pub fn add_sub(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `addw_subw` [INFO] [stderr] --> src/hart/instruction.rs:230:8 [INFO] [stderr] | [INFO] [stderr] 230 | pub fn addw_subw(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `sll` [INFO] [stderr] --> src/hart/instruction.rs:242:8 [INFO] [stderr] | [INFO] [stderr] 242 | pub fn sll(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `slt` [INFO] [stderr] --> src/hart/instruction.rs:246:8 [INFO] [stderr] | [INFO] [stderr] 246 | pub fn slt(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `sltu` [INFO] [stderr] --> src/hart/instruction.rs:250:8 [INFO] [stderr] | [INFO] [stderr] 250 | pub fn sltu(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `xor` [INFO] [stderr] --> src/hart/instruction.rs:254:8 [INFO] [stderr] | [INFO] [stderr] 254 | pub fn xor(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `srx` [INFO] [stderr] --> src/hart/instruction.rs:258:8 [INFO] [stderr] | [INFO] [stderr] 258 | pub fn srx(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `or` [INFO] [stderr] --> src/hart/instruction.rs:269:8 [INFO] [stderr] | [INFO] [stderr] 269 | pub fn or(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `and` [INFO] [stderr] --> src/hart/instruction.rs:273:8 [INFO] [stderr] | [INFO] [stderr] 273 | pub fn and(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `sllw` [INFO] [stderr] --> src/hart/instruction.rs:277:8 [INFO] [stderr] | [INFO] [stderr] 277 | pub fn sllw(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `srxw` [INFO] [stderr] --> src/hart/instruction.rs:282:8 [INFO] [stderr] | [INFO] [stderr] 282 | pub fn srxw(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `fence` [INFO] [stderr] --> src/hart/instruction.rs:294:8 [INFO] [stderr] | [INFO] [stderr] 294 | pub fn fence(_hart: &mut Hart, _raw: u32) {} [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `ecall_ebreak` [INFO] [stderr] --> src/hart/instruction.rs:296:8 [INFO] [stderr] | [INFO] [stderr] 296 | pub fn ecall_ebreak(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `csrrw` [INFO] [stderr] --> src/hart/instruction.rs:310:8 [INFO] [stderr] | [INFO] [stderr] 310 | pub fn csrrw(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `csrrs` [INFO] [stderr] --> src/hart/instruction.rs:328:8 [INFO] [stderr] | [INFO] [stderr] 328 | pub fn csrrs(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `csrrc` [INFO] [stderr] --> src/hart/instruction.rs:348:8 [INFO] [stderr] | [INFO] [stderr] 348 | pub fn csrrc(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `csrrwi` [INFO] [stderr] --> src/hart/instruction.rs:368:8 [INFO] [stderr] | [INFO] [stderr] 368 | pub fn csrrwi(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `csrrsi` [INFO] [stderr] --> src/hart/instruction.rs:383:8 [INFO] [stderr] | [INFO] [stderr] 383 | pub fn csrrsi(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `csrrci` [INFO] [stderr] --> src/hart/instruction.rs:400:8 [INFO] [stderr] | [INFO] [stderr] 400 | pub fn csrrci(hart: &mut Hart, raw: u32) { [INFO] [stderr] | ^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `rd` [INFO] [stderr] --> src/hart/instruction.rs:419:10 [INFO] [stderr] | [INFO] [stderr] 419 | const fn rd(raw: u32) -> RegisterIndex { [INFO] [stderr] | ^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `rs1` [INFO] [stderr] --> src/hart/instruction.rs:427:10 [INFO] [stderr] | [INFO] [stderr] 427 | const fn rs1(raw: u32) -> RegisterIndex { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `rs2` [INFO] [stderr] --> src/hart/instruction.rs:435:10 [INFO] [stderr] | [INFO] [stderr] 435 | const fn rs2(raw: u32) -> RegisterIndex { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `i_imm` [INFO] [stderr] --> src/hart/instruction.rs:443:10 [INFO] [stderr] | [INFO] [stderr] 443 | const fn i_imm(raw: u32) -> i32 { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `s_imm` [INFO] [stderr] --> src/hart/instruction.rs:449:10 [INFO] [stderr] | [INFO] [stderr] 449 | const fn s_imm(raw: u32) -> i32 { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `b_imm` [INFO] [stderr] --> src/hart/instruction.rs:458:10 [INFO] [stderr] | [INFO] [stderr] 458 | const fn b_imm(raw: u32) -> i32 { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `u_imm` [INFO] [stderr] --> src/hart/instruction.rs:469:10 [INFO] [stderr] | [INFO] [stderr] 469 | const fn u_imm(raw: u32) -> i32 { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `j_imm` [INFO] [stderr] --> src/hart/instruction.rs:476:10 [INFO] [stderr] | [INFO] [stderr] 476 | const fn j_imm(raw: u32) -> i32 { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `shamt` [INFO] [stderr] --> src/hart/instruction.rs:485:10 [INFO] [stderr] | [INFO] [stderr] 485 | const fn shamt(raw: u32) -> u32 { [INFO] [stderr] | ^^^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `csr` [INFO] [stderr] --> src/hart/instruction.rs:491:4 [INFO] [stderr] | [INFO] [stderr] 491 | fn csr(raw: u32) -> CsrAddress { [INFO] [stderr] | ^^^ [INFO] [stderr] [INFO] [stderr] warning: function is never used: `uimm` [INFO] [stderr] --> src/hart/instruction.rs:499:10 [INFO] [stderr] | [INFO] [stderr] 499 | const fn uimm(raw: u32) -> u32 { [INFO] [stderr] | ^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated constant is never used: `X0` [INFO] [stderr] --> src/hart/instruction.rs:523:5 [INFO] [stderr] | [INFO] [stderr] 523 | pub const X0: RegisterIndex = RegisterIndex(0); [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: associated function is never used: `new_unchecked` [INFO] [stderr] --> src/hart/instruction.rs:530:25 [INFO] [stderr] | [INFO] [stderr] 530 | pub const unsafe fn new_unchecked(index: usize) -> RegisterIndex { [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stderr] [INFO] [stderr] warning: `irv` (lib) generated 197 warnings [INFO] [stdout] [INFO] [stderr] warning: `irv` (lib test) generated 197 warnings (197 duplicates) [INFO] [stdout] running 0 tests [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.06s [INFO] [stdout] [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/irv-7e866d618cb253e1) [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stderr] Doc-tests irv [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] running 0 tests [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "0a6201bb64bd9ab54b317b610ba866e0987761d230e0f77f88a9cd0da0189eff", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0a6201bb64bd9ab54b317b610ba866e0987761d230e0f77f88a9cd0da0189eff", kill_on_drop: false }` [INFO] [stdout] 0a6201bb64bd9ab54b317b610ba866e0987761d230e0f77f88a9cd0da0189eff