[INFO] updating cached repository zargony/rusty64 [INFO] running `"git" "fetch" "--all"` [INFO] [stdout] Fetching origin [INFO] [stderr] From git://github.com/zargony/rusty64 [INFO] [stderr] * branch HEAD -> FETCH_HEAD [INFO] running `"git" "clone" "work/cache/sources/gh/zargony/rusty64" "work/ex/pr-62849/sources/master#435236b8877cdb98c82eaebfb7887782277265c5/gh/zargony/rusty64"` [INFO] [stderr] Cloning into 'work/ex/pr-62849/sources/master#435236b8877cdb98c82eaebfb7887782277265c5/gh/zargony/rusty64'... [INFO] [stderr] done. [INFO] running `"git" "clone" "work/cache/sources/gh/zargony/rusty64" "work/ex/pr-62849/sources/try#b5c7f157c20453dde8d47371abe73b32351b4e7f/gh/zargony/rusty64"` [INFO] [stderr] Cloning into 'work/ex/pr-62849/sources/try#b5c7f157c20453dde8d47371abe73b32351b4e7f/gh/zargony/rusty64'... [INFO] [stderr] done. [INFO] running `"git" "rev-parse" "HEAD"` [INFO] [stdout] 91b9c5edd70a39085000e084cb232828288cbf35 [INFO] sha for GitHub repo zargony/rusty64: 91b9c5edd70a39085000e084cb232828288cbf35 [INFO] validating manifest of zargony/rusty64 on toolchain master#435236b8877cdb98c82eaebfb7887782277265c5 [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+435236b8877cdb98c82eaebfb7887782277265c5-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] validating manifest of zargony/rusty64 on toolchain try#b5c7f157c20453dde8d47371abe73b32351b4e7f [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+b5c7f157c20453dde8d47371abe73b32351b4e7f-alt" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started frobbing zargony/rusty64 [INFO] finished frobbing zargony/rusty64 [INFO] frobbed toml for zargony/rusty64 written to work/ex/pr-62849/sources/master#435236b8877cdb98c82eaebfb7887782277265c5/gh/zargony/rusty64/Cargo.toml [INFO] started frobbing zargony/rusty64 [INFO] finished frobbing zargony/rusty64 [INFO] frobbed toml for zargony/rusty64 written to work/ex/pr-62849/sources/try#b5c7f157c20453dde8d47371abe73b32351b4e7f/gh/zargony/rusty64/Cargo.toml [INFO] crate zargony/rusty64 already has a lockfile, it will not be regenerated [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+435236b8877cdb98c82eaebfb7887782277265c5-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] error: the lock file /mnt/big/crater/work/ex/pr-62849/sources/master#435236b8877cdb98c82eaebfb7887782277265c5/gh/zargony/rusty64/Cargo.lock needs to be updated but --locked was passed to prevent this [INFO] the lockfile is outdated, regenerating it [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+435236b8877cdb98c82eaebfb7887782277265c5-alt" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+b5c7f157c20453dde8d47371abe73b32351b4e7f-alt" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+435236b8877cdb98c82eaebfb7887782277265c5-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] running `"/mnt/big/crater/work/local/cargo-home/bin/cargo" "+b5c7f157c20453dde8d47371abe73b32351b4e7f-alt" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] checking zargony/rusty64 against try#b5c7f157c20453dde8d47371abe73b32351b4e7f for pr-62849 [INFO] running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/pr-62849/worker-0/try#b5c7f157c20453dde8d47371abe73b32351b4e7f:/opt/crater/target:rw,Z" "-v" "/mnt/big/crater/work/ex/pr-62849/sources/try#b5c7f157c20453dde8d47371abe73b32351b4e7f/gh/zargony/rusty64:/opt/crater/workdir:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/opt/crater/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/opt/crater/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/opt/crater/workdir" "-e" "MAP_USER_ID=1000" "-e" "CARGO_TARGET_DIR=/opt/crater/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/crater/cargo-home" "-e" "RUSTUP_HOME=/opt/crater/rustup-home" "-w" "/opt/crater/workdir" "-m" "1536M" "--network" "none" "rustops/crates-build-env" "/opt/crater/cargo-home/bin/cargo" "+b5c7f157c20453dde8d47371abe73b32351b4e7f-alt" "check" "--frozen" "--all" "--all-targets"` [INFO] [stdout] 0606c993fabd5ebf92476b61f58086b2d8ecee1a3da67f440a686f25a1d41718 [INFO] running `"docker" "start" "-a" "0606c993fabd5ebf92476b61f58086b2d8ecee1a3da67f440a686f25a1d41718"` [INFO] [stderr] Checking regex-syntax v0.3.9 [INFO] [stderr] Checking utf8-ranges v0.1.3 [INFO] [stderr] Checking bitflags v0.3.3 [INFO] [stderr] Checking memchr v0.1.11 [INFO] [stderr] Checking thread-id v2.0.0 [INFO] [stderr] Checking rand v0.3.23 [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 env_logger v0.3.5 [INFO] [stderr] Checking rusty64 v0.0.3 (/opt/crater/workdir) [INFO] [stderr] error[E0599]: no method named `offset` found for type `addr::masked::Masked<{integer}>` in the current scope [INFO] [stderr] --> src/cpu/mos6502/mod.rs:272:43 [INFO] [stderr] | [INFO] [stderr] 272 | let addr = Masked(0x0100, 0xff00).offset(self.sp as i16 + 1); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] ::: src/addr/masked.rs:19:1 [INFO] [stderr] | [INFO] [stderr] 19 | pub struct Masked(pub T, pub T); [INFO] [stderr] | ----------------------------------- method `offset` not found for this [INFO] [stderr] | [INFO] [stderr] = note: the method `offset` exists but the following trait bounds were not satisfied: [INFO] [stderr] `addr::masked::Masked<{integer}> : addr::address::Address` [INFO] [stderr] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stderr] = note: the following trait defines an item `offset`, perhaps you need to implement it: [INFO] [stderr] candidate #1: `addr::address::Address` [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `map` found for type `addr::masked::Masked<{integer}>` in the current scope [INFO] [stderr] --> src/addr/masked.rs:145:43 [INFO] [stderr] | [INFO] [stderr] 19 | pub struct Masked(pub T, pub T); [INFO] [stderr] | ----------------------------------- method `map` not found for this [INFO] [stderr] ... [INFO] [stderr] 145 | assert_eq!(Masked(0x1234, 0xff00).map(|_| 0), 0x1200); [INFO] [stderr] | ^^^ [INFO] [stderr] | [INFO] [stderr] = note: the method `map` exists but the following trait bounds were not satisfied: [INFO] [stderr] `&mut addr::masked::Masked<{integer}> : std::iter::Iterator` [INFO] [stderr] `{integer} : addr::masked::Maskable` [INFO] [stderr] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stderr] = note: the following trait defines an item `map`, perhaps you need to implement it: [INFO] [stderr] candidate #1: `std::iter::Iterator` [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `offset` found for type `addr::masked::Masked<{integer}>` in the current scope [INFO] [stderr] --> src/cpu/mos6502/mod.rs:279:43 [INFO] [stderr] | [INFO] [stderr] 279 | let addr = Masked(0x0100, 0xff00).offset(self.sp as i16 + 1); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] ::: src/addr/masked.rs:19:1 [INFO] [stderr] | [INFO] [stderr] 19 | pub struct Masked(pub T, pub T); [INFO] [stderr] | ----------------------------------- method `offset` not found for this [INFO] [stderr] | [INFO] [stderr] = note: the method `offset` exists but the following trait bounds were not satisfied: [INFO] [stderr] `addr::masked::Masked<{integer}> : addr::address::Address` [INFO] [stderr] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stderr] = note: the following trait defines an item `offset`, perhaps you need to implement it: [INFO] [stderr] candidate #1: `addr::address::Address` [INFO] [stderr] [INFO] [stderr] error[E0600]: cannot apply unary operator `!` to type `addr::masked::Masked` [INFO] [stderr] --> src/addr/masked.rs:159:20 [INFO] [stderr] | [INFO] [stderr] 159 | assert_eq!(!value, 0b1100001111000011); [INFO] [stderr] | ^^^^^^ cannot apply unary operator `!` [INFO] [stderr] | [INFO] [stderr] = note: an implementation of `std::ops::Not` might be missing for `addr::masked::Masked` [INFO] [stderr] [INFO] [stderr] error[E0369]: binary operation `&` cannot be applied to type `addr::masked::Masked` [INFO] [stderr] --> src/addr/masked.rs:160:27 [INFO] [stderr] | [INFO] [stderr] 160 | assert_eq!( value & 0b1111111100000000, 0b1100110011000000); [INFO] [stderr] | ----- ^ ------------------ {integer} [INFO] [stderr] | | [INFO] [stderr] | addr::masked::Masked [INFO] [stderr] | [INFO] [stderr] = note: an implementation of `std::ops::BitAnd` might be missing for `addr::masked::Masked` [INFO] [stderr] [INFO] [stderr] error[E0369]: binary operation `|` cannot be applied to type `addr::masked::Masked` [INFO] [stderr] --> src/addr/masked.rs:161:27 [INFO] [stderr] | [INFO] [stderr] 161 | assert_eq!( value | 0b1111111100000000, 0b1100111111001100); [INFO] [stderr] | ----- ^ ------------------ {integer} [INFO] [stderr] | | [INFO] [stderr] | addr::masked::Masked [INFO] [stderr] | [INFO] [stderr] = note: an implementation of `std::ops::BitOr` might be missing for `addr::masked::Masked` [INFO] [stderr] [INFO] [stderr] error[E0369]: binary operation `^` cannot be applied to type `addr::masked::Masked` [INFO] [stderr] --> src/addr/masked.rs:162:27 [INFO] [stderr] | [INFO] [stderr] 162 | assert_eq!( value ^ 0b1111111100000000, 0b1100001111001100); [INFO] [stderr] | ----- ^ ------------------ {integer} [INFO] [stderr] | | [INFO] [stderr] | addr::masked::Masked [INFO] [stderr] | [INFO] [stderr] = note: an implementation of `std::ops::BitXor` might be missing for `addr::masked::Masked` [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `offset` found for type `addr::masked::Masked<{integer}>` in the current scope [INFO] [stderr] --> src/addr/masked.rs:167:43 [INFO] [stderr] | [INFO] [stderr] 19 | pub struct Masked(pub T, pub T); [INFO] [stderr] | ----------------------------------- method `offset` not found for this [INFO] [stderr] ... [INFO] [stderr] 167 | assert_eq!(Masked(0x12ff, 0x0000).offset(1), 0x1300); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: the method `offset` exists but the following trait bounds were not satisfied: [INFO] [stderr] `addr::masked::Masked<{integer}> : addr::address::Address` [INFO] [stderr] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stderr] = note: the following trait defines an item `offset`, perhaps you need to implement it: [INFO] [stderr] candidate #1: `addr::address::Address` [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `offset` found for type `addr::masked::Masked<{integer}>` in the current scope [INFO] [stderr] --> src/addr/masked.rs:168:43 [INFO] [stderr] | [INFO] [stderr] 19 | pub struct Masked(pub T, pub T); [INFO] [stderr] | ----------------------------------- method `offset` not found for this [INFO] [stderr] ... [INFO] [stderr] 168 | assert_eq!(Masked(0x12ff, 0xff00).offset(1), 0x1200); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: the method `offset` exists but the following trait bounds were not satisfied: [INFO] [stderr] `addr::masked::Masked<{integer}> : addr::address::Address` [INFO] [stderr] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stderr] = note: the following trait defines an item `offset`, perhaps you need to implement it: [INFO] [stderr] candidate #1: `addr::address::Address` [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `offset` found for type `addr::masked::Masked<{integer}>` in the current scope [INFO] [stderr] --> src/addr/masked.rs:169:43 [INFO] [stderr] | [INFO] [stderr] 19 | pub struct Masked(pub T, pub T); [INFO] [stderr] | ----------------------------------- method `offset` not found for this [INFO] [stderr] ... [INFO] [stderr] 169 | assert_eq!(Masked(0x12ff, 0xfff0).offset(1), 0x12f0); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: the method `offset` exists but the following trait bounds were not satisfied: [INFO] [stderr] `addr::masked::Masked<{integer}> : addr::address::Address` [INFO] [stderr] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stderr] = note: the following trait defines an item `offset`, perhaps you need to implement it: [INFO] [stderr] candidate #1: `addr::address::Address` [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `offset` found for type `addr::masked::Masked<{integer}>` in the current scope [INFO] [stderr] --> src/addr/masked.rs:170:43 [INFO] [stderr] | [INFO] [stderr] 19 | pub struct Masked(pub T, pub T); [INFO] [stderr] | ----------------------------------- method `offset` not found for this [INFO] [stderr] ... [INFO] [stderr] 170 | assert_eq!(Masked(0x1300, 0x0000).offset(-1), 0x12ff); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: the method `offset` exists but the following trait bounds were not satisfied: [INFO] [stderr] `addr::masked::Masked<{integer}> : addr::address::Address` [INFO] [stderr] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stderr] = note: the following trait defines an item `offset`, perhaps you need to implement it: [INFO] [stderr] candidate #1: `addr::address::Address` [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `offset` found for type `addr::masked::Masked<{integer}>` in the current scope [INFO] [stderr] --> src/addr/masked.rs:171:43 [INFO] [stderr] | [INFO] [stderr] 19 | pub struct Masked(pub T, pub T); [INFO] [stderr] | ----------------------------------- method `offset` not found for this [INFO] [stderr] ... [INFO] [stderr] 171 | assert_eq!(Masked(0x1300, 0xff00).offset(-1), 0x13ff); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: the method `offset` exists but the following trait bounds were not satisfied: [INFO] [stderr] `addr::masked::Masked<{integer}> : addr::address::Address` [INFO] [stderr] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stderr] = note: the following trait defines an item `offset`, perhaps you need to implement it: [INFO] [stderr] candidate #1: `addr::address::Address` [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `offset` found for type `addr::masked::Masked<{integer}>` in the current scope [INFO] [stderr] --> src/addr/masked.rs:172:43 [INFO] [stderr] | [INFO] [stderr] 19 | pub struct Masked(pub T, pub T); [INFO] [stderr] | ----------------------------------- method `offset` not found for this [INFO] [stderr] ... [INFO] [stderr] 172 | assert_eq!(Masked(0x1300, 0xfff0).offset(-1), 0x130f); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: the method `offset` exists but the following trait bounds were not satisfied: [INFO] [stderr] `addr::masked::Masked<{integer}> : addr::address::Address` [INFO] [stderr] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stderr] = note: the following trait defines an item `offset`, perhaps you need to implement it: [INFO] [stderr] candidate #1: `addr::address::Address` [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `offset` found for type `addr::masked::Masked<{integer}>` in the current scope [INFO] [stderr] --> src/cpu/mos6502/mod.rs:272:43 [INFO] [stderr] | [INFO] [stderr] 272 | let addr = Masked(0x0100, 0xff00).offset(self.sp as i16 + 1); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] ::: src/addr/masked.rs:19:1 [INFO] [stderr] | [INFO] [stderr] 19 | pub struct Masked(pub T, pub T); [INFO] [stderr] | ----------------------------------- method `offset` not found for this [INFO] [stderr] | [INFO] [stderr] = note: the method `offset` exists but the following trait bounds were not satisfied: [INFO] [stderr] `addr::masked::Masked<{integer}> : addr::address::Address` [INFO] [stderr] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stderr] = note: the following trait defines an item `offset`, perhaps you need to implement it: [INFO] [stderr] candidate #1: `addr::address::Address` [INFO] [stderr] [INFO] [stderr] error[E0599]: no method named `offset` found for type `addr::masked::Masked<{integer}>` in the current scope [INFO] [stderr] --> src/cpu/mos6502/mod.rs:279:43 [INFO] [stderr] | [INFO] [stderr] 279 | let addr = Masked(0x0100, 0xff00).offset(self.sp as i16 + 1); [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] ::: src/addr/masked.rs:19:1 [INFO] [stderr] | [INFO] [stderr] 19 | pub struct Masked(pub T, pub T); [INFO] [stderr] | ----------------------------------- method `offset` not found for this [INFO] [stderr] | [INFO] [stderr] = note: the method `offset` exists but the following trait bounds were not satisfied: [INFO] [stderr] `addr::masked::Masked<{integer}> : addr::address::Address` [INFO] [stderr] = help: items from traits can only be used if the trait is implemented and in scope [INFO] [stderr] = note: the following trait defines an item `offset`, perhaps you need to implement it: [INFO] [stderr] candidate #1: `addr::address::Address` [INFO] [stderr] [INFO] [stderr] error[E0275]: overflow evaluating the requirement `u16: addr::masked::Maskable` [INFO] [stderr] --> src/cpu/mos6502/operand.rs:39:68 [INFO] [stderr] | [INFO] [stderr] 39 | Operand::Indirect(addr) => cpu.mem.get_le(Masked(addr, 0xff00)), // simulating MSB-bug [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: required because of the requirements on the impl of `addr::address::Address` for `addr::masked::Masked` [INFO] [stderr] [INFO] [stderr] error: aborting due to 3 previous errors [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0275, E0599. [INFO] [stderr] For more information about an error, try `rustc --explain E0275`. [INFO] [stderr] error: Could not compile `rusty64`. [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stderr] error[E0275]: overflow evaluating the requirement `u16: addr::masked::Maskable` [INFO] [stderr] --> src/cpu/mos6502/operand.rs:39:68 [INFO] [stderr] | [INFO] [stderr] 39 | Operand::Indirect(addr) => cpu.mem.get_le(Masked(addr, 0xff00)), // simulating MSB-bug [INFO] [stderr] | ^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: required because of the requirements on the impl of `addr::address::Address` for `addr::masked::Masked` [INFO] [stderr] [INFO] [stderr] error: aborting due to 14 previous errors [INFO] [stderr] [INFO] [stderr] Some errors have detailed explanations: E0275, E0369, E0599, E0600. [INFO] [stderr] For more information about an error, try `rustc --explain E0275`. [INFO] [stderr] error: Could not compile `rusty64`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `"docker" "inspect" "0606c993fabd5ebf92476b61f58086b2d8ecee1a3da67f440a686f25a1d41718"` [INFO] running `"docker" "rm" "-f" "0606c993fabd5ebf92476b61f58086b2d8ecee1a3da67f440a686f25a1d41718"` [INFO] [stdout] 0606c993fabd5ebf92476b61f58086b2d8ecee1a3da67f440a686f25a1d41718