[INFO] cloning repository https://github.com/sharmachait/rdb
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/sharmachait/rdb" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsharmachait%2Frdb", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsharmachait%2Frdb'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] aa6da946c74f1bd69ebc1d8d485d68d1e17819d5
[INFO] testing sharmachait/rdb against 1.94.0 for beta-1.95-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsharmachait%2Frdb" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-2-tc1/source/.cargo/config.toml
[INFO] started tweaking git repo https://github.com/sharmachait/rdb
[INFO] finished tweaking git repo https://github.com/sharmachait/rdb
[INFO] tweaked toml for git repo https://github.com/sharmachait/rdb written to /workspace/builds/worker-2-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/sharmachait/rdb on toolchain 1.94.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.94.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/sharmachait/rdb 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.94.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded fd-lock v4.0.4
[INFO] [stderr]   Downloaded rustyline v17.0.2
[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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.94.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 2e1a6b95cd3e5168880ec8fc403c0007e09bee161efd0144f982ea2043f2281e
[INFO] running `Command { std: "docker" "start" "-a" "2e1a6b95cd3e5168880ec8fc403c0007e09bee161efd0144f982ea2043f2281e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "2e1a6b95cd3e5168880ec8fc403c0007e09bee161efd0144f982ea2043f2281e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2e1a6b95cd3e5168880ec8fc403c0007e09bee161efd0144f982ea2043f2281e", kill_on_drop: false }`
[INFO] [stdout] 2e1a6b95cd3e5168880ec8fc403c0007e09bee161efd0144f982ea2043f2281e
[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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.94.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 88a8602d3bf23cf1cfc41478caa86ebe723e43fb9061cbc0b55c6d8727afe3d3
[INFO] running `Command { std: "docker" "start" "-a" "88a8602d3bf23cf1cfc41478caa86ebe723e43fb9061cbc0b55c6d8727afe3d3", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.177
[INFO] [stderr]    Compiling nix v0.30.1
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling endian-type v0.1.2
[INFO] [stderr]    Compiling log v0.4.28
[INFO] [stderr]    Compiling rustix v1.1.2
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling unicode-width v0.2.2
[INFO] [stderr]    Compiling home v0.5.12
[INFO] [stderr]    Compiling nibble_vec v0.1.0
[INFO] [stderr]    Compiling radix_trie v0.2.1
[INFO] [stderr]    Compiling fd-lock v4.0.4
[INFO] [stderr]    Compiling rustyline v17.0.2
[INFO] [stderr]    Compiling rdb v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `std::any::TypeId`
[INFO] [stdout]  --> src/rdb/process_registers.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::any::TypeId;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process::Process::attach` is unsafe and requires unsafe block
[INFO] [stdout]  --> src/utils/attach.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |         Process::attach(&args[2])
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]   |
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]   = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]  --> src/utils/attach.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub unsafe fn attach(args: Vec<String>) -> Result<Process, String> {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::register_info::User::default_user` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process.rs:91:20
[INFO] [stdout]    |
[INFO] [stdout] 91 |         let data = User::default_user();
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/rdb/process.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     pub unsafe fn attach(pid_arg: &str) -> Result<Process, String> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]    --> src/rdb/process.rs:173:24
[INFO] [stdout]     |
[INFO] [stdout] 173 |                     if let Err(e) = exec_res {
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]     = help: consider replacing the `if let` with a `let`
[INFO] [stdout]     = note: `#[warn(irrefutable_let_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process::Process::handle_register` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process.rs:199:13
[INFO] [stdout]     |
[INFO] [stdout] 199 |             self.handle_register(args);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/process.rs:188:5
[INFO] [stdout]     |
[INFO] [stdout] 188 |     pub unsafe fn dispatch_command(&mut self, command: String) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/rdb/process.rs:193:24
[INFO] [stdout]     |
[INFO] [stdout] 193 |             if let Err(e) = self.wait_on_signal() {
[INFO] [stdout]     |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process::Process::handle_register_read` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process.rs:365:13
[INFO] [stdout]     |
[INFO] [stdout] 365 |             self.handle_register_read(args);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/process.rs:357:5
[INFO] [stdout]     |
[INFO] [stdout] 357 |     unsafe fn handle_register(&mut self, args: Vec<&str>) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process::Process::handle_register_write` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process.rs:367:13
[INFO] [stdout]     |
[INFO] [stdout] 367 |             self.handle_register_write(args);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process::Process::write_to_user_by_register_id` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process.rs:395:19
[INFO] [stdout]     |
[INFO] [stdout] 395 |         let res = self.write_to_user_by_register_id(register.id, value);
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/process.rs:374:5
[INFO] [stdout]     |
[INFO] [stdout] 374 |     unsafe fn handle_register_write(&mut self, args: Vec<&str>) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::ProcRegisters::get_register_val_by_id` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process.rs:423:23
[INFO] [stdout]     |
[INFO] [stdout] 423 |             let val = self.proc_registers.get_register_val_by_id(register.id);
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/process.rs:402:5
[INFO] [stdout]     |
[INFO] [stdout] 402 |     unsafe fn handle_register_read(&mut self, args: Vec<&str>) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::ProcRegisters::write_register` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process.rs:470:26
[INFO] [stdout]     |
[INFO] [stdout] 470 |         let user_bytes = self.proc_registers.write_register(register, val);
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/process.rs:464:5
[INFO] [stdout]     |
[INFO] [stdout] 464 | /     pub unsafe fn write_to_user_by_register_id(
[INFO] [stdout] 465 | |         &mut self,
[INFO] [stdout] 466 | |         id: RegisterId,
[INFO] [stdout] 467 | |         val: RegisterValue,
[INFO] [stdout] 468 | |     ) -> Result<&str, &str> {
[INFO] [stdout]     | |___________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process.rs:479:25
[INFO] [stdout]     |
[INFO] [stdout] 479 |             let bytes = RegisterValue::from_bytes::<u64>(user_bytes.add(offset));
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process.rs:479:58
[INFO] [stdout]     |
[INFO] [stdout] 479 |             let bytes = RegisterValue::from_bytes::<u64>(user_bytes.add(offset));
[INFO] [stdout]     |                                                          ^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::ProcRegisters::get_register_val_by_id` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process.rs:603:23
[INFO] [stdout]     |
[INFO] [stdout] 603 |           let rip_val = self
[INFO] [stdout]     |  _______________________^
[INFO] [stdout] 604 | |             .proc_registers
[INFO] [stdout] 605 | |             .get_register_val_by_id(RegisterId::Rip)
[INFO] [stdout]     | |____________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/process.rs:602:5
[INFO] [stdout]     |
[INFO] [stdout] 602 |     pub unsafe fn get_instruction_pointer_va(&mut self) -> Result<VirtAddr, &str> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::ProcRegisters::get_register_val` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |         self.get_register_val(register)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/rdb/process_registers.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub unsafe fn get_register_val_by_id(&mut self, id: RegisterId) -> Result<RegisterValue, &str> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:24:31
[INFO] [stdout]    |
[INFO] [stdout] 24 |                     let val = RegisterValue::from_bytes::<u8>(bytes.add(offset));
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/rdb/process_registers.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     unsafe fn get_register_val(&mut self, register: &Register) -> Result<RegisterValue, &str> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:24:63
[INFO] [stdout]    |
[INFO] [stdout] 24 |                     let val = RegisterValue::from_bytes::<u8>(bytes.add(offset));
[INFO] [stdout]    |                                                               ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:28:31
[INFO] [stdout]    |
[INFO] [stdout] 28 |                     let val = RegisterValue::from_bytes::<u16>(bytes.add(offset));
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:28:64
[INFO] [stdout]    |
[INFO] [stdout] 28 |                     let val = RegisterValue::from_bytes::<u16>(bytes.add(offset));
[INFO] [stdout]    |                                                                ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:32:31
[INFO] [stdout]    |
[INFO] [stdout] 32 |                     let val = RegisterValue::from_bytes::<u32>(bytes.add(offset));
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:32:64
[INFO] [stdout]    |
[INFO] [stdout] 32 |                     let val = RegisterValue::from_bytes::<u32>(bytes.add(offset));
[INFO] [stdout]    |                                                                ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:36:31
[INFO] [stdout]    |
[INFO] [stdout] 36 |                     let val = RegisterValue::from_bytes::<u64>(bytes.add(offset));
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:36:64
[INFO] [stdout]    |
[INFO] [stdout] 36 |                     let val = RegisterValue::from_bytes::<u64>(bytes.add(offset));
[INFO] [stdout]    |                                                                ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:42:23
[INFO] [stdout]    |
[INFO] [stdout] 42 |             let val = RegisterValue::from_bytes::<f64>(bytes.add(offset));
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:42:56
[INFO] [stdout]    |
[INFO] [stdout] 42 |             let val = RegisterValue::from_bytes::<f64>(bytes.add(offset));
[INFO] [stdout]    |                                                        ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:71:23
[INFO] [stdout]    |
[INFO] [stdout] 71 |             let val = RegisterValue::from_bytes::<[u8; 8]>(bytes.add(offset));
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:71:60
[INFO] [stdout]    |
[INFO] [stdout] 71 |             let val = RegisterValue::from_bytes::<[u8; 8]>(bytes.add(offset));
[INFO] [stdout]    |                                                            ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:74:23
[INFO] [stdout]    |
[INFO] [stdout] 74 |             let val = RegisterValue::from_bytes::<[u8; 16]>(bytes.add(offset));
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:74:61
[INFO] [stdout]    |
[INFO] [stdout] 74 |             let val = RegisterValue::from_bytes::<[u8; 16]>(bytes.add(offset));
[INFO] [stdout]    |                                                             ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:131:37
[INFO] [stdout]     |
[INFO] [stdout] 131 |             RegisterValue::U8(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/process_registers.rs:78:5
[INFO] [stdout]     |
[INFO] [stdout]  78 |     pub unsafe fn write_register(&mut self, register: &Register, val: RegisterValue) -> *mut u8 {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:132:38
[INFO] [stdout]     |
[INFO] [stdout] 132 |             RegisterValue::U16(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:133:38
[INFO] [stdout]     |
[INFO] [stdout] 133 |             RegisterValue::U32(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:134:38
[INFO] [stdout]     |
[INFO] [stdout] 134 |             RegisterValue::U64(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:135:37
[INFO] [stdout]     |
[INFO] [stdout] 135 |             RegisterValue::I8(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:136:38
[INFO] [stdout]     |
[INFO] [stdout] 136 |             RegisterValue::I16(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:137:38
[INFO] [stdout]     |
[INFO] [stdout] 137 |             RegisterValue::I32(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:138:38
[INFO] [stdout]     |
[INFO] [stdout] 138 |             RegisterValue::I64(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:139:40
[INFO] [stdout]     |
[INFO] [stdout] 139 |             RegisterValue::Float(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:140:41
[INFO] [stdout]     |
[INFO] [stdout] 140 |             RegisterValue::Double(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:141:45
[INFO] [stdout]     |
[INFO] [stdout] 141 |             RegisterValue::LongDouble(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:142:41
[INFO] [stdout]     |
[INFO] [stdout] 142 |             RegisterValue::Byte64(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:143:42
[INFO] [stdout]     |
[INFO] [stdout] 143 |             RegisterValue::Byte128(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::copy_nonoverlapping` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:146:9
[INFO] [stdout]     |
[INFO] [stdout] 146 |         std::ptr::copy_nonoverlapping(val_bytes.as_ptr(), user_bytes.add(reg_offset), reg_size);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:146:59
[INFO] [stdout]     |
[INFO] [stdout] 146 |         std::ptr::copy_nonoverlapping(val_bytes.as_ptr(), user_bytes.add(reg_offset), reg_size);
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::zeroed` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:308:27
[INFO] [stdout]     |
[INFO] [stdout] 308 |         let mut ret: To = std::mem::zeroed();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/process_registers.rs:307:5
[INFO] [stdout]     |
[INFO] [stdout] 307 |     pub unsafe fn from_bytes<To>(bytes: *const u8) -> To {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::copy_nonoverlapping` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:309:9
[INFO] [stdout]     |
[INFO] [stdout] 309 |         std::ptr::copy_nonoverlapping(bytes, &mut ret as *mut To as *mut u8, size_of::<To>());
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::transmute_copy` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:315:27
[INFO] [stdout]     |
[INFO] [stdout] 315 |                 let val = std::mem::transmute_copy::<From, f64>(&t);
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/process_registers.rs:312:5
[INFO] [stdout]     |
[INFO] [stdout] 312 |     pub unsafe fn widen<From: 'static>(register: &Register, t: From) -> [u8; 16] {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::to_byte128` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:316:17
[INFO] [stdout]     |
[INFO] [stdout] 316 |                 RegisterValue::to_byte128(val)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::transmute_copy` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:320:33
[INFO] [stdout]     |
[INFO] [stdout] 320 |                     let bytes = std::mem::transmute_copy::<From, [u8; 10]>(&t);
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::transmute_copy` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:325:27
[INFO] [stdout]     |
[INFO] [stdout] 325 |                 let val = std::mem::transmute_copy::<From, f64>(&t);
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::to_byte128` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:331:17
[INFO] [stdout]     |
[INFO] [stdout] 331 |                 RegisterValue::to_byte128(t)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::transmute_copy` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:336:31
[INFO] [stdout]     |
[INFO] [stdout] 336 |                     let val = std::mem::transmute_copy::<From, i16>(&t);
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::to_byte128` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:337:21
[INFO] [stdout]     |
[INFO] [stdout] 337 |                     RegisterValue::to_byte128(val)
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::transmute_copy` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:340:31
[INFO] [stdout]     |
[INFO] [stdout] 340 |                     let val = std::mem::transmute_copy::<From, i32>(&t);
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::to_byte128` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:341:21
[INFO] [stdout]     |
[INFO] [stdout] 341 |                     RegisterValue::to_byte128(val)
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::transmute_copy` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:344:31
[INFO] [stdout]     |
[INFO] [stdout] 344 |                     let val = std::mem::transmute_copy::<From, i64>(&t);
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::to_byte128` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:345:21
[INFO] [stdout]     |
[INFO] [stdout] 345 |                     RegisterValue::to_byte128(val)
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::to_byte128` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:347:22
[INFO] [stdout]     |
[INFO] [stdout] 347 |                 _ => RegisterValue::to_byte128(t),
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::to_byte128` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:350:13
[INFO] [stdout]     |
[INFO] [stdout] 350 |             RegisterValue::to_byte128(t)
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::copy_nonoverlapping` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:362:9
[INFO] [stdout]     |
[INFO] [stdout] 362 |         std::ptr::copy_nonoverlapping(ptr, result.as_mut_ptr(), size.min(16));
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/process_registers.rs:358:5
[INFO] [stdout]     |
[INFO] [stdout] 358 |     unsafe fn to_byte128<From>(bytes: From) -> [u8; 16] {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::zeroed` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/register_info.rs:185:13
[INFO] [stdout]     |
[INFO] [stdout] 185 |             std::mem::zeroed()
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/register_info.rs:183:5
[INFO] [stdout]     |
[INFO] [stdout] 183 |     pub unsafe fn default_user() -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `write_gprs` is never used
[INFO] [stdout]    --> src/rdb/process.rs:510:8
[INFO] [stdout]     |
[INFO] [stdout]  61 | impl Process {
[INFO] [stdout]     | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 510 |     fn write_gprs(&self) -> Result<&str, &str> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/rdb/process.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |         ptrace::detach(self.pid, None);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 45 |         let _ = ptrace::detach(self.pid, None);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/rdb/process.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 |         kill(self.pid, Signal::SIGCONT);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 46 |         let _ = kill(self.pid, Signal::SIGCONT);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/rdb/process.rs:55:17
[INFO] [stdout]    |
[INFO] [stdout] 55 |                 waitpid(self.pid, None);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 55 |                 let _ = waitpid(self.pid, None);
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/rdb/process.rs:252:17
[INFO] [stdout]     |
[INFO] [stdout] 252 |                 bp.enable(pid);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 252 |                 let _ = bp.enable(pid);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/rdb/stop_points/breakpoint.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 | /         ptrace::write(
[INFO] [stdout] 40 | |             pid,
[INFO] [stdout] 41 | |             self.virtual_address.addr() as usize as *mut _,
[INFO] [stdout] 42 | |             data_with_int3,
[INFO] [stdout] ...  |
[INFO] [stdout] 50 | |         });
[INFO] [stdout]    | |__________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 39 |         let _ = ptrace::write(
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/rdb/stop_points/breakpoint.rs:67:9
[INFO] [stdout]    |
[INFO] [stdout] 67 | /         ptrace::write(
[INFO] [stdout] 68 | |             pid,
[INFO] [stdout] 69 | |             self.virtual_address.addr() as usize as *mut _,
[INFO] [stdout] 70 | |             data_restored,
[INFO] [stdout] ...  |
[INFO] [stdout] 78 | |         });
[INFO] [stdout]    | |__________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 67 |         let _ = ptrace::write(
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/rdb/stop_points/stoppoint_collection.rs:52:13
[INFO] [stdout]    |
[INFO] [stdout] 52 |             sp.disable(pid);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 52 |             let _ = sp.disable(pid);
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/rdb/stop_points/stoppoint_collection.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             sp.disable(pid);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 65 |             let _ = sp.disable(pid);
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rdb::rdb::process_registers::RegisterValue`
[INFO] [stdout]  --> src/main.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use rdb::rdb::process_registers::RegisterValue;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rdb::rdb::register_info::RegisterId`
[INFO] [stdout]  --> src/main.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use rdb::rdb::register_info::RegisterId;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/main.rs:51:16
[INFO] [stdout]    |
[INFO] [stdout] 51 |     if let Err(e) = rl.load_history(".history") {
[INFO] [stdout]    |                ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 7.99s
[INFO] running `Command { std: "docker" "inspect" "88a8602d3bf23cf1cfc41478caa86ebe723e43fb9061cbc0b55c6d8727afe3d3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "88a8602d3bf23cf1cfc41478caa86ebe723e43fb9061cbc0b55c6d8727afe3d3", kill_on_drop: false }`
[INFO] [stdout] 88a8602d3bf23cf1cfc41478caa86ebe723e43fb9061cbc0b55c6d8727afe3d3
[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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.94.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 956f6a82c53eca7b3ffc512a8904748cd0304f80b6837a106e032080c3c5b001
[INFO] running `Command { std: "docker" "start" "-a" "956f6a82c53eca7b3ffc512a8904748cd0304f80b6837a106e032080c3c5b001", kill_on_drop: false }`
[INFO] [stdout] warning: unused import: `std::any::TypeId`
[INFO] [stdout]  --> src/rdb/process_registers.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::any::TypeId;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process::Process::attach` is unsafe and requires unsafe block
[INFO] [stdout]  --> src/utils/attach.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |         Process::attach(&args[2])
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]   |
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]   = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]  --> src/utils/attach.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub unsafe fn attach(args: Vec<String>) -> Result<Process, String> {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::register_info::User::default_user` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process.rs:91:20
[INFO] [stdout]    |
[INFO] [stdout] 91 |         let data = User::default_user();
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/rdb/process.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     pub unsafe fn attach(pid_arg: &str) -> Result<Process, String> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]    --> src/rdb/process.rs:173:24
[INFO] [stdout]     |
[INFO] [stdout] 173 |                     if let Err(e) = exec_res {
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]     = help: consider replacing the `if let` with a `let`
[INFO] [stdout]     = note: `#[warn(irrefutable_let_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process::Process::handle_register` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process.rs:199:13
[INFO] [stdout]     |
[INFO] [stdout] 199 |             self.handle_register(args);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/process.rs:188:5
[INFO] [stdout]     |
[INFO] [stdout] 188 |     pub unsafe fn dispatch_command(&mut self, command: String) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/rdb/process.rs:193:24
[INFO] [stdout]     |
[INFO] [stdout] 193 |             if let Err(e) = self.wait_on_signal() {
[INFO] [stdout]     |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process::Process::handle_register_read` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process.rs:365:13
[INFO] [stdout]     |
[INFO] [stdout] 365 |             self.handle_register_read(args);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/process.rs:357:5
[INFO] [stdout]     |
[INFO] [stdout] 357 |     unsafe fn handle_register(&mut self, args: Vec<&str>) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process::Process::handle_register_write` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process.rs:367:13
[INFO] [stdout]     |
[INFO] [stdout] 367 |             self.handle_register_write(args);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process::Process::write_to_user_by_register_id` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process.rs:395:19
[INFO] [stdout]     |
[INFO] [stdout] 395 |         let res = self.write_to_user_by_register_id(register.id, value);
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/process.rs:374:5
[INFO] [stdout]     |
[INFO] [stdout] 374 |     unsafe fn handle_register_write(&mut self, args: Vec<&str>) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::ProcRegisters::get_register_val_by_id` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process.rs:423:23
[INFO] [stdout]     |
[INFO] [stdout] 423 |             let val = self.proc_registers.get_register_val_by_id(register.id);
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/process.rs:402:5
[INFO] [stdout]     |
[INFO] [stdout] 402 |     unsafe fn handle_register_read(&mut self, args: Vec<&str>) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::ProcRegisters::write_register` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process.rs:470:26
[INFO] [stdout]     |
[INFO] [stdout] 470 |         let user_bytes = self.proc_registers.write_register(register, val);
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/process.rs:464:5
[INFO] [stdout]     |
[INFO] [stdout] 464 | /     pub unsafe fn write_to_user_by_register_id(
[INFO] [stdout] 465 | |         &mut self,
[INFO] [stdout] 466 | |         id: RegisterId,
[INFO] [stdout] 467 | |         val: RegisterValue,
[INFO] [stdout] 468 | |     ) -> Result<&str, &str> {
[INFO] [stdout]     | |___________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process.rs:479:25
[INFO] [stdout]     |
[INFO] [stdout] 479 |             let bytes = RegisterValue::from_bytes::<u64>(user_bytes.add(offset));
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process.rs:479:58
[INFO] [stdout]     |
[INFO] [stdout] 479 |             let bytes = RegisterValue::from_bytes::<u64>(user_bytes.add(offset));
[INFO] [stdout]     |                                                          ^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::ProcRegisters::get_register_val_by_id` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process.rs:603:23
[INFO] [stdout]     |
[INFO] [stdout] 603 |           let rip_val = self
[INFO] [stdout]     |  _______________________^
[INFO] [stdout] 604 | |             .proc_registers
[INFO] [stdout] 605 | |             .get_register_val_by_id(RegisterId::Rip)
[INFO] [stdout]     | |____________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/process.rs:602:5
[INFO] [stdout]     |
[INFO] [stdout] 602 |     pub unsafe fn get_instruction_pointer_va(&mut self) -> Result<VirtAddr, &str> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::ProcRegisters::get_register_val` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |         self.get_register_val(register)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/rdb/process_registers.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub unsafe fn get_register_val_by_id(&mut self, id: RegisterId) -> Result<RegisterValue, &str> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:24:31
[INFO] [stdout]    |
[INFO] [stdout] 24 |                     let val = RegisterValue::from_bytes::<u8>(bytes.add(offset));
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/rdb/process_registers.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     unsafe fn get_register_val(&mut self, register: &Register) -> Result<RegisterValue, &str> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:24:63
[INFO] [stdout]    |
[INFO] [stdout] 24 |                     let val = RegisterValue::from_bytes::<u8>(bytes.add(offset));
[INFO] [stdout]    |                                                               ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:28:31
[INFO] [stdout]    |
[INFO] [stdout] 28 |                     let val = RegisterValue::from_bytes::<u16>(bytes.add(offset));
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:28:64
[INFO] [stdout]    |
[INFO] [stdout] 28 |                     let val = RegisterValue::from_bytes::<u16>(bytes.add(offset));
[INFO] [stdout]    |                                                                ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:32:31
[INFO] [stdout]    |
[INFO] [stdout] 32 |                     let val = RegisterValue::from_bytes::<u32>(bytes.add(offset));
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:32:64
[INFO] [stdout]    |
[INFO] [stdout] 32 |                     let val = RegisterValue::from_bytes::<u32>(bytes.add(offset));
[INFO] [stdout]    |                                                                ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:36:31
[INFO] [stdout]    |
[INFO] [stdout] 36 |                     let val = RegisterValue::from_bytes::<u64>(bytes.add(offset));
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:36:64
[INFO] [stdout]    |
[INFO] [stdout] 36 |                     let val = RegisterValue::from_bytes::<u64>(bytes.add(offset));
[INFO] [stdout]    |                                                                ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:42:23
[INFO] [stdout]    |
[INFO] [stdout] 42 |             let val = RegisterValue::from_bytes::<f64>(bytes.add(offset));
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:42:56
[INFO] [stdout]    |
[INFO] [stdout] 42 |             let val = RegisterValue::from_bytes::<f64>(bytes.add(offset));
[INFO] [stdout]    |                                                        ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:71:23
[INFO] [stdout]    |
[INFO] [stdout] 71 |             let val = RegisterValue::from_bytes::<[u8; 8]>(bytes.add(offset));
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:71:60
[INFO] [stdout]    |
[INFO] [stdout] 71 |             let val = RegisterValue::from_bytes::<[u8; 8]>(bytes.add(offset));
[INFO] [stdout]    |                                                            ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:74:23
[INFO] [stdout]    |
[INFO] [stdout] 74 |             let val = RegisterValue::from_bytes::<[u8; 16]>(bytes.add(offset));
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:74:61
[INFO] [stdout]    |
[INFO] [stdout] 74 |             let val = RegisterValue::from_bytes::<[u8; 16]>(bytes.add(offset));
[INFO] [stdout]    |                                                             ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:131:37
[INFO] [stdout]     |
[INFO] [stdout] 131 |             RegisterValue::U8(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/process_registers.rs:78:5
[INFO] [stdout]     |
[INFO] [stdout]  78 |     pub unsafe fn write_register(&mut self, register: &Register, val: RegisterValue) -> *mut u8 {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:132:38
[INFO] [stdout]     |
[INFO] [stdout] 132 |             RegisterValue::U16(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:133:38
[INFO] [stdout]     |
[INFO] [stdout] 133 |             RegisterValue::U32(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:134:38
[INFO] [stdout]     |
[INFO] [stdout] 134 |             RegisterValue::U64(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:135:37
[INFO] [stdout]     |
[INFO] [stdout] 135 |             RegisterValue::I8(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:136:38
[INFO] [stdout]     |
[INFO] [stdout] 136 |             RegisterValue::I16(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:137:38
[INFO] [stdout]     |
[INFO] [stdout] 137 |             RegisterValue::I32(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:138:38
[INFO] [stdout]     |
[INFO] [stdout] 138 |             RegisterValue::I64(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:139:40
[INFO] [stdout]     |
[INFO] [stdout] 139 |             RegisterValue::Float(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:140:41
[INFO] [stdout]     |
[INFO] [stdout] 140 |             RegisterValue::Double(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:141:45
[INFO] [stdout]     |
[INFO] [stdout] 141 |             RegisterValue::LongDouble(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:142:41
[INFO] [stdout]     |
[INFO] [stdout] 142 |             RegisterValue::Byte64(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:143:42
[INFO] [stdout]     |
[INFO] [stdout] 143 |             RegisterValue::Byte128(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::copy_nonoverlapping` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:146:9
[INFO] [stdout]     |
[INFO] [stdout] 146 |         std::ptr::copy_nonoverlapping(val_bytes.as_ptr(), user_bytes.add(reg_offset), reg_size);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:146:59
[INFO] [stdout]     |
[INFO] [stdout] 146 |         std::ptr::copy_nonoverlapping(val_bytes.as_ptr(), user_bytes.add(reg_offset), reg_size);
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::zeroed` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:308:27
[INFO] [stdout]     |
[INFO] [stdout] 308 |         let mut ret: To = std::mem::zeroed();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/process_registers.rs:307:5
[INFO] [stdout]     |
[INFO] [stdout] 307 |     pub unsafe fn from_bytes<To>(bytes: *const u8) -> To {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::copy_nonoverlapping` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:309:9
[INFO] [stdout]     |
[INFO] [stdout] 309 |         std::ptr::copy_nonoverlapping(bytes, &mut ret as *mut To as *mut u8, size_of::<To>());
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::transmute_copy` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:315:27
[INFO] [stdout]     |
[INFO] [stdout] 315 |                 let val = std::mem::transmute_copy::<From, f64>(&t);
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/process_registers.rs:312:5
[INFO] [stdout]     |
[INFO] [stdout] 312 |     pub unsafe fn widen<From: 'static>(register: &Register, t: From) -> [u8; 16] {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::to_byte128` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:316:17
[INFO] [stdout]     |
[INFO] [stdout] 316 |                 RegisterValue::to_byte128(val)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::transmute_copy` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:320:33
[INFO] [stdout]     |
[INFO] [stdout] 320 |                     let bytes = std::mem::transmute_copy::<From, [u8; 10]>(&t);
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::transmute_copy` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:325:27
[INFO] [stdout]     |
[INFO] [stdout] 325 |                 let val = std::mem::transmute_copy::<From, f64>(&t);
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::to_byte128` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:331:17
[INFO] [stdout]     |
[INFO] [stdout] 331 |                 RegisterValue::to_byte128(t)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::transmute_copy` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:336:31
[INFO] [stdout]     |
[INFO] [stdout] 336 |                     let val = std::mem::transmute_copy::<From, i16>(&t);
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::to_byte128` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:337:21
[INFO] [stdout]     |
[INFO] [stdout] 337 |                     RegisterValue::to_byte128(val)
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling rdb v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::transmute_copy` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:340:31
[INFO] [stdout]     |
[INFO] [stdout] 340 |                     let val = std::mem::transmute_copy::<From, i32>(&t);
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::to_byte128` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:341:21
[INFO] [stdout]     |
[INFO] [stdout] 341 |                     RegisterValue::to_byte128(val)
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::transmute_copy` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:344:31
[INFO] [stdout]     |
[INFO] [stdout] 344 |                     let val = std::mem::transmute_copy::<From, i64>(&t);
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::to_byte128` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:345:21
[INFO] [stdout]     |
[INFO] [stdout] 345 |                     RegisterValue::to_byte128(val)
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::to_byte128` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:347:22
[INFO] [stdout]     |
[INFO] [stdout] 347 |                 _ => RegisterValue::to_byte128(t),
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::to_byte128` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:350:13
[INFO] [stdout]     |
[INFO] [stdout] 350 |             RegisterValue::to_byte128(t)
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::copy_nonoverlapping` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:362:9
[INFO] [stdout]     |
[INFO] [stdout] 362 |         std::ptr::copy_nonoverlapping(ptr, result.as_mut_ptr(), size.min(16));
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/process_registers.rs:358:5
[INFO] [stdout]     |
[INFO] [stdout] 358 |     unsafe fn to_byte128<From>(bytes: From) -> [u8; 16] {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::zeroed` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/register_info.rs:185:13
[INFO] [stdout]     |
[INFO] [stdout] 185 |             std::mem::zeroed()
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/register_info.rs:183:5
[INFO] [stdout]     |
[INFO] [stdout] 183 |     pub unsafe fn default_user() -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `write_gprs` is never used
[INFO] [stdout]    --> src/rdb/process.rs:510:8
[INFO] [stdout]     |
[INFO] [stdout]  61 | impl Process {
[INFO] [stdout]     | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 510 |     fn write_gprs(&self) -> Result<&str, &str> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/rdb/process.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |         ptrace::detach(self.pid, None);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 45 |         let _ = ptrace::detach(self.pid, None);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/rdb/process.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 |         kill(self.pid, Signal::SIGCONT);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 46 |         let _ = kill(self.pid, Signal::SIGCONT);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/rdb/process.rs:55:17
[INFO] [stdout]    |
[INFO] [stdout] 55 |                 waitpid(self.pid, None);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 55 |                 let _ = waitpid(self.pid, None);
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/rdb/process.rs:252:17
[INFO] [stdout]     |
[INFO] [stdout] 252 |                 bp.enable(pid);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 252 |                 let _ = bp.enable(pid);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/rdb/stop_points/breakpoint.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 | /         ptrace::write(
[INFO] [stdout] 40 | |             pid,
[INFO] [stdout] 41 | |             self.virtual_address.addr() as usize as *mut _,
[INFO] [stdout] 42 | |             data_with_int3,
[INFO] [stdout] ...  |
[INFO] [stdout] 50 | |         });
[INFO] [stdout]    | |__________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 39 |         let _ = ptrace::write(
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/rdb/stop_points/breakpoint.rs:67:9
[INFO] [stdout]    |
[INFO] [stdout] 67 | /         ptrace::write(
[INFO] [stdout] 68 | |             pid,
[INFO] [stdout] 69 | |             self.virtual_address.addr() as usize as *mut _,
[INFO] [stdout] 70 | |             data_restored,
[INFO] [stdout] ...  |
[INFO] [stdout] 78 | |         });
[INFO] [stdout]    | |__________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 67 |         let _ = ptrace::write(
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/rdb/stop_points/stoppoint_collection.rs:52:13
[INFO] [stdout]    |
[INFO] [stdout] 52 |             sp.disable(pid);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 52 |             let _ = sp.disable(pid);
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/rdb/stop_points/stoppoint_collection.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             sp.disable(pid);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 65 |             let _ = sp.disable(pid);
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rdb::rdb::process_registers::RegisterValue`
[INFO] [stdout]  --> src/main.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use rdb::rdb::process_registers::RegisterValue;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rdb::rdb::register_info::RegisterId`
[INFO] [stdout]  --> src/main.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use rdb::rdb::register_info::RegisterId;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/main.rs:51:16
[INFO] [stdout]    |
[INFO] [stdout] 51 |     if let Err(e) = rl.load_history(".history") {
[INFO] [stdout]    |                ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rdb::rdb::process_registers::RegisterValue`
[INFO] [stdout]  --> src/main.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use rdb::rdb::process_registers::RegisterValue;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rdb::rdb::register_info::RegisterId`
[INFO] [stdout]  --> src/main.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use rdb::rdb::register_info::RegisterId;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]   --> src/main.rs:51:16
[INFO] [stdout]    |
[INFO] [stdout] 51 |     if let Err(e) = rl.load_history(".history") {
[INFO] [stdout]    |                ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::any::TypeId`
[INFO] [stdout]  --> src/rdb/process_registers.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::any::TypeId;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nix::libc::pid_t`
[INFO] [stdout]  --> tests/rdb_integ_test.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use nix::libc::pid_t;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nix::sys::ptrace`
[INFO] [stdout]  --> tests/rdb_integ_test.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use nix::sys::ptrace;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nix::sys::wait::waitpid`
[INFO] [stdout]  --> tests/rdb_integ_test.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use nix::sys::wait::waitpid;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::process`
[INFO] [stdout]   --> tests/rdb_integ_test.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use std::process;
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]    --> tests/rdb_integ_test.rs:101:20
[INFO] [stdout]     |
[INFO] [stdout] 101 |                 if let Err(e) = exec_res {
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]     = help: consider replacing the `if let` with a `let`
[INFO] [stdout]     = note: `#[warn(irrefutable_let_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process::Process::attach` is unsafe and requires unsafe block
[INFO] [stdout]  --> src/utils/attach.rs:7:9
[INFO] [stdout]   |
[INFO] [stdout] 7 |         Process::attach(&args[2])
[INFO] [stdout]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]   |
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]   = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]  --> src/utils/attach.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub unsafe fn attach(args: Vec<String>) -> Result<Process, String> {
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::register_info::User::default_user` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process.rs:91:20
[INFO] [stdout]    |
[INFO] [stdout] 91 |         let data = User::default_user();
[INFO] [stdout]    |                    ^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/rdb/process.rs:76:5
[INFO] [stdout]    |
[INFO] [stdout] 76 |     pub unsafe fn attach(pid_arg: &str) -> Result<Process, String> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: irrefutable `if let` pattern
[INFO] [stdout]    --> src/rdb/process.rs:173:24
[INFO] [stdout]     |
[INFO] [stdout] 173 |                     if let Err(e) = exec_res {
[INFO] [stdout]     |                        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stdout]     = help: consider replacing the `if let` with a `let`
[INFO] [stdout]     = note: `#[warn(irrefutable_let_patterns)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process::Process::handle_register` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process.rs:199:13
[INFO] [stdout]     |
[INFO] [stdout] 199 |             self.handle_register(args);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/process.rs:188:5
[INFO] [stdout]     |
[INFO] [stdout] 188 |     pub unsafe fn dispatch_command(&mut self, command: String) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/rdb/process.rs:193:24
[INFO] [stdout]     |
[INFO] [stdout] 193 |             if let Err(e) = self.wait_on_signal() {
[INFO] [stdout]     |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process::Process::handle_register_read` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process.rs:365:13
[INFO] [stdout]     |
[INFO] [stdout] 365 |             self.handle_register_read(args);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/process.rs:357:5
[INFO] [stdout]     |
[INFO] [stdout] 357 |     unsafe fn handle_register(&mut self, args: Vec<&str>) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process::Process::handle_register_write` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process.rs:367:13
[INFO] [stdout]     |
[INFO] [stdout] 367 |             self.handle_register_write(args);
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process::Process::write_to_user_by_register_id` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process.rs:395:19
[INFO] [stdout]     |
[INFO] [stdout] 395 |         let res = self.write_to_user_by_register_id(register.id, value);
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/process.rs:374:5
[INFO] [stdout]     |
[INFO] [stdout] 374 |     unsafe fn handle_register_write(&mut self, args: Vec<&str>) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::ProcRegisters::get_register_val_by_id` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process.rs:423:23
[INFO] [stdout]     |
[INFO] [stdout] 423 |             let val = self.proc_registers.get_register_val_by_id(register.id);
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/process.rs:402:5
[INFO] [stdout]     |
[INFO] [stdout] 402 |     unsafe fn handle_register_read(&mut self, args: Vec<&str>) {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::ProcRegisters::write_register` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process.rs:470:26
[INFO] [stdout]     |
[INFO] [stdout] 470 |         let user_bytes = self.proc_registers.write_register(register, val);
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/process.rs:464:5
[INFO] [stdout]     |
[INFO] [stdout] 464 | /     pub unsafe fn write_to_user_by_register_id(
[INFO] [stdout] 465 | |         &mut self,
[INFO] [stdout] 466 | |         id: RegisterId,
[INFO] [stdout] 467 | |         val: RegisterValue,
[INFO] [stdout] 468 | |     ) -> Result<&str, &str> {
[INFO] [stdout]     | |___________________________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process.rs:479:25
[INFO] [stdout]     |
[INFO] [stdout] 479 |             let bytes = RegisterValue::from_bytes::<u64>(user_bytes.add(offset));
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process.rs:479:58
[INFO] [stdout]     |
[INFO] [stdout] 479 |             let bytes = RegisterValue::from_bytes::<u64>(user_bytes.add(offset));
[INFO] [stdout]     |                                                          ^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::ProcRegisters::get_register_val_by_id` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process.rs:603:23
[INFO] [stdout]     |
[INFO] [stdout] 603 |           let rip_val = self
[INFO] [stdout]     |  _______________________^
[INFO] [stdout] 604 | |             .proc_registers
[INFO] [stdout] 605 | |             .get_register_val_by_id(RegisterId::Rip)
[INFO] [stdout]     | |____________________________________________________^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/process.rs:602:5
[INFO] [stdout]     |
[INFO] [stdout] 602 |     pub unsafe fn get_instruction_pointer_va(&mut self) -> Result<VirtAddr, &str> {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::ProcRegisters::get_register_val` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:16:9
[INFO] [stdout]    |
[INFO] [stdout] 16 |         self.get_register_val(register)
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/rdb/process_registers.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 14 |     pub unsafe fn get_register_val_by_id(&mut self, id: RegisterId) -> Result<RegisterValue, &str> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:24:31
[INFO] [stdout]    |
[INFO] [stdout] 24 |                     let val = RegisterValue::from_bytes::<u8>(bytes.add(offset));
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]   --> src/rdb/process_registers.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout] 18 |     unsafe fn get_register_val(&mut self, register: &Register) -> Result<RegisterValue, &str> {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:24:63
[INFO] [stdout]    |
[INFO] [stdout] 24 |                     let val = RegisterValue::from_bytes::<u8>(bytes.add(offset));
[INFO] [stdout]    |                                                               ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:28:31
[INFO] [stdout]    |
[INFO] [stdout] 28 |                     let val = RegisterValue::from_bytes::<u16>(bytes.add(offset));
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:28:64
[INFO] [stdout]    |
[INFO] [stdout] 28 |                     let val = RegisterValue::from_bytes::<u16>(bytes.add(offset));
[INFO] [stdout]    |                                                                ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:32:31
[INFO] [stdout]    |
[INFO] [stdout] 32 |                     let val = RegisterValue::from_bytes::<u32>(bytes.add(offset));
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:32:64
[INFO] [stdout]    |
[INFO] [stdout] 32 |                     let val = RegisterValue::from_bytes::<u32>(bytes.add(offset));
[INFO] [stdout]    |                                                                ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:36:31
[INFO] [stdout]    |
[INFO] [stdout] 36 |                     let val = RegisterValue::from_bytes::<u64>(bytes.add(offset));
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:36:64
[INFO] [stdout]    |
[INFO] [stdout] 36 |                     let val = RegisterValue::from_bytes::<u64>(bytes.add(offset));
[INFO] [stdout]    |                                                                ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:42:23
[INFO] [stdout]    |
[INFO] [stdout] 42 |             let val = RegisterValue::from_bytes::<f64>(bytes.add(offset));
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:42:56
[INFO] [stdout]    |
[INFO] [stdout] 42 |             let val = RegisterValue::from_bytes::<f64>(bytes.add(offset));
[INFO] [stdout]    |                                                        ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:71:23
[INFO] [stdout]    |
[INFO] [stdout] 71 |             let val = RegisterValue::from_bytes::<[u8; 8]>(bytes.add(offset));
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:71:60
[INFO] [stdout]    |
[INFO] [stdout] 71 |             let val = RegisterValue::from_bytes::<[u8; 8]>(bytes.add(offset));
[INFO] [stdout]    |                                                            ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:74:23
[INFO] [stdout]    |
[INFO] [stdout] 74 |             let val = RegisterValue::from_bytes::<[u8; 16]>(bytes.add(offset));
[INFO] [stdout]    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]   --> src/rdb/process_registers.rs:74:61
[INFO] [stdout]    |
[INFO] [stdout] 74 |             let val = RegisterValue::from_bytes::<[u8; 16]>(bytes.add(offset));
[INFO] [stdout]    |                                                             ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]    |
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:131:37
[INFO] [stdout]     |
[INFO] [stdout] 131 |             RegisterValue::U8(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/process_registers.rs:78:5
[INFO] [stdout]     |
[INFO] [stdout]  78 |     pub unsafe fn write_register(&mut self, register: &Register, val: RegisterValue) -> *mut u8 {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:132:38
[INFO] [stdout]     |
[INFO] [stdout] 132 |             RegisterValue::U16(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:133:38
[INFO] [stdout]     |
[INFO] [stdout] 133 |             RegisterValue::U32(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:134:38
[INFO] [stdout]     |
[INFO] [stdout] 134 |             RegisterValue::U64(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:135:37
[INFO] [stdout]     |
[INFO] [stdout] 135 |             RegisterValue::I8(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:136:38
[INFO] [stdout]     |
[INFO] [stdout] 136 |             RegisterValue::I16(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:137:38
[INFO] [stdout]     |
[INFO] [stdout] 137 |             RegisterValue::I32(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:138:38
[INFO] [stdout]     |
[INFO] [stdout] 138 |             RegisterValue::I64(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:139:40
[INFO] [stdout]     |
[INFO] [stdout] 139 |             RegisterValue::Float(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:140:41
[INFO] [stdout]     |
[INFO] [stdout] 140 |             RegisterValue::Double(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:141:45
[INFO] [stdout]     |
[INFO] [stdout] 141 |             RegisterValue::LongDouble(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:142:41
[INFO] [stdout]     |
[INFO] [stdout] 142 |             RegisterValue::Byte64(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:143:42
[INFO] [stdout]     |
[INFO] [stdout] 143 |             RegisterValue::Byte128(v) => RegisterValue::widen(register, v),
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::copy_nonoverlapping` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:146:9
[INFO] [stdout]     |
[INFO] [stdout] 146 |         std::ptr::copy_nonoverlapping(val_bytes.as_ptr(), user_bytes.add(reg_offset), reg_size);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:146:59
[INFO] [stdout]     |
[INFO] [stdout] 146 |         std::ptr::copy_nonoverlapping(val_bytes.as_ptr(), user_bytes.add(reg_offset), reg_size);
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::zeroed` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:308:27
[INFO] [stdout]     |
[INFO] [stdout] 308 |         let mut ret: To = std::mem::zeroed();
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/process_registers.rs:307:5
[INFO] [stdout]     |
[INFO] [stdout] 307 |     pub unsafe fn from_bytes<To>(bytes: *const u8) -> To {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::copy_nonoverlapping` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:309:9
[INFO] [stdout]     |
[INFO] [stdout] 309 |         std::ptr::copy_nonoverlapping(bytes, &mut ret as *mut To as *mut u8, size_of::<To>());
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::transmute_copy` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:315:27
[INFO] [stdout]     |
[INFO] [stdout] 315 |                 let val = std::mem::transmute_copy::<From, f64>(&t);
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/process_registers.rs:312:5
[INFO] [stdout]     |
[INFO] [stdout] 312 |     pub unsafe fn widen<From: 'static>(register: &Register, t: From) -> [u8; 16] {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::to_byte128` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:316:17
[INFO] [stdout]     |
[INFO] [stdout] 316 |                 RegisterValue::to_byte128(val)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::transmute_copy` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:320:33
[INFO] [stdout]     |
[INFO] [stdout] 320 |                     let bytes = std::mem::transmute_copy::<From, [u8; 10]>(&t);
[INFO] [stdout]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::transmute_copy` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:325:27
[INFO] [stdout]     |
[INFO] [stdout] 325 |                 let val = std::mem::transmute_copy::<From, f64>(&t);
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::to_byte128` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:331:17
[INFO] [stdout]     |
[INFO] [stdout] 331 |                 RegisterValue::to_byte128(t)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::transmute_copy` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:336:31
[INFO] [stdout]     |
[INFO] [stdout] 336 |                     let val = std::mem::transmute_copy::<From, i16>(&t);
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::to_byte128` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:337:21
[INFO] [stdout]     |
[INFO] [stdout] 337 |                     RegisterValue::to_byte128(val)
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::transmute_copy` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:340:31
[INFO] [stdout]     |
[INFO] [stdout] 340 |                     let val = std::mem::transmute_copy::<From, i32>(&t);
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::to_byte128` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:341:21
[INFO] [stdout]     |
[INFO] [stdout] 341 |                     RegisterValue::to_byte128(val)
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::transmute_copy` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:344:31
[INFO] [stdout]     |
[INFO] [stdout] 344 |                     let val = std::mem::transmute_copy::<From, i64>(&t);
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::to_byte128` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:345:21
[INFO] [stdout]     |
[INFO] [stdout] 345 |                     RegisterValue::to_byte128(val)
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::to_byte128` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:347:22
[INFO] [stdout]     |
[INFO] [stdout] 347 |                 _ => RegisterValue::to_byte128(t),
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::to_byte128` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:350:13
[INFO] [stdout]     |
[INFO] [stdout] 350 |             RegisterValue::to_byte128(t)
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::copy_nonoverlapping` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/process_registers.rs:362:9
[INFO] [stdout]     |
[INFO] [stdout] 362 |         std::ptr::copy_nonoverlapping(ptr, result.as_mut_ptr(), size.min(16));
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/process_registers.rs:358:5
[INFO] [stdout]     |
[INFO] [stdout] 358 |     unsafe fn to_byte128<From>(bytes: From) -> [u8; 16] {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::mem::zeroed` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/rdb/register_info.rs:185:13
[INFO] [stdout]     |
[INFO] [stdout] 185 |             std::mem::zeroed()
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/rdb/register_info.rs:183:5
[INFO] [stdout]     |
[INFO] [stdout] 183 |     pub unsafe fn default_user() -> Self {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `write_gprs` is never used
[INFO] [stdout]    --> src/rdb/process.rs:510:8
[INFO] [stdout]     |
[INFO] [stdout]  61 | impl Process {
[INFO] [stdout]     | ------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 510 |     fn write_gprs(&self) -> Result<&str, &str> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/rdb/process.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |         ptrace::detach(self.pid, None);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 45 |         let _ = ptrace::detach(self.pid, None);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/rdb/process.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 |         kill(self.pid, Signal::SIGCONT);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 46 |         let _ = kill(self.pid, Signal::SIGCONT);
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/rdb/process.rs:55:17
[INFO] [stdout]    |
[INFO] [stdout] 55 |                 waitpid(self.pid, None);
[INFO] [stdout]    |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 55 |                 let _ = waitpid(self.pid, None);
[INFO] [stdout]    |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]    --> src/rdb/process.rs:252:17
[INFO] [stdout]     |
[INFO] [stdout] 252 |                 bp.enable(pid);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 252 |                 let _ = bp.enable(pid);
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/rdb/stop_points/breakpoint.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 | /         ptrace::write(
[INFO] [stdout] 40 | |             pid,
[INFO] [stdout] 41 | |             self.virtual_address.addr() as usize as *mut _,
[INFO] [stdout] 42 | |             data_with_int3,
[INFO] [stdout] ...  |
[INFO] [stdout] 50 | |         });
[INFO] [stdout]    | |__________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 39 |         let _ = ptrace::write(
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/rdb/stop_points/breakpoint.rs:67:9
[INFO] [stdout]    |
[INFO] [stdout] 67 | /         ptrace::write(
[INFO] [stdout] 68 | |             pid,
[INFO] [stdout] 69 | |             self.virtual_address.addr() as usize as *mut _,
[INFO] [stdout] 70 | |             data_restored,
[INFO] [stdout] ...  |
[INFO] [stdout] 78 | |         });
[INFO] [stdout]    | |__________^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 67 |         let _ = ptrace::write(
[INFO] [stdout]    |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/rdb/stop_points/stoppoint_collection.rs:52:13
[INFO] [stdout]    |
[INFO] [stdout] 52 |             sp.disable(pid);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 52 |             let _ = sp.disable(pid);
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `Result` that must be used
[INFO] [stdout]   --> src/rdb/stop_points/stoppoint_collection.rs:65:13
[INFO] [stdout]    |
[INFO] [stdout] 65 |             sp.disable(pid);
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]    |
[INFO] [stdout] 65 |             let _ = sp.disable(pid);
[INFO] [stdout]    |             +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.86s
[INFO] running `Command { std: "docker" "inspect" "956f6a82c53eca7b3ffc512a8904748cd0304f80b6837a106e032080c3c5b001", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "956f6a82c53eca7b3ffc512a8904748cd0304f80b6837a106e032080c3c5b001", kill_on_drop: false }`
[INFO] [stdout] 956f6a82c53eca7b3ffc512a8904748cd0304f80b6837a106e032080c3c5b001
[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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.94.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] b009a54f3039f127fe7e819c1119fe2990aca89a56e25f91382305a6e3c63b4f
[INFO] running `Command { std: "docker" "start" "-a" "b009a54f3039f127fe7e819c1119fe2990aca89a56e25f91382305a6e3c63b4f", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `std::any::TypeId`
[INFO] [stderr]  --> src/rdb/process_registers.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use std::any::TypeId;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process::Process::attach` is unsafe and requires unsafe block
[INFO] [stderr]  --> src/utils/attach.rs:7:9
[INFO] [stderr]   |
[INFO] [stderr] 7 |         Process::attach(&args[2])
[INFO] [stderr]   |         ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]   |
[INFO] [stderr]   = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]   = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stderr]  --> src/utils/attach.rs:3:1
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub unsafe fn attach(args: Vec<String>) -> Result<Process, String> {
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::register_info::User::default_user` is unsafe and requires unsafe block
[INFO] [stderr]   --> src/rdb/process.rs:91:20
[INFO] [stderr]    |
[INFO] [stderr] 91 |         let data = User::default_user();
[INFO] [stderr]    |                    ^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stderr]   --> src/rdb/process.rs:76:5
[INFO] [stderr]    |
[INFO] [stderr] 76 |     pub unsafe fn attach(pid_arg: &str) -> Result<Process, String> {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: irrefutable `if let` pattern
[INFO] [stderr]    --> src/rdb/process.rs:173:24
[INFO] [stderr]     |
[INFO] [stderr] 173 |                     if let Err(e) = exec_res {
[INFO] [stderr]     |                        ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stderr]     = help: consider replacing the `if let` with a `let`
[INFO] [stderr]     = note: `#[warn(irrefutable_let_patterns)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process::Process::handle_register` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process.rs:199:13
[INFO] [stderr]     |
[INFO] [stderr] 199 |             self.handle_register(args);
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stderr]    --> src/rdb/process.rs:188:5
[INFO] [stderr]     |
[INFO] [stderr] 188 |     pub unsafe fn dispatch_command(&mut self, command: String) {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]    --> src/rdb/process.rs:193:24
[INFO] [stderr]     |
[INFO] [stderr] 193 |             if let Err(e) = self.wait_on_signal() {
[INFO] [stderr]     |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process::Process::handle_register_read` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process.rs:365:13
[INFO] [stderr]     |
[INFO] [stderr] 365 |             self.handle_register_read(args);
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stderr]    --> src/rdb/process.rs:357:5
[INFO] [stderr]     |
[INFO] [stderr] 357 |     unsafe fn handle_register(&mut self, args: Vec<&str>) {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process::Process::handle_register_write` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process.rs:367:13
[INFO] [stderr]     |
[INFO] [stderr] 367 |             self.handle_register_write(args);
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process::Process::write_to_user_by_register_id` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process.rs:395:19
[INFO] [stderr]     |
[INFO] [stderr] 395 |         let res = self.write_to_user_by_register_id(register.id, value);
[INFO] [stderr]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stderr]    --> src/rdb/process.rs:374:5
[INFO] [stderr]     |
[INFO] [stderr] 374 |     unsafe fn handle_register_write(&mut self, args: Vec<&str>) {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::ProcRegisters::get_register_val_by_id` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process.rs:423:23
[INFO] [stderr]     |
[INFO] [stderr] 423 |             let val = self.proc_registers.get_register_val_by_id(register.id);
[INFO] [stderr]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stderr]    --> src/rdb/process.rs:402:5
[INFO] [stderr]     |
[INFO] [stderr] 402 |     unsafe fn handle_register_read(&mut self, args: Vec<&str>) {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::ProcRegisters::write_register` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process.rs:470:26
[INFO] [stderr]     |
[INFO] [stderr] 470 |         let user_bytes = self.proc_registers.write_register(register, val);
[INFO] [stderr]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stderr]    --> src/rdb/process.rs:464:5
[INFO] [stderr]     |
[INFO] [stderr] 464 | /     pub unsafe fn write_to_user_by_register_id(
[INFO] [stderr] 465 | |         &mut self,
[INFO] [stderr] 466 | |         id: RegisterId,
[INFO] [stderr] 467 | |         val: RegisterValue,
[INFO] [stderr] 468 | |     ) -> Result<&str, &str> {
[INFO] [stderr]     | |___________________________^
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process.rs:479:25
[INFO] [stderr]     |
[INFO] [stderr] 479 |             let bytes = RegisterValue::from_bytes::<u64>(user_bytes.add(offset));
[INFO] [stderr]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process.rs:479:58
[INFO] [stderr]     |
[INFO] [stderr] 479 |             let bytes = RegisterValue::from_bytes::<u64>(user_bytes.add(offset));
[INFO] [stderr]     |                                                          ^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::ProcRegisters::get_register_val_by_id` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process.rs:603:23
[INFO] [stderr]     |
[INFO] [stderr] 603 |           let rip_val = self
[INFO] [stderr]     |  _______________________^
[INFO] [stderr] 604 | |             .proc_registers
[INFO] [stderr] 605 | |             .get_register_val_by_id(RegisterId::Rip)
[INFO] [stderr]     | |____________________________________________________^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stderr]    --> src/rdb/process.rs:602:5
[INFO] [stderr]     |
[INFO] [stderr] 602 |     pub unsafe fn get_instruction_pointer_va(&mut self) -> Result<VirtAddr, &str> {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::ProcRegisters::get_register_val` is unsafe and requires unsafe block
[INFO] [stderr]   --> src/rdb/process_registers.rs:16:9
[INFO] [stderr]    |
[INFO] [stderr] 16 |         self.get_register_val(register)
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stderr]   --> src/rdb/process_registers.rs:14:5
[INFO] [stderr]    |
[INFO] [stderr] 14 |     pub unsafe fn get_register_val_by_id(&mut self, id: RegisterId) -> Result<RegisterValue, &str> {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stderr]   --> src/rdb/process_registers.rs:24:31
[INFO] [stderr]    |
[INFO] [stderr] 24 |                     let val = RegisterValue::from_bytes::<u8>(bytes.add(offset));
[INFO] [stderr]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stderr]   --> src/rdb/process_registers.rs:18:5
[INFO] [stderr]    |
[INFO] [stderr] 18 |     unsafe fn get_register_val(&mut self, register: &Register) -> Result<RegisterValue, &str> {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stderr]   --> src/rdb/process_registers.rs:24:63
[INFO] [stderr]    |
[INFO] [stderr] 24 |                     let val = RegisterValue::from_bytes::<u8>(bytes.add(offset));
[INFO] [stderr]    |                                                               ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stderr]   --> src/rdb/process_registers.rs:28:31
[INFO] [stderr]    |
[INFO] [stderr] 28 |                     let val = RegisterValue::from_bytes::<u16>(bytes.add(offset));
[INFO] [stderr]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stderr]   --> src/rdb/process_registers.rs:28:64
[INFO] [stderr]    |
[INFO] [stderr] 28 |                     let val = RegisterValue::from_bytes::<u16>(bytes.add(offset));
[INFO] [stderr]    |                                                                ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stderr]   --> src/rdb/process_registers.rs:32:31
[INFO] [stderr]    |
[INFO] [stderr] 32 |                     let val = RegisterValue::from_bytes::<u32>(bytes.add(offset));
[INFO] [stderr]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stderr]   --> src/rdb/process_registers.rs:32:64
[INFO] [stderr]    |
[INFO] [stderr] 32 |                     let val = RegisterValue::from_bytes::<u32>(bytes.add(offset));
[INFO] [stderr]    |                                                                ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stderr]   --> src/rdb/process_registers.rs:36:31
[INFO] [stderr]    |
[INFO] [stderr] 36 |                     let val = RegisterValue::from_bytes::<u64>(bytes.add(offset));
[INFO] [stderr]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stderr]   --> src/rdb/process_registers.rs:36:64
[INFO] [stderr]    |
[INFO] [stderr] 36 |                     let val = RegisterValue::from_bytes::<u64>(bytes.add(offset));
[INFO] [stderr]    |                                                                ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stderr]   --> src/rdb/process_registers.rs:42:23
[INFO] [stderr]    |
[INFO] [stderr] 42 |             let val = RegisterValue::from_bytes::<f64>(bytes.add(offset));
[INFO] [stderr]    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stderr]   --> src/rdb/process_registers.rs:42:56
[INFO] [stderr]    |
[INFO] [stderr] 42 |             let val = RegisterValue::from_bytes::<f64>(bytes.add(offset));
[INFO] [stderr]    |                                                        ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stderr]   --> src/rdb/process_registers.rs:71:23
[INFO] [stderr]    |
[INFO] [stderr] 71 |             let val = RegisterValue::from_bytes::<[u8; 8]>(bytes.add(offset));
[INFO] [stderr]    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stderr]   --> src/rdb/process_registers.rs:71:60
[INFO] [stderr]    |
[INFO] [stderr] 71 |             let val = RegisterValue::from_bytes::<[u8; 8]>(bytes.add(offset));
[INFO] [stderr]    |                                                            ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::from_bytes` is unsafe and requires unsafe block
[INFO] [stderr]   --> src/rdb/process_registers.rs:74:23
[INFO] [stderr]    |
[INFO] [stderr] 74 |             let val = RegisterValue::from_bytes::<[u8; 16]>(bytes.add(offset));
[INFO] [stderr]    |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stderr]   --> src/rdb/process_registers.rs:74:61
[INFO] [stderr]    |
[INFO] [stderr] 74 |             let val = RegisterValue::from_bytes::<[u8; 16]>(bytes.add(offset));
[INFO] [stderr]    |                                                             ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]    |
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]    = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:131:37
[INFO] [stderr]     |
[INFO] [stderr] 131 |             RegisterValue::U8(v) => RegisterValue::widen(register, v),
[INFO] [stderr]     |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stderr]    --> src/rdb/process_registers.rs:78:5
[INFO] [stderr]     |
[INFO] [stderr]  78 |     pub unsafe fn write_register(&mut self, register: &Register, val: RegisterValue) -> *mut u8 {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:132:38
[INFO] [stderr]     |
[INFO] [stderr] 132 |             RegisterValue::U16(v) => RegisterValue::widen(register, v),
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:133:38
[INFO] [stderr]     |
[INFO] [stderr] 133 |             RegisterValue::U32(v) => RegisterValue::widen(register, v),
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:134:38
[INFO] [stderr]     |
[INFO] [stderr] 134 |             RegisterValue::U64(v) => RegisterValue::widen(register, v),
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:135:37
[INFO] [stderr]     |
[INFO] [stderr] 135 |             RegisterValue::I8(v) => RegisterValue::widen(register, v),
[INFO] [stderr]     |                                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:136:38
[INFO] [stderr]     |
[INFO] [stderr] 136 |             RegisterValue::I16(v) => RegisterValue::widen(register, v),
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:137:38
[INFO] [stderr]     |
[INFO] [stderr] 137 |             RegisterValue::I32(v) => RegisterValue::widen(register, v),
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:138:38
[INFO] [stderr]     |
[INFO] [stderr] 138 |             RegisterValue::I64(v) => RegisterValue::widen(register, v),
[INFO] [stderr]     |                                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:139:40
[INFO] [stderr]     |
[INFO] [stderr] 139 |             RegisterValue::Float(v) => RegisterValue::widen(register, v),
[INFO] [stderr]     |                                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:140:41
[INFO] [stderr]     |
[INFO] [stderr] 140 |             RegisterValue::Double(v) => RegisterValue::widen(register, v),
[INFO] [stderr]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:141:45
[INFO] [stderr]     |
[INFO] [stderr] 141 |             RegisterValue::LongDouble(v) => RegisterValue::widen(register, v),
[INFO] [stderr]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:142:41
[INFO] [stderr]     |
[INFO] [stderr] 142 |             RegisterValue::Byte64(v) => RegisterValue::widen(register, v),
[INFO] [stderr]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::widen` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:143:42
[INFO] [stderr]     |
[INFO] [stderr] 143 |             RegisterValue::Byte128(v) => RegisterValue::widen(register, v),
[INFO] [stderr]     |                                          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::copy_nonoverlapping` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:146:9
[INFO] [stderr]     |
[INFO] [stderr] 146 |         std::ptr::copy_nonoverlapping(val_bytes.as_ptr(), user_bytes.add(reg_offset), reg_size);
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::mut_ptr::<impl *mut T>::add` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:146:59
[INFO] [stderr]     |
[INFO] [stderr] 146 |         std::ptr::copy_nonoverlapping(val_bytes.as_ptr(), user_bytes.add(reg_offset), reg_size);
[INFO] [stderr]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::mem::zeroed` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:308:27
[INFO] [stderr]     |
[INFO] [stderr] 308 |         let mut ret: To = std::mem::zeroed();
[INFO] [stderr]     |                           ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stderr]    --> src/rdb/process_registers.rs:307:5
[INFO] [stderr]     |
[INFO] [stderr] 307 |     pub unsafe fn from_bytes<To>(bytes: *const u8) -> To {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::copy_nonoverlapping` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:309:9
[INFO] [stderr]     |
[INFO] [stderr] 309 |         std::ptr::copy_nonoverlapping(bytes, &mut ret as *mut To as *mut u8, size_of::<To>());
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::mem::transmute_copy` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:315:27
[INFO] [stderr]     |
[INFO] [stderr] 315 |                 let val = std::mem::transmute_copy::<From, f64>(&t);
[INFO] [stderr]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stderr]    --> src/rdb/process_registers.rs:312:5
[INFO] [stderr]     |
[INFO] [stderr] 312 |     pub unsafe fn widen<From: 'static>(register: &Register, t: From) -> [u8; 16] {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::to_byte128` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:316:17
[INFO] [stderr]     |
[INFO] [stderr] 316 |                 RegisterValue::to_byte128(val)
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::mem::transmute_copy` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:320:33
[INFO] [stderr]     |
[INFO] [stderr] 320 |                     let bytes = std::mem::transmute_copy::<From, [u8; 10]>(&t);
[INFO] [stderr]     |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::mem::transmute_copy` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:325:27
[INFO] [stderr]     |
[INFO] [stderr] 325 |                 let val = std::mem::transmute_copy::<From, f64>(&t);
[INFO] [stderr]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::to_byte128` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:331:17
[INFO] [stderr]     |
[INFO] [stderr] 331 |                 RegisterValue::to_byte128(t)
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::mem::transmute_copy` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:336:31
[INFO] [stderr]     |
[INFO] [stderr] 336 |                     let val = std::mem::transmute_copy::<From, i16>(&t);
[INFO] [stderr]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::to_byte128` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:337:21
[INFO] [stderr]     |
[INFO] [stderr] 337 |                     RegisterValue::to_byte128(val)
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::mem::transmute_copy` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:340:31
[INFO] [stderr]     |
[INFO] [stderr] 340 |                     let val = std::mem::transmute_copy::<From, i32>(&t);
[INFO] [stderr]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::to_byte128` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:341:21
[INFO] [stderr]     |
[INFO] [stderr] 341 |                     RegisterValue::to_byte128(val)
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::mem::transmute_copy` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:344:31
[INFO] [stderr]     |
[INFO] [stderr] 344 |                     let val = std::mem::transmute_copy::<From, i64>(&t);
[INFO] [stderr]     |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::to_byte128` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:345:21
[INFO] [stderr]     |
[INFO] [stderr] 345 |                     RegisterValue::to_byte128(val)
[INFO] [stderr]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::to_byte128` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:347:22
[INFO] [stderr]     |
[INFO] [stderr] 347 |                 _ => RegisterValue::to_byte128(t),
[INFO] [stderr]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `rdb::process_registers::RegisterValue::to_byte128` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:350:13
[INFO] [stderr]     |
[INFO] [stderr] 350 |             RegisterValue::to_byte128(t)
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::ptr::copy_nonoverlapping` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/process_registers.rs:362:9
[INFO] [stderr]     |
[INFO] [stderr] 362 |         std::ptr::copy_nonoverlapping(ptr, result.as_mut_ptr(), size.min(16));
[INFO] [stderr]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stderr]    --> src/rdb/process_registers.rs:358:5
[INFO] [stderr]     |
[INFO] [stderr] 358 |     unsafe fn to_byte128<From>(bytes: From) -> [u8; 16] {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: call to unsafe function `std::mem::zeroed` is unsafe and requires unsafe block
[INFO] [stderr]    --> src/rdb/register_info.rs:185:13
[INFO] [stderr]     |
[INFO] [stderr] 185 |             std::mem::zeroed()
[INFO] [stderr]     |             ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stderr]     |
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stderr]    --> src/rdb/register_info.rs:183:5
[INFO] [stderr]     |
[INFO] [stderr] 183 |     pub unsafe fn default_user() -> Self {
[INFO] [stderr]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `write_gprs` is never used
[INFO] [stderr]    --> src/rdb/process.rs:510:8
[INFO] [stderr]     |
[INFO] [stderr]  61 | impl Process {
[INFO] [stderr]     | ------------ method in this implementation
[INFO] [stderr] ...
[INFO] [stderr] 510 |     fn write_gprs(&self) -> Result<&str, &str> {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/rdb/process.rs:45:9
[INFO] [stderr]    |
[INFO] [stderr] 45 |         ptrace::detach(self.pid, None);
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr]    = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 45 |         let _ = ptrace::detach(self.pid, None);
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/rdb/process.rs:46:9
[INFO] [stderr]    |
[INFO] [stderr] 46 |         kill(self.pid, Signal::SIGCONT);
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 46 |         let _ = kill(self.pid, Signal::SIGCONT);
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/rdb/process.rs:55:17
[INFO] [stderr]    |
[INFO] [stderr] 55 |                 waitpid(self.pid, None);
[INFO] [stderr]    |                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 55 |                 let _ = waitpid(self.pid, None);
[INFO] [stderr]    |                 +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]    --> src/rdb/process.rs:252:17
[INFO] [stderr]     |
[INFO] [stderr] 252 |                 bp.enable(pid);
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]     |
[INFO] [stderr] 252 |                 let _ = bp.enable(pid);
[INFO] [stderr]     |                 +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/rdb/stop_points/breakpoint.rs:39:9
[INFO] [stderr]    |
[INFO] [stderr] 39 | /         ptrace::write(
[INFO] [stderr] 40 | |             pid,
[INFO] [stderr] 41 | |             self.virtual_address.addr() as usize as *mut _,
[INFO] [stderr] 42 | |             data_with_int3,
[INFO] [stderr] ...  |
[INFO] [stderr] 50 | |         });
[INFO] [stderr]    | |__________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 39 |         let _ = ptrace::write(
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/rdb/stop_points/breakpoint.rs:67:9
[INFO] [stderr]    |
[INFO] [stderr] 67 | /         ptrace::write(
[INFO] [stderr] 68 | |             pid,
[INFO] [stderr] 69 | |             self.virtual_address.addr() as usize as *mut _,
[INFO] [stderr] 70 | |             data_restored,
[INFO] [stderr] ...  |
[INFO] [stderr] 78 | |         });
[INFO] [stderr]    | |__________^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 67 |         let _ = ptrace::write(
[INFO] [stderr]    |         +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/rdb/stop_points/stoppoint_collection.rs:52:13
[INFO] [stderr]    |
[INFO] [stderr] 52 |             sp.disable(pid);
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 52 |             let _ = sp.disable(pid);
[INFO] [stderr]    |             +++++++
[INFO] [stderr] 
[INFO] [stderr] warning: unused `Result` that must be used
[INFO] [stderr]   --> src/rdb/stop_points/stoppoint_collection.rs:65:13
[INFO] [stderr]    |
[INFO] [stderr] 65 |             sp.disable(pid);
[INFO] [stderr]    |             ^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: this `Result` may be an `Err` variant, which should be handled
[INFO] [stderr] help: use `let _ = ...` to ignore the resulting value
[INFO] [stderr]    |
[INFO] [stderr] 65 |             let _ = sp.disable(pid);
[INFO] [stderr]    |             +++++++
[INFO] [stderr] 
[INFO] [stderr] For more information about this error, try `rustc --explain E0133`.
[INFO] [stderr] warning: `rdb` (lib) generated 70 warnings (run `cargo fix --lib -p rdb` to apply 17 suggestions)
[INFO] [stderr] warning: `rdb` (lib test) generated 70 warnings (70 duplicates)
[INFO] [stderr] warning: unused import: `nix::libc::pid_t`
[INFO] [stderr]  --> tests/rdb_integ_test.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use nix::libc::pid_t;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `nix::sys::ptrace`
[INFO] [stderr]  --> tests/rdb_integ_test.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use nix::sys::ptrace;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `nix::sys::wait::waitpid`
[INFO] [stderr]  --> tests/rdb_integ_test.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use nix::sys::wait::waitpid;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::process`
[INFO] [stderr]   --> tests/rdb_integ_test.rs:10:5
[INFO] [stderr]    |
[INFO] [stderr] 10 | use std::process;
[INFO] [stderr]    |     ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: irrefutable `if let` pattern
[INFO] [stderr]    --> tests/rdb_integ_test.rs:101:20
[INFO] [stderr]     |
[INFO] [stderr] 101 |                 if let Err(e) = exec_res {
[INFO] [stderr]     |                    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: this pattern will always match, so the `if let` is useless
[INFO] [stderr]     = help: consider replacing the `if let` with a `let`
[INFO] [stderr]     = note: `#[warn(irrefutable_let_patterns)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `rdb::rdb::process_registers::RegisterValue`
[INFO] [stderr]  --> src/main.rs:3:5
[INFO] [stderr]   |
[INFO] [stderr] 3 | use rdb::rdb::process_registers::RegisterValue;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `rdb::rdb::register_info::RegisterId`
[INFO] [stderr]  --> src/main.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use rdb::rdb::register_info::RegisterId;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `e`
[INFO] [stderr]   --> src/main.rs:51:16
[INFO] [stderr]    |
[INFO] [stderr] 51 |     if let Err(e) = rl.load_history(".history") {
[INFO] [stderr]    |                ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `rdb` (test "rdb_integ_test") generated 5 warnings (run `cargo fix --test "rdb_integ_test" -p rdb` to apply 4 suggestions)
[INFO] [stderr] warning: `rdb` (bin "rdb" test) generated 3 warnings (run `cargo fix --bin "rdb" -p rdb --tests` to apply 3 suggestions)
[INFO] [stderr] warning: `rdb` (bin "rdb") generated 3 warnings (3 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.08s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rdb-e0583bfcb4c4cf3e)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test unit_tests::rdb_test::empty_test ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/rdb-952e36e5e2129b3e)
[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] [stderr]      Running tests/rdb_integ_test.rs (/opt/rustwide/target/debug/deps/rdb_integ_test-3288961b79693de7)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test test_process_attach_pid_0_fails ... ok
[INFO] [stdout] test test_process_launch_nonexistent_process ... ok
[INFO] [stdout] test test_process_launch_success ... FAILED
[INFO] [stdout] test test_process_attach_success ... ok
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- test_process_launch_success stdout ----
[INFO] [stdout] Dropping: 33
[INFO] [stdout] killing process: 33
[INFO] [stdout] 
[INFO] [stdout] thread 'test_process_launch_success' (32) panicked at tests/rdb_integ_test.rs:15:45:
[INFO] [stdout] Failed to launch process: "Child process failed with error: Failed to disable memory randomization"
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x62c8dd553dc2 - std::backtrace_rs::backtrace::libunwind::trace::hff358a60abf734fc
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x62c8dd553dc2 - std::backtrace_rs::backtrace::trace_unsynchronized::h3b121f916dd95ec6
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x62c8dd553dc2 - std::sys::backtrace::_print_fmt::hde0a62ded68798e9
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x62c8dd553dc2 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h93773fc827e3113d
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x62c8dd56402a - core::fmt::rt::Argument::fmt::h01eff69902dad97f
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x62c8dd56402a - core::fmt::write::hed7b5c73d82ecb7c
[INFO] [stdout]    6:     0x62c8dd522a36 - std::io::default_write_fmt::h2f696ff5b8bbaa4b
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/io/mod.rs:639:11
[INFO] [stdout]    7:     0x62c8dd522a36 - std::io::Write::write_fmt::h5e66814db8a9cfce
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/io/mod.rs:1994:13
[INFO] [stdout]    8:     0x62c8dd5332a9 - std::sys::backtrace::BacktraceLock::print::h8b1d6fcc5a56d1a3
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x62c8dd5332a9 - std::panicking::default_hook::{{closure}}::h2be84df4f189ae36
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x62c8dd533141 - std::panicking::default_hook::hf0ea8939246f43a9
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x62c8dd4ea4fe - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::h02d35e3888986252
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   12:     0x62c8dd4ea4fe - test::test_main_with_exit_callback::{{closure}}::h939640a27d647173
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/test/src/lib.rs:145:21
[INFO] [stdout]   13:     0x62c8dd533522 - <alloc::boxed::Box<F,A> as core::ops::function::Fn<Args>>::call::hc9df09ff391af3e7
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/alloc/src/boxed.rs:2220:9
[INFO] [stdout]   14:     0x62c8dd533522 - std::panicking::panic_with_hook::hb4bd9ac1123582a0
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x62c8dd533368 - std::panicking::panic_handler::{{closure}}::hde00dd15f5637fe2
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x62c8dd52e829 - std::sys::backtrace::__rust_end_short_backtrace::hb72197fa777c1785
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x62c8dd5170fd - __rustc[4425a7e20b4c8619]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x62c8dd56b3dc - core::panicking::panic_fmt::ha59b517dd231f4da
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x62c8dd56acd2 - core::result::unwrap_failed::hf2d1f30a3ac850fc
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/result.rs:1867:5
[INFO] [stdout]   20:     0x62c8dd4c96a5 - core::result::Result<T,E>::expect::h6ee8b5232605adc2
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/result.rs:1185:23
[INFO] [stdout]   21:     0x62c8dd4c7b1a - rdb_integ_test::test_process_launch_success::hbb68c9de5a11ff39
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/rdb_integ_test.rs:15:45
[INFO] [stdout]   22:     0x62c8dd4c7c27 - rdb_integ_test::test_process_launch_success::{{closure}}::hb75c52d20e530a1b
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/rdb_integ_test.rs:14:33
[INFO] [stdout]   23:     0x62c8dd4c8296 - core::ops::function::FnOnce::call_once::h0a349d73cf2a6b64
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x62c8dd4ea2bb - core::ops::function::FnOnce::call_once::hddb3cd395c36bfbb
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   25:     0x62c8dd4ea2bb - test::__rust_begin_short_backtrace::h0b6a7601d9750bfa
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/test/src/lib.rs:663:18
[INFO] [stdout]   26:     0x62c8dd4fdcca - test::run_test_in_process::{{closure}}::h444209903f00b347
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/test/src/lib.rs:686:74
[INFO] [stdout]   27:     0x62c8dd4fdcca - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::hfb3ba8f46e537649
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   28:     0x62c8dd4fdcca - std::panicking::catch_unwind::do_call::h1672a45911fcf9dc
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:581:40
[INFO] [stdout]   29:     0x62c8dd4fdcca - std::panicking::catch_unwind::h0fadaee22787a6dd
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:544:19
[INFO] [stdout]   30:     0x62c8dd4fdcca - std::panic::catch_unwind::hc47ad190f2c8e188
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panic.rs:359:14
[INFO] [stdout]   31:     0x62c8dd4fdcca - test::run_test_in_process::hcd7faaf934f29999
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/test/src/lib.rs:686:27
[INFO] [stdout]   32:     0x62c8dd4fdcca - test::run_test::{{closure}}::hddc4550da4871867
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/test/src/lib.rs:607:43
[INFO] [stdout]   33:     0x62c8dd4d8124 - test::run_test::{{closure}}::h98ae26689f13ed94
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/test/src/lib.rs:637:41
[INFO] [stdout]   34:     0x62c8dd4d8124 - std::sys::backtrace::__rust_begin_short_backtrace::h3ec4d1f21ad44588
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   35:     0x62c8dd4dbac2 - std::thread::lifecycle::spawn_unchecked::{{closure}}::{{closure}}::hd8bf2c73d479939f
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/thread/lifecycle.rs:91:13
[INFO] [stderr] error: test failed, to rerun pass `--test rdb_integ_test`
[INFO] [stdout]   36:     0x62c8dd4dbac2 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h3b4248f358af2491
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/panic/unwind_safe.rs:274:9
[INFO] [stdout]   37:     0x62c8dd4dbac2 - std::panicking::catch_unwind::do_call::hda10a64f4b8daebe
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:581:40
[INFO] [stdout]   38:     0x62c8dd4dbac2 - std::panicking::catch_unwind::h659e5ee8336ec8c7
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panicking.rs:544:19
[INFO] [stdout]   39:     0x62c8dd4dbac2 - std::panic::catch_unwind::h9d4d66a538912c18
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/panic.rs:359:14
[INFO] [stdout]   40:     0x62c8dd4dbac2 - std::thread::lifecycle::spawn_unchecked::{{closure}}::h7557906bb51d79f1
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/thread/lifecycle.rs:89:26
[INFO] [stdout]   41:     0x62c8dd4dbac2 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h9e460d1d7fc83d35
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   42:     0x62c8dd529abf - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h61282da819d64ea9
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/alloc/src/boxed.rs:2206:9
[INFO] [stdout]   43:     0x62c8dd529abf - std::sys::thread::unix::Thread::new::thread_start::h982f9ea829d1b5fb
[INFO] [stdout]                                at /rustc/4a4ef493e3a1488c6e321570238084b38948f6db/library/std/src/sys/thread/unix.rs:127:17
[INFO] [stdout]   44:     0x7a8d91a7eaa4 - <unknown>
[INFO] [stdout]   45:     0x7a8d91b0ba64 - clone
[INFO] [stdout]   46:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     test_process_launch_success
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 3 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.06s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "b009a54f3039f127fe7e819c1119fe2990aca89a56e25f91382305a6e3c63b4f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b009a54f3039f127fe7e819c1119fe2990aca89a56e25f91382305a6e3c63b4f", kill_on_drop: false }`
[INFO] [stdout] b009a54f3039f127fe7e819c1119fe2990aca89a56e25f91382305a6e3c63b4f
