[INFO] cloning repository https://github.com/zargony/rusty64 [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/zargony/rusty64" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzargony%2Frusty64", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzargony%2Frusty64'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 91b9c5edd70a39085000e084cb232828288cbf35 [INFO] checking zargony/rusty64 against master#a609fb45efad59dfd459c76e50899be9f0583b5a for pr-80579 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fzargony%2Frusty64" "/workspace/builds/worker-5/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-5/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/zargony/rusty64 on toolchain a609fb45efad59dfd459c76e50899be9f0583b5a [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/zargony/rusty64 [INFO] finished tweaking git repo https://github.com/zargony/rusty64 [INFO] tweaked toml for git repo https://github.com/zargony/rusty64 written to /workspace/builds/worker-5/source/Cargo.toml [INFO] crate git repo https://github.com/zargony/rusty64 already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] error: the lock file /workspace/builds/worker-5/source/Cargo.lock needs to be updated but --locked was passed to prevent this [INFO] [stderr] If you want to try to generate the lock file without accessing the network, use the --offline flag. [INFO] the lockfile is outdated, regenerating it [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/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" "rustops/crates-build-env@sha256:b8eeb62f26c39b23691079a6cb6de528d8e88b4d71a8f6b1d30f8ba7d9c16de9" "/opt/rustwide/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "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] 878ddb2066dc330571db4219e9082931e76bc659f216793904987ea2d394c110 [INFO] running `Command { std: "docker" "start" "-a" "878ddb2066dc330571db4219e9082931e76bc659f216793904987ea2d394c110", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "878ddb2066dc330571db4219e9082931e76bc659f216793904987ea2d394c110", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "878ddb2066dc330571db4219e9082931e76bc659f216793904987ea2d394c110", kill_on_drop: false }` [INFO] [stdout] 878ddb2066dc330571db4219e9082931e76bc659f216793904987ea2d394c110 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:b8eeb62f26c39b23691079a6cb6de528d8e88b4d71a8f6b1d30f8ba7d9c16de9" "/opt/rustwide/cargo-home/bin/cargo" "+a609fb45efad59dfd459c76e50899be9f0583b5a" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 460cd90b385eb2ce19644d8d6d51c0b44151cbaec5b9a028f1eb7a2e555e1911 [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" "460cd90b385eb2ce19644d8d6d51c0b44151cbaec5b9a028f1eb7a2e555e1911", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.81 [INFO] [stderr] Compiling log v0.4.11 [INFO] [stderr] Checking cfg-if v0.1.10 [INFO] [stderr] Checking bitflags v0.3.3 [INFO] [stderr] Checking log v0.3.9 [INFO] [stderr] Checking memchr v0.1.11 [INFO] [stderr] Checking thread-id v2.0.0 [INFO] [stderr] Checking rand v0.4.6 [INFO] [stderr] Checking thread_local v0.2.7 [INFO] [stderr] Checking aho-corasick v0.5.3 [INFO] [stderr] Checking regex v0.1.80 [INFO] [stderr] Checking rand v0.3.23 [INFO] [stderr] Checking env_logger v0.3.5 [INFO] [stderr] Checking rusty64 v0.0.3 (/opt/rustwide/workdir) [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/cpu/mos6502/mod.rs:51:1 [INFO] [stdout] | [INFO] [stdout] 51 | / bitflags! { [INFO] [stdout] 52 | | /// The MOS6502 status flags [INFO] [stdout] 53 | | flags StatusFlags: u8 { [INFO] [stdout] 54 | | const CarryFlag = 1 << 0, // C [INFO] [stdout] ... | [INFO] [stdout] 62 | | } [INFO] [stdout] 63 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/cpu/mos6502/mod.rs:51:1 [INFO] [stdout] | [INFO] [stdout] 51 | / bitflags! { [INFO] [stdout] 52 | | /// The MOS6502 status flags [INFO] [stdout] 53 | | flags StatusFlags: u8 { [INFO] [stdout] 54 | | const CarryFlag = 1 << 0, // C [INFO] [stdout] ... | [INFO] [stdout] 62 | | } [INFO] [stdout] 63 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/mem/addressable.rs:84:13 [INFO] [stdout] | [INFO] [stdout] 84 | try!(write!(str, "{:02X}", self.mem.get(addr))); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/mem/addressable.rs:85:40 [INFO] [stdout] | [INFO] [stdout] 85 | if iter.peek().is_some() { try!(write!(str, " ")); } [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/mem/addressable.rs:19:26 [INFO] [stdout] | [INFO] [stdout] 19 | let mut val: T = mem::uninitialized(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/cpu/mos6502/mod.rs:51:1 [INFO] [stdout] | [INFO] [stdout] 51 | / bitflags! { [INFO] [stdout] 52 | | /// The MOS6502 status flags [INFO] [stdout] 53 | | flags StatusFlags: u8 { [INFO] [stdout] 54 | | const CarryFlag = 1 << 0, // C [INFO] [stdout] ... | [INFO] [stdout] 62 | | } [INFO] [stdout] 63 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(deprecated)]` on by default [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/cpu/mos6502/mod.rs:51:1 [INFO] [stdout] | [INFO] [stdout] 51 | / bitflags! { [INFO] [stdout] 52 | | /// The MOS6502 status flags [INFO] [stdout] 53 | | flags StatusFlags: u8 { [INFO] [stdout] 54 | | const CarryFlag = 1 << 0, // C [INFO] [stdout] ... | [INFO] [stdout] 62 | | } [INFO] [stdout] 63 | | } [INFO] [stdout] | |_^ [INFO] [stdout] | [INFO] [stdout] = note: this warning originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/mem/addressable.rs:84:13 [INFO] [stdout] | [INFO] [stdout] 84 | try!(write!(str, "{:02X}", self.mem.get(addr))); [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead [INFO] [stdout] --> src/mem/addressable.rs:85:40 [INFO] [stdout] | [INFO] [stdout] 85 | if iter.peek().is_some() { try!(write!(str, " ")); } [INFO] [stdout] | ^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: use of deprecated function `std::mem::uninitialized`: use `mem::MaybeUninit` instead [INFO] [stdout] --> src/mem/addressable.rs:19:26 [INFO] [stdout] | [INFO] [stdout] 19 | let mut val: T = mem::uninitialized(); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `offset` found for struct `Masked<{integer}>` in the current scope [INFO] [stdout] --> src/cpu/mos6502/mod.rs:272:43 [INFO] [stdout] | [INFO] [stdout] 272 | let addr = Masked(0x0100, 0xff00).offset(self.sp as i16 + 1); [INFO] [stdout] | ^^^^^^ method not found in `Masked<{integer}>` [INFO] [stdout] | [INFO] [stdout] ::: src/addr/masked.rs:19:1 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct Masked(pub T, pub T); [INFO] [stdout] | ----------------------------------- [INFO] [stdout] | | [INFO] [stdout] | method `offset` not found for this [INFO] [stdout] | doesn't satisfy `Masked<{integer}>: Address` [INFO] [stdout] | [INFO] [stdout] = note: the method `offset` exists but the following trait bounds were not satisfied: [INFO] [stdout] `{integer}: Maskable` [INFO] [stdout] which is required by `Masked<{integer}>: Address` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `offset` found for struct `Masked<{integer}>` in the current scope [INFO] [stdout] --> src/cpu/mos6502/mod.rs:279:43 [INFO] [stdout] | [INFO] [stdout] 279 | let addr = Masked(0x0100, 0xff00).offset(self.sp as i16 + 1); [INFO] [stdout] | ^^^^^^ method not found in `Masked<{integer}>` [INFO] [stdout] | [INFO] [stdout] ::: src/addr/masked.rs:19:1 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct Masked(pub T, pub T); [INFO] [stdout] | ----------------------------------- [INFO] [stdout] | | [INFO] [stdout] | method `offset` not found for this [INFO] [stdout] | doesn't satisfy `Masked<{integer}>: Address` [INFO] [stdout] | [INFO] [stdout] = note: the method `offset` exists but the following trait bounds were not satisfied: [INFO] [stdout] `{integer}: Maskable` [INFO] [stdout] which is required by `Masked<{integer}>: Address` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0275]: overflow evaluating the requirement `u16: Maskable` [INFO] [stdout] --> src/cpu/mos6502/operand.rs:39:68 [INFO] [stdout] | [INFO] [stdout] 39 | Operand::Indirect(addr) => cpu.mem.get_le(Masked(addr, 0xff00)), // simulating MSB-bug [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: required because of the requirements on the impl of `Address` for `Masked` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 3 previous errors; 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0275, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0275`. [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `map` found for struct `masked::Masked<{integer}>` in the current scope [INFO] [stdout] --> src/addr/masked.rs:145:43 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct Masked(pub T, pub T); [INFO] [stdout] | ----------------------------------- [INFO] [stdout] | | [INFO] [stdout] | method `map` not found for this [INFO] [stdout] | doesn't satisfy `masked::Masked<{integer}>: Iterator` [INFO] [stdout] ... [INFO] [stdout] 145 | assert_eq!(Masked(0x1234, 0xff00).map(|_| 0), 0x1200); [INFO] [stdout] | ^^^ method not found in `masked::Masked<{integer}>` [INFO] [stdout] | [INFO] [stdout] = note: the method `map` exists but the following trait bounds were not satisfied: [INFO] [stdout] `{integer}: Maskable` [INFO] [stdout] `masked::Masked<{integer}>: Iterator` [INFO] [stdout] which is required by `&mut masked::Masked<{integer}>: Iterator` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0600]: cannot apply unary operator `!` to type `masked::Masked` [INFO] [stdout] --> src/addr/masked.rs:159:20 [INFO] [stdout] | [INFO] [stdout] 159 | assert_eq!(!value, 0b1100001111000011); [INFO] [stdout] | ^^^^^^ cannot apply unary operator `!` [INFO] [stdout] | [INFO] [stdout] = note: an implementation of `std::ops::Not` might be missing for `masked::Masked` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0369]: no implementation for `masked::Masked & {integer}` [INFO] [stdout] --> src/addr/masked.rs:160:27 [INFO] [stdout] | [INFO] [stdout] 160 | assert_eq!( value & 0b1111111100000000, 0b1100110011000000); [INFO] [stdout] | ----- ^ ------------------ {integer} [INFO] [stdout] | | [INFO] [stdout] | masked::Masked [INFO] [stdout] | [INFO] [stdout] = note: an implementation of `std::ops::BitAnd` might be missing for `masked::Masked` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `rusty64` [INFO] [stdout] error[E0369]: no implementation for `masked::Masked | {integer}` [INFO] [stdout] --> src/addr/masked.rs:161:27 [INFO] [stdout] | [INFO] [stdout] 161 | assert_eq!( value | 0b1111111100000000, 0b1100111111001100); [INFO] [stdout] | ----- ^ ------------------ {integer} [INFO] [stdout] | | [INFO] [stdout] | masked::Masked [INFO] [stdout] | [INFO] [stdout] = note: an implementation of `std::ops::BitOr` might be missing for `masked::Masked` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] error[E0369]: no implementation for `masked::Masked ^ {integer}` [INFO] [stdout] --> src/addr/masked.rs:162:27 [INFO] [stdout] | [INFO] [stdout] 162 | assert_eq!( value ^ 0b1111111100000000, 0b1100001111001100); [INFO] [stdout] | ----- ^ ------------------ {integer} [INFO] [stdout] | | [INFO] [stdout] | masked::Masked [INFO] [stdout] | [INFO] [stdout] = note: an implementation of `std::ops::BitXor` might be missing for `masked::Masked` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error[E0599]: no method named `offset` found for struct `masked::Masked<{integer}>` in the current scope [INFO] [stdout] --> src/addr/masked.rs:167:43 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct Masked(pub T, pub T); [INFO] [stdout] | ----------------------------------- [INFO] [stdout] | | [INFO] [stdout] | method `offset` not found for this [INFO] [stdout] | doesn't satisfy `masked::Masked<{integer}>: address::Address` [INFO] [stdout] ... [INFO] [stdout] 167 | assert_eq!(Masked(0x12ff, 0x0000).offset(1), 0x1300); [INFO] [stdout] | ^^^^^^ method not found in `masked::Masked<{integer}>` [INFO] [stdout] | [INFO] [stdout] = note: the method `offset` exists but the following trait bounds were not satisfied: [INFO] [stdout] `{integer}: Maskable` [INFO] [stdout] which is required by `masked::Masked<{integer}>: address::Address` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `offset` found for struct `masked::Masked<{integer}>` in the current scope [INFO] [stdout] --> src/addr/masked.rs:168:43 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct Masked(pub T, pub T); [INFO] [stdout] | ----------------------------------- [INFO] [stdout] | | [INFO] [stdout] | method `offset` not found for this [INFO] [stdout] | doesn't satisfy `masked::Masked<{integer}>: address::Address` [INFO] [stdout] ... [INFO] [stdout] 168 | assert_eq!(Masked(0x12ff, 0xff00).offset(1), 0x1200); [INFO] [stdout] | ^^^^^^ method not found in `masked::Masked<{integer}>` [INFO] [stdout] | [INFO] [stdout] = note: the method `offset` exists but the following trait bounds were not satisfied: [INFO] [stdout] `{integer}: Maskable` [INFO] [stdout] which is required by `masked::Masked<{integer}>: address::Address` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `offset` found for struct `masked::Masked<{integer}>` in the current scope [INFO] [stdout] --> src/addr/masked.rs:169:43 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct Masked(pub T, pub T); [INFO] [stdout] | ----------------------------------- [INFO] [stdout] | | [INFO] [stdout] | method `offset` not found for this [INFO] [stdout] | doesn't satisfy `masked::Masked<{integer}>: address::Address` [INFO] [stdout] ... [INFO] [stdout] 169 | assert_eq!(Masked(0x12ff, 0xfff0).offset(1), 0x12f0); [INFO] [stdout] | ^^^^^^ method not found in `masked::Masked<{integer}>` [INFO] [stdout] | [INFO] [stdout] = note: the method `offset` exists but the following trait bounds were not satisfied: [INFO] [stdout] `{integer}: Maskable` [INFO] [stdout] which is required by `masked::Masked<{integer}>: address::Address` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `offset` found for struct `masked::Masked<{integer}>` in the current scope [INFO] [stdout] --> src/addr/masked.rs:170:43 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct Masked(pub T, pub T); [INFO] [stdout] | ----------------------------------- [INFO] [stdout] | | [INFO] [stdout] | method `offset` not found for this [INFO] [stdout] | doesn't satisfy `masked::Masked<{integer}>: address::Address` [INFO] [stdout] ... [INFO] [stdout] 170 | assert_eq!(Masked(0x1300, 0x0000).offset(-1), 0x12ff); [INFO] [stdout] | ^^^^^^ method not found in `masked::Masked<{integer}>` [INFO] [stdout] | [INFO] [stdout] = note: the method `offset` exists but the following trait bounds were not satisfied: [INFO] [stdout] `{integer}: Maskable` [INFO] [stdout] which is required by `masked::Masked<{integer}>: address::Address` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `offset` found for struct `masked::Masked<{integer}>` in the current scope [INFO] [stdout] --> src/addr/masked.rs:171:43 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct Masked(pub T, pub T); [INFO] [stdout] | ----------------------------------- [INFO] [stdout] | | [INFO] [stdout] | method `offset` not found for this [INFO] [stdout] | doesn't satisfy `masked::Masked<{integer}>: address::Address` [INFO] [stdout] ... [INFO] [stdout] 171 | assert_eq!(Masked(0x1300, 0xff00).offset(-1), 0x13ff); [INFO] [stdout] | ^^^^^^ method not found in `masked::Masked<{integer}>` [INFO] [stdout] | [INFO] [stdout] = note: the method `offset` exists but the following trait bounds were not satisfied: [INFO] [stdout] `{integer}: Maskable` [INFO] [stdout] which is required by `masked::Masked<{integer}>: address::Address` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `offset` found for struct `masked::Masked<{integer}>` in the current scope [INFO] [stdout] --> src/addr/masked.rs:172:43 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct Masked(pub T, pub T); [INFO] [stdout] | ----------------------------------- [INFO] [stdout] | | [INFO] [stdout] | method `offset` not found for this [INFO] [stdout] | doesn't satisfy `masked::Masked<{integer}>: address::Address` [INFO] [stdout] ... [INFO] [stdout] 172 | assert_eq!(Masked(0x1300, 0xfff0).offset(-1), 0x130f); [INFO] [stdout] | ^^^^^^ method not found in `masked::Masked<{integer}>` [INFO] [stdout] | [INFO] [stdout] = note: the method `offset` exists but the following trait bounds were not satisfied: [INFO] [stdout] `{integer}: Maskable` [INFO] [stdout] which is required by `masked::Masked<{integer}>: address::Address` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `offset` found for struct `masked::Masked<{integer}>` in the current scope [INFO] [stdout] --> src/cpu/mos6502/mod.rs:272:43 [INFO] [stdout] | [INFO] [stdout] 272 | let addr = Masked(0x0100, 0xff00).offset(self.sp as i16 + 1); [INFO] [stdout] | ^^^^^^ method not found in `masked::Masked<{integer}>` [INFO] [stdout] | [INFO] [stdout] ::: src/addr/masked.rs:19:1 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct Masked(pub T, pub T); [INFO] [stdout] | ----------------------------------- [INFO] [stdout] | | [INFO] [stdout] | method `offset` not found for this [INFO] [stdout] | doesn't satisfy `masked::Masked<{integer}>: address::Address` [INFO] [stdout] | [INFO] [stdout] = note: the method `offset` exists but the following trait bounds were not satisfied: [INFO] [stdout] `{integer}: Maskable` [INFO] [stdout] which is required by `masked::Masked<{integer}>: address::Address` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `offset` found for struct `masked::Masked<{integer}>` in the current scope [INFO] [stdout] --> src/cpu/mos6502/mod.rs:279:43 [INFO] [stdout] | [INFO] [stdout] 279 | let addr = Masked(0x0100, 0xff00).offset(self.sp as i16 + 1); [INFO] [stdout] | ^^^^^^ method not found in `masked::Masked<{integer}>` [INFO] [stdout] | [INFO] [stdout] ::: src/addr/masked.rs:19:1 [INFO] [stdout] | [INFO] [stdout] 19 | pub struct Masked(pub T, pub T); [INFO] [stdout] | ----------------------------------- [INFO] [stdout] | | [INFO] [stdout] | method `offset` not found for this [INFO] [stdout] | doesn't satisfy `masked::Masked<{integer}>: address::Address` [INFO] [stdout] | [INFO] [stdout] = note: the method `offset` exists but the following trait bounds were not satisfied: [INFO] [stdout] `{integer}: Maskable` [INFO] [stdout] which is required by `masked::Masked<{integer}>: address::Address` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0275]: overflow evaluating the requirement `u16: Maskable` [INFO] [stdout] --> src/cpu/mos6502/operand.rs:39:68 [INFO] [stdout] | [INFO] [stdout] 39 | Operand::Indirect(addr) => cpu.mem.get_le(Masked(addr, 0xff00)), // simulating MSB-bug [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: required because of the requirements on the impl of `address::Address` for `masked::Masked` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 14 previous errors; 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0275, E0369, E0599, E0600. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0275`. [INFO] [stdout] [INFO] [stderr] error: build failed [INFO] running `Command { std: "docker" "inspect" "460cd90b385eb2ce19644d8d6d51c0b44151cbaec5b9a028f1eb7a2e555e1911", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "460cd90b385eb2ce19644d8d6d51c0b44151cbaec5b9a028f1eb7a2e555e1911", kill_on_drop: false }` [INFO] [stdout] 460cd90b385eb2ce19644d8d6d51c0b44151cbaec5b9a028f1eb7a2e555e1911