[INFO] cloning repository https://github.com/furarox/libtree [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/furarox/libtree" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ffurarox%2Flibtree", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ffurarox%2Flibtree'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] d67b42fd07a02da8a022c6af9918383d96dc08e0 [INFO] testing furarox/libtree against try#b83b707f97d809763b7861afa7638871f3339a33 for pr-145838-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Ffurarox%2Flibtree" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/furarox/libtree [INFO] finished tweaking git repo https://github.com/furarox/libtree [INFO] tweaked toml for git repo https://github.com/furarox/libtree written to /workspace/builds/worker-2-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/furarox/libtree on toolchain b83b707f97d809763b7861afa7638871f3339a33 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/furarox/libtree 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" "+b83b707f97d809763b7861afa7638871f3339a33" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 7f45b1655bfc49ae94ba3cacea5176564d7aed817d3d2f3d7ac7f8b94b424fb3 [INFO] running `Command { std: "docker" "start" "-a" "7f45b1655bfc49ae94ba3cacea5176564d7aed817d3d2f3d7ac7f8b94b424fb3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "7f45b1655bfc49ae94ba3cacea5176564d7aed817d3d2f3d7ac7f8b94b424fb3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7f45b1655bfc49ae94ba3cacea5176564d7aed817d3d2f3d7ac7f8b94b424fb3", kill_on_drop: false }` [INFO] [stdout] 7f45b1655bfc49ae94ba3cacea5176564d7aed817d3d2f3d7ac7f8b94b424fb3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+b83b707f97d809763b7861afa7638871f3339a33" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c3f2ac380880b15ef1872a323310d200f5c9fba0f4292dfb22c810978d0f2e3f [INFO] running `Command { std: "docker" "start" "-a" "c3f2ac380880b15ef1872a323310d200f5c9fba0f4292dfb22c810978d0f2e3f", kill_on_drop: false }` [INFO] [stderr] Compiling libtree v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/cursor.rs:110:21 [INFO] [stdout] | [INFO] [stdout] 110 | unsafe { &(*(*self.current.as_ptr()).childs[index].as_ptr()).elem } [INFO] [stdout] | ^^---------------------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Node` [INFO] [stdout] | [INFO] [stdout] = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements [INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&Vec>>` [INFO] [stdout] --> src/cursor.rs:110:21 [INFO] [stdout] | [INFO] [stdout] 110 | unsafe { &(*(*self.current.as_ptr()).childs[index].as_ptr()).elem } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[deny(dangerous_implicit_autorefs)]` on by default [INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit [INFO] [stdout] | [INFO] [stdout] 110 | unsafe { &(*(&(*self.current.as_ptr()).childs)[index].as_ptr()).elem } [INFO] [stdout] | ++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/cursor.rs:137:28 [INFO] [stdout] | [INFO] [stdout] 137 | self.current = (*self.current.as_ptr()).childs[index]; [INFO] [stdout] | ^^---------------------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Node` [INFO] [stdout] | [INFO] [stdout] = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements [INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&Vec>>` [INFO] [stdout] --> src/cursor.rs:137:28 [INFO] [stdout] | [INFO] [stdout] 137 | self.current = (*self.current.as_ptr()).childs[index]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit [INFO] [stdout] | [INFO] [stdout] 137 | self.current = (&(*self.current.as_ptr()).childs)[index]; [INFO] [stdout] | ++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/cursor.rs:320:21 [INFO] [stdout] | [INFO] [stdout] 320 | unsafe { &(*(*self.current.as_ptr()).childs[index].as_ptr()).elem } [INFO] [stdout] | ^^---------------------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Node` [INFO] [stdout] | [INFO] [stdout] = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements [INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&Vec>>` [INFO] [stdout] --> src/cursor.rs:320:21 [INFO] [stdout] | [INFO] [stdout] 320 | unsafe { &(*(*self.current.as_ptr()).childs[index].as_ptr()).elem } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit [INFO] [stdout] | [INFO] [stdout] 320 | unsafe { &(*(&(*self.current.as_ptr()).childs)[index].as_ptr()).elem } [INFO] [stdout] | ++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/cursor.rs:342:25 [INFO] [stdout] | [INFO] [stdout] 342 | unsafe { &mut (*(*self.current.as_ptr()).childs[index].as_ptr()).elem } [INFO] [stdout] | ^^---------------------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Node` [INFO] [stdout] | [INFO] [stdout] = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements [INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&Vec>>` [INFO] [stdout] --> src/cursor.rs:342:25 [INFO] [stdout] | [INFO] [stdout] 342 | unsafe { &mut (*(*self.current.as_ptr()).childs[index].as_ptr()).elem } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit [INFO] [stdout] | [INFO] [stdout] 342 | unsafe { &mut (*(&(*self.current.as_ptr()).childs)[index].as_ptr()).elem } [INFO] [stdout] | ++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/cursor.rs:369:28 [INFO] [stdout] | [INFO] [stdout] 369 | self.current = (*self.current.as_ptr()).childs[index]; [INFO] [stdout] | ^^---------------------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Node` [INFO] [stdout] | [INFO] [stdout] = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements [INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&Vec>>` [INFO] [stdout] --> src/cursor.rs:369:28 [INFO] [stdout] | [INFO] [stdout] 369 | self.current = (*self.current.as_ptr()).childs[index]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit [INFO] [stdout] | [INFO] [stdout] 369 | self.current = (&(*self.current.as_ptr()).childs)[index]; [INFO] [stdout] | ++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/cursor.rs:748:21 [INFO] [stdout] | [INFO] [stdout] 748 | unsafe { &(*(*self.current.as_ptr()).childs[index].as_ptr()).elem } [INFO] [stdout] | ^^---------------------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Node` [INFO] [stdout] | [INFO] [stdout] = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements [INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&Vec>>` [INFO] [stdout] --> src/cursor.rs:748:21 [INFO] [stdout] | [INFO] [stdout] 748 | unsafe { &(*(*self.current.as_ptr()).childs[index].as_ptr()).elem } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit [INFO] [stdout] | [INFO] [stdout] 748 | unsafe { &(*(&(*self.current.as_ptr()).childs)[index].as_ptr()).elem } [INFO] [stdout] | ++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/cursor.rs:776:25 [INFO] [stdout] | [INFO] [stdout] 776 | unsafe { &mut (*(*self.current.as_ptr()).childs[index].as_ptr()).elem } [INFO] [stdout] | ^^---------------------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Node` [INFO] [stdout] | [INFO] [stdout] = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements [INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&Vec>>` [INFO] [stdout] --> src/cursor.rs:776:25 [INFO] [stdout] | [INFO] [stdout] 776 | unsafe { &mut (*(*self.current.as_ptr()).childs[index].as_ptr()).elem } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit [INFO] [stdout] | [INFO] [stdout] 776 | unsafe { &mut (*(&(*self.current.as_ptr()).childs)[index].as_ptr()).elem } [INFO] [stdout] | ++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/cursor.rs:803:28 [INFO] [stdout] | [INFO] [stdout] 803 | self.current = (*self.current.as_ptr()).childs[index]; [INFO] [stdout] | ^^---------------------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Node` [INFO] [stdout] | [INFO] [stdout] = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements [INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&Vec>>` [INFO] [stdout] --> src/cursor.rs:803:28 [INFO] [stdout] | [INFO] [stdout] 803 | self.current = (*self.current.as_ptr()).childs[index]; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit [INFO] [stdout] | [INFO] [stdout] 803 | self.current = (&(*self.current.as_ptr()).childs)[index]; [INFO] [stdout] | ++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/tree.rs:299:21 [INFO] [stdout] | [INFO] [stdout] 299 | unsafe { &(*(*self.current.unwrap().as_ptr()).childs[index].as_ptr()).elem } [INFO] [stdout] | ^^------------------------------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Node` [INFO] [stdout] | [INFO] [stdout] = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements [INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&Vec>>` [INFO] [stdout] --> src/tree.rs:299:21 [INFO] [stdout] | [INFO] [stdout] 299 | unsafe { &(*(*self.current.unwrap().as_ptr()).childs[index].as_ptr()).elem } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit [INFO] [stdout] | [INFO] [stdout] 299 | unsafe { &(*(&(*self.current.unwrap().as_ptr()).childs)[index].as_ptr()).elem } [INFO] [stdout] | ++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/tree.rs:327:25 [INFO] [stdout] | [INFO] [stdout] 327 | unsafe { &mut (*(*self.current.unwrap().as_ptr()).childs[index].as_ptr()).elem } [INFO] [stdout] | ^^------------------------------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Node` [INFO] [stdout] | [INFO] [stdout] = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements [INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&Vec>>` [INFO] [stdout] --> src/tree.rs:327:25 [INFO] [stdout] | [INFO] [stdout] 327 | unsafe { &mut (*(*self.current.unwrap().as_ptr()).childs[index].as_ptr()).elem } [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit [INFO] [stdout] | [INFO] [stdout] 327 | unsafe { &mut (*(&(*self.current.unwrap().as_ptr()).childs)[index].as_ptr()).elem } [INFO] [stdout] | ++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/tree.rs:775:36 [INFO] [stdout] | [INFO] [stdout] 775 | let item = unsafe { &(*(*self.current.as_ptr()).childs[self.i].as_ptr()).elem }; [INFO] [stdout] | ^^---------------------^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Node` [INFO] [stdout] | [INFO] [stdout] = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements [INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&Vec>>` [INFO] [stdout] --> src/tree.rs:775:36 [INFO] [stdout] | [INFO] [stdout] 775 | let item = unsafe { &(*(*self.current.as_ptr()).childs[self.i].as_ptr()).elem }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit [INFO] [stdout] | [INFO] [stdout] 775 | let item = unsafe { &(*(&(*self.current.as_ptr()).childs)[self.i].as_ptr()).elem }; [INFO] [stdout] | ++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/tree.rs:795:40 [INFO] [stdout] | [INFO] [stdout] 795 | let item = unsafe { &mut (*(*self.current.as_ptr()).childs[self.i].as_ptr()).elem }; [INFO] [stdout] | ^^---------------------^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Node` [INFO] [stdout] | [INFO] [stdout] = note: creating a reference requires the pointer target to be valid and imposes aliasing requirements [INFO] [stdout] note: autoref is being applied to this expression, resulting in: `&Vec>>` [INFO] [stdout] --> src/tree.rs:795:40 [INFO] [stdout] | [INFO] [stdout] 795 | let item = unsafe { &mut (*(*self.current.as_ptr()).childs[self.i].as_ptr()).elem }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] help: try using a raw pointer method instead; or if this reference is intentional, make it explicit [INFO] [stdout] | [INFO] [stdout] 795 | let item = unsafe { &mut (*(&(*self.current.as_ptr()).childs)[self.i].as_ptr()).elem }; [INFO] [stdout] | ++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `libtree` (lib) due to 12 previous errors [INFO] running `Command { std: "docker" "inspect" "c3f2ac380880b15ef1872a323310d200f5c9fba0f4292dfb22c810978d0f2e3f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c3f2ac380880b15ef1872a323310d200f5c9fba0f4292dfb22c810978d0f2e3f", kill_on_drop: false }` [INFO] [stdout] c3f2ac380880b15ef1872a323310d200f5c9fba0f4292dfb22c810978d0f2e3f