[INFO] cloning repository https://github.com/ConorBobbleHat/alumini
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ConorBobbleHat/alumini" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FConorBobbleHat%2Falumini", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FConorBobbleHat%2Falumini'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 577138023be34614353e7c58408d4446bb0d0847
[INFO] testing ConorBobbleHat/alumini against 1.75.0 for beta-1.76-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FConorBobbleHat%2Falumini" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/ConorBobbleHat/alumini on toolchain 1.75.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.75.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] removed /workspace/builds/worker-2-tc1/source/.cargo/config
[INFO] started tweaking git repo https://github.com/ConorBobbleHat/alumini
[INFO] finished tweaking git repo https://github.com/ConorBobbleHat/alumini
[INFO] tweaked toml for git repo https://github.com/ConorBobbleHat/alumini written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] crate git repo https://github.com/ConorBobbleHat/alumini already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.75.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded mmap v0.1.1
[INFO] [stderr]   Downloaded raw-cpuid v10.6.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.75.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 32e7b0567b7c99acdd88ec90698dda68fecfa02aa1e0d6d9563bfb8cefd22e8f
[INFO] running `Command { std: "docker" "start" "-a" "32e7b0567b7c99acdd88ec90698dda68fecfa02aa1e0d6d9563bfb8cefd22e8f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "32e7b0567b7c99acdd88ec90698dda68fecfa02aa1e0d6d9563bfb8cefd22e8f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "32e7b0567b7c99acdd88ec90698dda68fecfa02aa1e0d6d9563bfb8cefd22e8f", kill_on_drop: false }`
[INFO] [stdout] 32e7b0567b7c99acdd88ec90698dda68fecfa02aa1e0d6d9563bfb8cefd22e8f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.75.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 699da1397f83ac1fe06ec9acdafac8a3f26dea4d943aa12475fd0a90d6747286
[INFO] running `Command { std: "docker" "start" "-a" "699da1397f83ac1fe06ec9acdafac8a3f26dea4d943aa12475fd0a90d6747286", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.139
[INFO] [stderr]    Compiling autocfg v1.1.0
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.51
[INFO] [stderr]    Compiling log v0.4.17
[INFO] [stderr]    Compiling quote v1.0.23
[INFO] [stderr]    Compiling unicode-ident v1.0.6
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling regex-syntax v0.6.28
[INFO] [stderr]    Compiling syn v1.0.107
[INFO] [stderr]    Compiling quick-error v1.2.3
[INFO] [stderr]    Compiling termcolor v1.2.0
[INFO] [stderr]    Compiling x86 v0.52.0
[INFO] [stderr]    Compiling anyhow v1.0.68
[INFO] [stderr]    Compiling remove_dir_all v0.5.3
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling raw-cpuid v10.6.0
[INFO] [stderr]    Compiling humantime v1.3.0
[INFO] [stderr]    Compiling static_assertions v1.1.0
[INFO] [stderr]    Compiling libc v0.1.12
[INFO] [stderr]    Compiling bit_field v0.10.1
[INFO] [stderr]    Compiling memoffset v0.7.1
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling aho-corasick v0.7.20
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling rand v0.4.6
[INFO] [stderr]    Compiling page_size v0.5.0
[INFO] [stderr]    Compiling nix v0.26.2
[INFO] [stderr]    Compiling regex v1.7.1
[INFO] [stderr]    Compiling tempdir v0.3.7
[INFO] [stderr]    Compiling mmap v0.1.1
[INFO] [stderr]    Compiling env_logger v0.7.1
[INFO] [stderr]    Compiling pretty_env_logger v0.4.0
[INFO] [stderr]    Compiling num-derive v0.3.3
[INFO] [stderr]    Compiling alumini v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0512]: cannot transmute between types of different sizes, or dependently-sized types
[INFO] [stdout]    --> src/child_process.rs:138:28
[INFO] [stdout]     |
[INFO] [stdout] 138 |         let fn_ptr: fn() = std::mem::transmute(coff.optional_header.unwrap().entry_address);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: source type: `u32` (32 bits)
[INFO] [stdout]     = note: target type: `fn()` (64 bits)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot use register `bx`: rbx is used internally by LLVM and cannot be used as an operand for inline asm
[INFO] [stdout]    --> src/child_process.rs:154:13
[INFO] [stdout]     |
[INFO] [stdout] 154 |             in("ebx") argc,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `eip` on type `user_regs_struct`
[INFO] [stdout]   --> src/parent_process.rs:74:71
[INFO] [stdout]    |
[INFO] [stdout] 74 | ...                   i32::to_le_bytes(ptrace::read(child, regs.eip as *mut c_void)?);
[INFO] [stdout]    |                                                                 ^^^ help: a field with a similar name exists: `rip`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: `?` operator has incompatible types
[INFO] [stdout]   --> src/parent_process.rs:74:46
[INFO] [stdout]    |
[INFO] [stdout] 74 | ...                   i32::to_le_bytes(ptrace::read(child, regs.eip as *mut c_void)?);
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `i32`, found `i64`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `?` operator cannot convert from `i64` to `i32`
[INFO] [stdout] help: you can convert an `i64` to an `i32` and panic if the converted value doesn't fit
[INFO] [stdout]    |
[INFO] [stdout] 74 |                             i32::to_le_bytes(ptrace::read(child, regs.eip as *mut c_void)?.try_into().unwrap());
[INFO] [stdout]    |                                                                                           ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `eax` on type `user_regs_struct`
[INFO] [stdout]   --> src/parent_process.rs:86:45
[INFO] [stdout]    |
[INFO] [stdout] 86 | ...                   let ah = ((regs.eax & 0xff00) >> 8) as u8;
[INFO] [stdout]    |                                       ^^^ help: a field with a similar name exists: `rax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `eax` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:102:57
[INFO] [stdout]     |
[INFO] [stdout] 102 | ...                   let service = (regs.eax & 0xff) as u8;
[INFO] [stdout]     |                                           ^^^ help: a field with a similar name exists: `rax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `ebx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:115:62
[INFO] [stdout]     |
[INFO] [stdout] 115 | ...                   let exit_code: u8 = regs.ebx.try_into()?;
[INFO] [stdout]     |                                                ^^^ help: a field with a similar name exists: `rbx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `eip` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:127:34
[INFO] [stdout]     |
[INFO] [stdout] 127 | ...                   regs.eip += 2;
[INFO] [stdout]     |                            ^^^ help: a field with a similar name exists: `rip`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `eip` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:131:70
[INFO] [stdout]     |
[INFO] [stdout] 131 | ...                   panic!("[ERROR] Segfault at {:#x}", regs.eip);
[INFO] [stdout]     |                                                                ^^^ help: a field with a similar name exists: `rip`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `eax` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:153:17
[INFO] [stdout]     |
[INFO] [stdout] 153 |     match (regs.eax & 0xff) as u8 {
[INFO] [stdout]     |                 ^^^ help: a field with a similar name exists: `rax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `ebx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:160:57
[INFO] [stdout]     |
[INFO] [stdout] 160 |             debug!("sbrk({:#x}). Returning {:#x}", regs.ebx, *program_break);
[INFO] [stdout]     |                                                         ^^^ help: a field with a similar name exists: `rbx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `ebx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:162:31
[INFO] [stdout]     |
[INFO] [stdout] 162 |             let offset = regs.ebx;
[INFO] [stdout]     |                               ^^^ help: a field with a similar name exists: `rbx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `eax` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:163:18
[INFO] [stdout]     |
[INFO] [stdout] 163 |             regs.eax = (*program_break) as i32;
[INFO] [stdout]     |                  ^^^ help: a field with a similar name exists: `rax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `ebx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:176:19
[INFO] [stdout]     |
[INFO] [stdout] 176 |     let fd = regs.ebx as u32;
[INFO] [stdout]     |                   ^^^ help: a field with a similar name exists: `rbx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `eax` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:190:10
[INFO] [stdout]     |
[INFO] [stdout] 190 |     regs.eax = 0;
[INFO] [stdout]     |          ^^^ help: a field with a similar name exists: `rax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `ebx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:199:19
[INFO] [stdout]     |
[INFO] [stdout] 199 |     let fd = regs.ebx as u32;
[INFO] [stdout]     |                   ^^^ help: a field with a similar name exists: `rbx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `ecx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:200:28
[INFO] [stdout]     |
[INFO] [stdout] 200 |     let size: usize = regs.ecx.try_into()?;
[INFO] [stdout]     |                            ^^^ help: a field with a similar name exists: `rcx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `edx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:201:24
[INFO] [stdout]     |
[INFO] [stdout] 201 |     let out_ptr = regs.edx as u32;
[INFO] [stdout]     |                        ^^^ help: a field with a similar name exists: `rdx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `eax` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:214:10
[INFO] [stdout]     |
[INFO] [stdout] 214 |     regs.eax = bytes_read.try_into()?;
[INFO] [stdout]     |          ^^^ help: a field with a similar name exists: `rax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `ebx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:223:24
[INFO] [stdout]     |
[INFO] [stdout] 223 |     let fd: u32 = regs.ebx as u32;
[INFO] [stdout]     |                        ^^^ help: a field with a similar name exists: `rbx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `ecx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:224:38
[INFO] [stdout]     |
[INFO] [stdout] 224 |     let bytes_to_write: usize = regs.ecx.try_into()?;
[INFO] [stdout]     |                                      ^^^ help: a field with a similar name exists: `rcx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `edx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:225:33
[INFO] [stdout]     |
[INFO] [stdout] 225 |     let mem_pointer: u32 = regs.edx as u32;
[INFO] [stdout]     |                                 ^^^ help: a field with a similar name exists: `rdx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `ebx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:259:34
[INFO] [stdout]     |
[INFO] [stdout] 259 |     let filename_ptr: u32 = regs.ebx as u32;
[INFO] [stdout]     |                                  ^^^ help: a field with a similar name exists: `rbx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `ecx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:262:46
[INFO] [stdout]     |
[INFO] [stdout] 262 |     let flags = OpenBitflags::from_bits(regs.ecx as u32)
[INFO] [stdout]     |                                              ^^^ help: a field with a similar name exists: `rcx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `ecx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:263:79
[INFO] [stdout]     |
[INFO] [stdout] 263 |         .ok_or_else(|| anyhow!("Unexpected flags passed to open: {:#x}", regs.ecx))?;
[INFO] [stdout]     |                                                                               ^^^ help: a field with a similar name exists: `rcx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `edx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:266:26
[INFO] [stdout]     |
[INFO] [stdout] 266 |     let mode: u32 = regs.edx as u32;
[INFO] [stdout]     |                          ^^^ help: a field with a similar name exists: `rdx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `eax` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:280:10
[INFO] [stdout]     |
[INFO] [stdout] 280 |     regs.eax = new_fd as i32;
[INFO] [stdout]     |          ^^^ help: a field with a similar name exists: `rax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `ebx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:307:19
[INFO] [stdout]     |
[INFO] [stdout] 307 |     let fd = regs.ebx as u32;
[INFO] [stdout]     |                   ^^^ help: a field with a similar name exists: `rbx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `ecx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:308:27
[INFO] [stdout]     |
[INFO] [stdout] 308 |     let return_ptr = regs.ecx as u32;
[INFO] [stdout]     |                           ^^^ help: a field with a similar name exists: `rcx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `eax` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:344:10
[INFO] [stdout]     |
[INFO] [stdout] 344 |     regs.eax = 0;
[INFO] [stdout]     |          ^^^ help: a field with a similar name exists: `rax`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/parent_utils.rs:13:49
[INFO] [stdout]    |
[INFO] [stdout] 13 |         let bytes_to_append = &i32::to_le_bytes(w)[..bytes_to_append];
[INFO] [stdout]    |                                ---------------- ^ expected `i32`, found `i64`
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                arguments to this function are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: method defined here
[INFO] [stdout]   --> /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/core/src/num/mod.rs:335:5
[INFO] [stdout]    = note: this error originates in the macro `int_impl` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: you can convert an `i64` to an `i32` and panic if the converted value doesn't fit
[INFO] [stdout]    |
[INFO] [stdout] 13 |         let bytes_to_append = &i32::to_le_bytes(w.try_into().unwrap())[..bytes_to_append];
[INFO] [stdout]    |                                                  ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: `?` operator has incompatible types
[INFO] [stdout]   --> src/parent_utils.rs:27:50
[INFO] [stdout]    |
[INFO] [stdout] 27 |             let existing_word = i32::to_le_bytes(ptrace::read(child, indexed_addr)?);
[INFO] [stdout]    |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `i32`, found `i64`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `?` operator cannot convert from `i64` to `i32`
[INFO] [stdout] help: you can convert an `i64` to an `i32` and panic if the converted value doesn't fit
[INFO] [stdout]    |
[INFO] [stdout] 27 |             let existing_word = i32::to_le_bytes(ptrace::read(child, indexed_addr)?.try_into().unwrap());
[INFO] [stdout]    |                                                                                    ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/parent_utils.rs:45:40
[INFO] [stdout]    |
[INFO] [stdout] 45 |         let w_bytes = i32::to_le_bytes(w);
[INFO] [stdout]    |                       ---------------- ^ expected `i32`, found `i64`
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       arguments to this function are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: method defined here
[INFO] [stdout]   --> /rustc/82e1608dfa6e0b5569232559e3d385fea5a93112/library/core/src/num/mod.rs:335:5
[INFO] [stdout]    = note: this error originates in the macro `int_impl` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: you can convert an `i64` to an `i32` and panic if the converted value doesn't fit
[INFO] [stdout]    |
[INFO] [stdout] 45 |         let w_bytes = i32::to_le_bytes(w.try_into().unwrap());
[INFO] [stdout]    |                                         ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 33 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0308, E0512, E0609.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0308`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `alumini` (bin "alumini") due to 34 previous errors
[INFO] running `Command { std: "docker" "inspect" "699da1397f83ac1fe06ec9acdafac8a3f26dea4d943aa12475fd0a90d6747286", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "699da1397f83ac1fe06ec9acdafac8a3f26dea4d943aa12475fd0a90d6747286", kill_on_drop: false }`
[INFO] [stdout] 699da1397f83ac1fe06ec9acdafac8a3f26dea4d943aa12475fd0a90d6747286
[INFO] testing ConorBobbleHat/alumini against beta-2023-12-22 for beta-1.76-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FConorBobbleHat%2Falumini" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/ConorBobbleHat/alumini on toolchain beta-2023-12-22
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2023-12-22" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] removed /workspace/builds/worker-2-tc2/source/.cargo/config
[INFO] started tweaking git repo https://github.com/ConorBobbleHat/alumini
[INFO] finished tweaking git repo https://github.com/ConorBobbleHat/alumini
[INFO] tweaked toml for git repo https://github.com/ConorBobbleHat/alumini written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] crate git repo https://github.com/ConorBobbleHat/alumini already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2023-12-22" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-12-22" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] ce2bd6e61c58504dde3fce37adf195cfa8b4c8d6df735f46ad5741e31fc954a8
[INFO] running `Command { std: "docker" "start" "-a" "ce2bd6e61c58504dde3fce37adf195cfa8b4c8d6df735f46ad5741e31fc954a8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ce2bd6e61c58504dde3fce37adf195cfa8b4c8d6df735f46ad5741e31fc954a8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ce2bd6e61c58504dde3fce37adf195cfa8b4c8d6df735f46ad5741e31fc954a8", kill_on_drop: false }`
[INFO] [stdout] ce2bd6e61c58504dde3fce37adf195cfa8b4c8d6df735f46ad5741e31fc954a8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2023-12-22" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] c57e042e76ed5d56ea3c93fb35b13fc0fdb82416c40aabbe2539733ee4120b27
[INFO] running `Command { std: "docker" "start" "-a" "c57e042e76ed5d56ea3c93fb35b13fc0fdb82416c40aabbe2539733ee4120b27", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.139
[INFO] [stderr]    Compiling autocfg v1.1.0
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling proc-macro2 v1.0.51
[INFO] [stderr]    Compiling log v0.4.17
[INFO] [stderr]    Compiling quote v1.0.23
[INFO] [stderr]    Compiling unicode-ident v1.0.6
[INFO] [stderr]    Compiling quick-error v1.2.3
[INFO] [stderr]    Compiling regex-syntax v0.6.28
[INFO] [stderr]    Compiling syn v1.0.107
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling termcolor v1.2.0
[INFO] [stderr]    Compiling x86 v0.52.0
[INFO] [stderr]    Compiling anyhow v1.0.68
[INFO] [stderr]    Compiling remove_dir_all v0.5.3
[INFO] [stderr]    Compiling libc v0.1.12
[INFO] [stderr]    Compiling humantime v1.3.0
[INFO] [stderr]    Compiling raw-cpuid v10.6.0
[INFO] [stderr]    Compiling static_assertions v1.1.0
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling bit_field v0.10.1
[INFO] [stderr]    Compiling memoffset v0.7.1
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling aho-corasick v0.7.20
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling rand v0.4.6
[INFO] [stderr]    Compiling atty v0.2.14
[INFO] [stderr]    Compiling page_size v0.5.0
[INFO] [stderr]    Compiling nix v0.26.2
[INFO] [stderr]    Compiling regex v1.7.1
[INFO] [stderr]    Compiling tempdir v0.3.7
[INFO] [stderr]    Compiling mmap v0.1.1
[INFO] [stderr]    Compiling env_logger v0.7.1
[INFO] [stderr]    Compiling pretty_env_logger v0.4.0
[INFO] [stderr]    Compiling num-derive v0.3.3
[INFO] [stderr]    Compiling alumini v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0512]: cannot transmute between types of different sizes, or dependently-sized types
[INFO] [stdout]    --> src/child_process.rs:138:28
[INFO] [stdout]     |
[INFO] [stdout] 138 |         let fn_ptr: fn() = std::mem::transmute(coff.optional_header.unwrap().entry_address);
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: source type: `u32` (32 bits)
[INFO] [stdout]     = note: target type: `fn()` (64 bits)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: cannot use register `bx`: rbx is used internally by LLVM and cannot be used as an operand for inline asm
[INFO] [stdout]    --> src/child_process.rs:154:13
[INFO] [stdout]     |
[INFO] [stdout] 154 |             in("ebx") argc,
[INFO] [stdout]     |             ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `eip` on type `user_regs_struct`
[INFO] [stdout]   --> src/parent_process.rs:74:71
[INFO] [stdout]    |
[INFO] [stdout] 74 | ...                   i32::to_le_bytes(ptrace::read(child, regs.eip as *mut c_void)?);
[INFO] [stdout]    |                                                                 ^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]    |
[INFO] [stdout] 74 |                             i32::to_le_bytes(ptrace::read(child, regs.rip as *mut c_void)?);
[INFO] [stdout]    |                                                                       ~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: `?` operator has incompatible types
[INFO] [stdout]   --> src/parent_process.rs:74:46
[INFO] [stdout]    |
[INFO] [stdout] 74 | ...                   i32::to_le_bytes(ptrace::read(child, regs.eip as *mut c_void)?);
[INFO] [stdout]    |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `i32`, found `i64`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `?` operator cannot convert from `i64` to `i32`
[INFO] [stdout] help: you can convert an `i64` to an `i32` and panic if the converted value doesn't fit
[INFO] [stdout]    |
[INFO] [stdout] 74 |                             i32::to_le_bytes(ptrace::read(child, regs.eip as *mut c_void)?.try_into().unwrap());
[INFO] [stdout]    |                                                                                           ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `eax` on type `user_regs_struct`
[INFO] [stdout]   --> src/parent_process.rs:86:45
[INFO] [stdout]    |
[INFO] [stdout] 86 | ...                   let ah = ((regs.eax & 0xff00) >> 8) as u8;
[INFO] [stdout]    |                                       ^^^ unknown field
[INFO] [stdout]    |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]    |
[INFO] [stdout] 86 |                             let ah = ((regs.rax & 0xff00) >> 8) as u8;
[INFO] [stdout]    |                                             ~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `eax` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:102:57
[INFO] [stdout]     |
[INFO] [stdout] 102 | ...                   let service = (regs.eax & 0xff) as u8;
[INFO] [stdout]     |                                           ^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 102 |                                     let service = (regs.rax & 0xff) as u8;
[INFO] [stdout]     |                                                         ~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `ebx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:115:62
[INFO] [stdout]     |
[INFO] [stdout] 115 | ...                   let exit_code: u8 = regs.ebx.try_into()?;
[INFO] [stdout]     |                                                ^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 115 |                                     let exit_code: u8 = regs.rbx.try_into()?;
[INFO] [stdout]     |                                                              ~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `eip` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:127:34
[INFO] [stdout]     |
[INFO] [stdout] 127 | ...                   regs.eip += 2;
[INFO] [stdout]     |                            ^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 127 |                             regs.rip += 2;
[INFO] [stdout]     |                                  ~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `eip` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:131:70
[INFO] [stdout]     |
[INFO] [stdout] 131 | ...                   panic!("[ERROR] Segfault at {:#x}", regs.eip);
[INFO] [stdout]     |                                                                ^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 131 |                             panic!("[ERROR] Segfault at {:#x}", regs.rip);
[INFO] [stdout]     |                                                                      ~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `eax` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:153:17
[INFO] [stdout]     |
[INFO] [stdout] 153 |     match (regs.eax & 0xff) as u8 {
[INFO] [stdout]     |                 ^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 153 |     match (regs.rax & 0xff) as u8 {
[INFO] [stdout]     |                 ~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `ebx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:160:57
[INFO] [stdout]     |
[INFO] [stdout] 160 |             debug!("sbrk({:#x}). Returning {:#x}", regs.ebx, *program_break);
[INFO] [stdout]     |                                                         ^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 160 |             debug!("sbrk({:#x}). Returning {:#x}", regs.rbx, *program_break);
[INFO] [stdout]     |                                                         ~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `ebx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:162:31
[INFO] [stdout]     |
[INFO] [stdout] 162 |             let offset = regs.ebx;
[INFO] [stdout]     |                               ^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 162 |             let offset = regs.rbx;
[INFO] [stdout]     |                               ~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `eax` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:163:18
[INFO] [stdout]     |
[INFO] [stdout] 163 |             regs.eax = (*program_break) as i32;
[INFO] [stdout]     |                  ^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 163 |             regs.rax = (*program_break) as i32;
[INFO] [stdout]     |                  ~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `ebx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:176:19
[INFO] [stdout]     |
[INFO] [stdout] 176 |     let fd = regs.ebx as u32;
[INFO] [stdout]     |                   ^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 176 |     let fd = regs.rbx as u32;
[INFO] [stdout]     |                   ~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `eax` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:190:10
[INFO] [stdout]     |
[INFO] [stdout] 190 |     regs.eax = 0;
[INFO] [stdout]     |          ^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 190 |     regs.rax = 0;
[INFO] [stdout]     |          ~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `ebx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:199:19
[INFO] [stdout]     |
[INFO] [stdout] 199 |     let fd = regs.ebx as u32;
[INFO] [stdout]     |                   ^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 199 |     let fd = regs.rbx as u32;
[INFO] [stdout]     |                   ~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `ecx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:200:28
[INFO] [stdout]     |
[INFO] [stdout] 200 |     let size: usize = regs.ecx.try_into()?;
[INFO] [stdout]     |                            ^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 200 |     let size: usize = regs.rcx.try_into()?;
[INFO] [stdout]     |                            ~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `edx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:201:24
[INFO] [stdout]     |
[INFO] [stdout] 201 |     let out_ptr = regs.edx as u32;
[INFO] [stdout]     |                        ^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 201 |     let out_ptr = regs.rdx as u32;
[INFO] [stdout]     |                        ~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `eax` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:214:10
[INFO] [stdout]     |
[INFO] [stdout] 214 |     regs.eax = bytes_read.try_into()?;
[INFO] [stdout]     |          ^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 214 |     regs.rax = bytes_read.try_into()?;
[INFO] [stdout]     |          ~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `ebx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:223:24
[INFO] [stdout]     |
[INFO] [stdout] 223 |     let fd: u32 = regs.ebx as u32;
[INFO] [stdout]     |                        ^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 223 |     let fd: u32 = regs.rbx as u32;
[INFO] [stdout]     |                        ~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `ecx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:224:38
[INFO] [stdout]     |
[INFO] [stdout] 224 |     let bytes_to_write: usize = regs.ecx.try_into()?;
[INFO] [stdout]     |                                      ^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 224 |     let bytes_to_write: usize = regs.rcx.try_into()?;
[INFO] [stdout]     |                                      ~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `edx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:225:33
[INFO] [stdout]     |
[INFO] [stdout] 225 |     let mem_pointer: u32 = regs.edx as u32;
[INFO] [stdout]     |                                 ^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 225 |     let mem_pointer: u32 = regs.rdx as u32;
[INFO] [stdout]     |                                 ~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `ebx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:259:34
[INFO] [stdout]     |
[INFO] [stdout] 259 |     let filename_ptr: u32 = regs.ebx as u32;
[INFO] [stdout]     |                                  ^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 259 |     let filename_ptr: u32 = regs.rbx as u32;
[INFO] [stdout]     |                                  ~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `ecx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:262:46
[INFO] [stdout]     |
[INFO] [stdout] 262 |     let flags = OpenBitflags::from_bits(regs.ecx as u32)
[INFO] [stdout]     |                                              ^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 262 |     let flags = OpenBitflags::from_bits(regs.rcx as u32)
[INFO] [stdout]     |                                              ~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `ecx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:263:79
[INFO] [stdout]     |
[INFO] [stdout] 263 |         .ok_or_else(|| anyhow!("Unexpected flags passed to open: {:#x}", regs.ecx))?;
[INFO] [stdout]     |                                                                               ^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 263 |         .ok_or_else(|| anyhow!("Unexpected flags passed to open: {:#x}", regs.rcx))?;
[INFO] [stdout]     |                                                                               ~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `edx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:266:26
[INFO] [stdout]     |
[INFO] [stdout] 266 |     let mode: u32 = regs.edx as u32;
[INFO] [stdout]     |                          ^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 266 |     let mode: u32 = regs.rdx as u32;
[INFO] [stdout]     |                          ~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `eax` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:280:10
[INFO] [stdout]     |
[INFO] [stdout] 280 |     regs.eax = new_fd as i32;
[INFO] [stdout]     |          ^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 280 |     regs.rax = new_fd as i32;
[INFO] [stdout]     |          ~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `ebx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:307:19
[INFO] [stdout]     |
[INFO] [stdout] 307 |     let fd = regs.ebx as u32;
[INFO] [stdout]     |                   ^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 307 |     let fd = regs.rbx as u32;
[INFO] [stdout]     |                   ~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `ecx` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:308:27
[INFO] [stdout]     |
[INFO] [stdout] 308 |     let return_ptr = regs.ecx as u32;
[INFO] [stdout]     |                           ^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 308 |     let return_ptr = regs.rcx as u32;
[INFO] [stdout]     |                           ~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0609]: no field `eax` on type `user_regs_struct`
[INFO] [stdout]    --> src/parent_process.rs:344:10
[INFO] [stdout]     |
[INFO] [stdout] 344 |     regs.eax = 0;
[INFO] [stdout]     |          ^^^ unknown field
[INFO] [stdout]     |
[INFO] [stdout] help: a field with a similar name exists
[INFO] [stdout]     |
[INFO] [stdout] 344 |     regs.rax = 0;
[INFO] [stdout]     |          ~~~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/parent_utils.rs:13:49
[INFO] [stdout]    |
[INFO] [stdout] 13 |         let bytes_to_append = &i32::to_le_bytes(w)[..bytes_to_append];
[INFO] [stdout]    |                                ---------------- ^ expected `i32`, found `i64`
[INFO] [stdout]    |                                |
[INFO] [stdout]    |                                arguments to this function are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: method defined here
[INFO] [stdout]   --> /rustc/0e09125c6c3c2fd70d7de961bcf0e51575235fad/library/core/src/num/mod.rs:335:5
[INFO] [stdout]    = note: this error originates in the macro `int_impl` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: you can convert an `i64` to an `i32` and panic if the converted value doesn't fit
[INFO] [stdout]    |
[INFO] [stdout] 13 |         let bytes_to_append = &i32::to_le_bytes(w.try_into().unwrap())[..bytes_to_append];
[INFO] [stdout]    |                                                  ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: `?` operator has incompatible types
[INFO] [stdout]   --> src/parent_utils.rs:27:50
[INFO] [stdout]    |
[INFO] [stdout] 27 |             let existing_word = i32::to_le_bytes(ptrace::read(child, indexed_addr)?);
[INFO] [stdout]    |                                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `i32`, found `i64`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `?` operator cannot convert from `i64` to `i32`
[INFO] [stdout] help: you can convert an `i64` to an `i32` and panic if the converted value doesn't fit
[INFO] [stdout]    |
[INFO] [stdout] 27 |             let existing_word = i32::to_le_bytes(ptrace::read(child, indexed_addr)?.try_into().unwrap());
[INFO] [stdout]    |                                                                                    ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]   --> src/parent_utils.rs:45:40
[INFO] [stdout]    |
[INFO] [stdout] 45 |         let w_bytes = i32::to_le_bytes(w);
[INFO] [stdout]    |                       ---------------- ^ expected `i32`, found `i64`
[INFO] [stdout]    |                       |
[INFO] [stdout]    |                       arguments to this function are incorrect
[INFO] [stdout]    |
[INFO] [stdout] note: method defined here
[INFO] [stdout]   --> /rustc/0e09125c6c3c2fd70d7de961bcf0e51575235fad/library/core/src/num/mod.rs:335:5
[INFO] [stdout]    = note: this error originates in the macro `int_impl` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: you can convert an `i64` to an `i32` and panic if the converted value doesn't fit
[INFO] [stdout]    |
[INFO] [stdout] 45 |         let w_bytes = i32::to_le_bytes(w.try_into().unwrap());
[INFO] [stdout]    |                                         ++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 33 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0308, E0512, E0609.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0308`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `alumini` (bin "alumini") due to 34 previous errors
[INFO] running `Command { std: "docker" "inspect" "c57e042e76ed5d56ea3c93fb35b13fc0fdb82416c40aabbe2539733ee4120b27", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c57e042e76ed5d56ea3c93fb35b13fc0fdb82416c40aabbe2539733ee4120b27", kill_on_drop: false }`
[INFO] [stdout] c57e042e76ed5d56ea3c93fb35b13fc0fdb82416c40aabbe2539733ee4120b27
