[INFO] cloning repository https://github.com/Simone99/Any-shape-similarity-join-approx-rust [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Simone99/Any-shape-similarity-join-approx-rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSimone99%2FAny-shape-similarity-join-approx-rust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSimone99%2FAny-shape-similarity-join-approx-rust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 943b071321605edaff59ccf51da7ef9e8f3bef2a [INFO] checking Simone99/Any-shape-similarity-join-approx-rust against try#afeffcd090fe6cee35c99f8b5539d74aa443fe34 for pr-140956 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSimone99%2FAny-shape-similarity-join-approx-rust" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/Simone99/Any-shape-similarity-join-approx-rust [INFO] finished tweaking git repo https://github.com/Simone99/Any-shape-similarity-join-approx-rust [INFO] tweaked toml for git repo https://github.com/Simone99/Any-shape-similarity-join-approx-rust written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/Simone99/Any-shape-similarity-join-approx-rust on toolchain afeffcd090fe6cee35c99f8b5539d74aa443fe34 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+afeffcd090fe6cee35c99f8b5539d74aa443fe34" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/Simone99/Any-shape-similarity-join-approx-rust 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" "+afeffcd090fe6cee35c99f8b5539d74aa443fe34" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded mut-binary-heap v0.1.0 [INFO] [stderr] Downloaded queues v1.1.0 [INFO] [stderr] Downloaded compare v0.1.0 [INFO] [stderr] Downloaded avl v0.7.1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+afeffcd090fe6cee35c99f8b5539d74aa443fe34" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 32850745c999e8d4d26450bf7aab5fdd13f46bb9ff04758c1976de3c94a51390 [INFO] running `Command { std: "docker" "start" "-a" "32850745c999e8d4d26450bf7aab5fdd13f46bb9ff04758c1976de3c94a51390", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "32850745c999e8d4d26450bf7aab5fdd13f46bb9ff04758c1976de3c94a51390", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "32850745c999e8d4d26450bf7aab5fdd13f46bb9ff04758c1976de3c94a51390", kill_on_drop: false }` [INFO] [stdout] 32850745c999e8d4d26450bf7aab5fdd13f46bb9ff04758c1976de3c94a51390 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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:90999bfc7ae267e83380e433d8e61a7c072ca6729e92edbae886d3423b3a6f4c" "/opt/rustwide/cargo-home/bin/cargo" "+afeffcd090fe6cee35c99f8b5539d74aa443fe34" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 26b38a543f05adbac9a4d517642114da3e7da18f881aac785ac93598181992ec [INFO] running `Command { std: "docker" "start" "-a" "26b38a543f05adbac9a4d517642114da3e7da18f881aac785ac93598181992ec", kill_on_drop: false }` [INFO] [stderr] Compiling libc v0.2.142 [INFO] [stderr] Checking ppv-lite86 v0.2.17 [INFO] [stderr] Checking compare v0.1.0 [INFO] [stderr] Checking avl v0.7.1 [INFO] [stderr] Checking queues v1.1.0 [INFO] [stderr] Checking mut-binary-heap v0.1.0 [INFO] [stderr] Checking getrandom v0.2.9 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking any-shape-similarity-join-approx-rust v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:93:32 [INFO] [stdout] | [INFO] [stdout] 93 | for cell_prime in &mut (*cells_by_vertex)[v_j as usize] { [INFO] [stdout] | ^^---------------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec>` [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: `&mut Vec>` [INFO] [stdout] --> src/grid.rs:93:32 [INFO] [stdout] | [INFO] [stdout] 93 | for cell_prime in &mut (*cells_by_vertex)[v_j as usize] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(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] 93 | for cell_prime in &mut (&mut (*cells_by_vertex))[v_j as usize] { [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:93:32 [INFO] [stdout] | [INFO] [stdout] 93 | for cell_prime in &mut (*cells_by_vertex)[v_j as usize] { [INFO] [stdout] | ^^---------------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec>` [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: `&mut Vec>` [INFO] [stdout] --> src/grid.rs:93:32 [INFO] [stdout] | [INFO] [stdout] 93 | for cell_prime in &mut (*cells_by_vertex)[v_j as usize] { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(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] 93 | for cell_prime in &mut (&mut (*cells_by_vertex))[v_j as usize] { [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:97:13 [INFO] [stdout] | [INFO] [stdout] 97 | (*solution)[v_j as usize] = Some(*cell_prime); [INFO] [stdout] | ^^--------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec>` [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: `&mut Vec>` [INFO] [stdout] --> src/grid.rs:97:13 [INFO] [stdout] | [INFO] [stdout] 97 | (*solution)[v_j as usize] = Some(*cell_prime); [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] 97 | (&mut (*solution))[v_j as usize] = Some(*cell_prime); [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:97:13 [INFO] [stdout] | [INFO] [stdout] 97 | (*solution)[v_j as usize] = Some(*cell_prime); [INFO] [stdout] | ^^--------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec>` [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: `&mut Vec>` [INFO] [stdout] --> src/grid.rs:97:13 [INFO] [stdout] | [INFO] [stdout] 97 | (*solution)[v_j as usize] = Some(*cell_prime); [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] 97 | (&mut (*solution))[v_j as usize] = Some(*cell_prime); [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:99:20 [INFO] [stdout] | [INFO] [stdout] 99 | if (*visited)[*v_h as usize] { [INFO] [stdout] | ^^-------^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec` [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/grid.rs:99:20 [INFO] [stdout] | [INFO] [stdout] 99 | if (*visited)[*v_h as usize] { [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] 99 | if (&(*visited))[*v_h as usize] { [INFO] [stdout] | ++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:99:20 [INFO] [stdout] | [INFO] [stdout] 99 | if (*visited)[*v_h as usize] { [INFO] [stdout] | ^^-------^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec` [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/grid.rs:99:20 [INFO] [stdout] | [INFO] [stdout] 99 | if (*visited)[*v_h as usize] { [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] 99 | if (&(*visited))[*v_h as usize] { [INFO] [stdout] | ++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:100:28 [INFO] [stdout] | [INFO] [stdout] 100 | match &(*solution)[*v_h as usize] { [INFO] [stdout] | ^^--------^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec>` [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/grid.rs:100:28 [INFO] [stdout] | [INFO] [stdout] 100 | match &(*solution)[*v_h as usize] { [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] 100 | match &(&(*solution))[*v_h as usize] { [INFO] [stdout] | ++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:103:33 [INFO] [stdout] | [INFO] [stdout] 103 | ... (*solution)[v_j as usize] = None; [INFO] [stdout] | ^^--------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec>` [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: `&mut Vec>` [INFO] [stdout] --> src/grid.rs:103:33 [INFO] [stdout] | [INFO] [stdout] 103 | ... (*solution)[v_j as usize] = None; [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] 103 | (&mut (*solution))[v_j as usize] = None; [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:100:28 [INFO] [stdout] | [INFO] [stdout] 100 | match &(*solution)[*v_h as usize] { [INFO] [stdout] | ^^--------^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec>` [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/grid.rs:100:28 [INFO] [stdout] | [INFO] [stdout] 100 | match &(*solution)[*v_h as usize] { [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] 100 | match &(&(*solution))[*v_h as usize] { [INFO] [stdout] | ++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:114:28 [INFO] [stdout] | [INFO] [stdout] 114 | if (*cell_bar_ptr).m[*v_h as usize] > 0 [INFO] [stdout] | ^^------------^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut cell::Cell` [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/grid.rs:114:28 [INFO] [stdout] | [INFO] [stdout] 114 | if (*cell_bar_ptr).m[*v_h as usize] > 0 [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] 114 | if (&(*cell_bar_ptr).m)[*v_h as usize] > 0 [INFO] [stdout] | ++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:103:33 [INFO] [stdout] | [INFO] [stdout] 103 | ... (*solution)[v_j as usize] = None; [INFO] [stdout] | ^^--------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec>` [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: `&mut Vec>` [INFO] [stdout] --> src/grid.rs:103:33 [INFO] [stdout] | [INFO] [stdout] 103 | ... (*solution)[v_j as usize] = None; [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] 103 | (&mut (*solution))[v_j as usize] = None; [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:117:29 [INFO] [stdout] | [INFO] [stdout] 117 | ... (*cells_by_vertex)[*v_h as usize].push_back(*cell_bar); [INFO] [stdout] | ^^---------------^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec>` [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: `&mut Vec>` [INFO] [stdout] --> src/grid.rs:117:29 [INFO] [stdout] | [INFO] [stdout] 117 | ... (*cells_by_vertex)[*v_h as usize].push_back(*cell_bar); [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] 117 | (&mut (*cells_by_vertex))[*v_h as usize].push_back(*cell_bar); [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:114:28 [INFO] [stdout] | [INFO] [stdout] 114 | if (*cell_bar_ptr).m[*v_h as usize] > 0 [INFO] [stdout] | ^^------------^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut cell::Cell` [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/grid.rs:114:28 [INFO] [stdout] | [INFO] [stdout] 114 | if (*cell_bar_ptr).m[*v_h as usize] > 0 [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] 114 | if (&(*cell_bar_ptr).m)[*v_h as usize] > 0 [INFO] [stdout] | ++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:120:24 [INFO] [stdout] | [INFO] [stdout] 120 | if (*cells_by_vertex)[*v_h as usize].is_empty() { [INFO] [stdout] | ^^---------------^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec>` [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/grid.rs:120:24 [INFO] [stdout] | [INFO] [stdout] 120 | if (*cells_by_vertex)[*v_h as usize].is_empty() { [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] 120 | if (&(*cells_by_vertex))[*v_h as usize].is_empty() { [INFO] [stdout] | ++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:117:29 [INFO] [stdout] | [INFO] [stdout] 117 | ... (*cells_by_vertex)[*v_h as usize].push_back(*cell_bar); [INFO] [stdout] | ^^---------------^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec>` [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: `&mut Vec>` [INFO] [stdout] --> src/grid.rs:117:29 [INFO] [stdout] | [INFO] [stdout] 117 | ... (*cells_by_vertex)[*v_h as usize].push_back(*cell_bar); [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] 117 | (&mut (*cells_by_vertex))[*v_h as usize].push_back(*cell_bar); [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:121:25 [INFO] [stdout] | [INFO] [stdout] 121 | (*solution)[v_j as usize] = None; [INFO] [stdout] | ^^--------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec>` [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: `&mut Vec>` [INFO] [stdout] --> src/grid.rs:121:25 [INFO] [stdout] | [INFO] [stdout] 121 | (*solution)[v_j as usize] = None; [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] 121 | (&mut (*solution))[v_j as usize] = None; [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:120:24 [INFO] [stdout] | [INFO] [stdout] 120 | if (*cells_by_vertex)[*v_h as usize].is_empty() { [INFO] [stdout] | ^^---------------^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec>` [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/grid.rs:120:24 [INFO] [stdout] | [INFO] [stdout] 120 | if (*cells_by_vertex)[*v_h as usize].is_empty() { [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] 120 | if (&(*cells_by_vertex))[*v_h as usize].is_empty() { [INFO] [stdout] | ++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:129:21 [INFO] [stdout] | [INFO] [stdout] 129 | (*cells_by_vertex)[*v_h as usize].clear(); [INFO] [stdout] | ^^---------------^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec>` [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: `&mut Vec>` [INFO] [stdout] --> src/grid.rs:129:21 [INFO] [stdout] | [INFO] [stdout] 129 | (*cells_by_vertex)[*v_h as usize].clear(); [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] 129 | (&mut (*cells_by_vertex))[*v_h as usize].clear(); [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:133:21 [INFO] [stdout] | [INFO] [stdout] 133 | (*visited)[**v_h as usize] = true; [INFO] [stdout] | ^^-------^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec` [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: `&mut Vec` [INFO] [stdout] --> src/grid.rs:133:21 [INFO] [stdout] | [INFO] [stdout] 133 | (*visited)[**v_h as usize] = true; [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] 133 | (&mut (*visited))[**v_h as usize] = true; [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:121:25 [INFO] [stdout] | [INFO] [stdout] 121 | (*solution)[v_j as usize] = None; [INFO] [stdout] | ^^--------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec>` [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: `&mut Vec>` [INFO] [stdout] --> src/grid.rs:121:25 [INFO] [stdout] | [INFO] [stdout] 121 | (*solution)[v_j as usize] = None; [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] 121 | (&mut (*solution))[v_j as usize] = None; [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:162:21 [INFO] [stdout] | [INFO] [stdout] 162 | (*visited)[*v_h as usize] = false; [INFO] [stdout] | ^^-------^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec` [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: `&mut Vec` [INFO] [stdout] --> src/grid.rs:162:21 [INFO] [stdout] | [INFO] [stdout] 162 | (*visited)[*v_h as usize] = false; [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] 162 | (&mut (*visited))[*v_h as usize] = false; [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:129:21 [INFO] [stdout] | [INFO] [stdout] 129 | (*cells_by_vertex)[*v_h as usize].clear(); [INFO] [stdout] | ^^---------------^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec>` [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: `&mut Vec>` [INFO] [stdout] --> src/grid.rs:129:21 [INFO] [stdout] | [INFO] [stdout] 129 | (*cells_by_vertex)[*v_h as usize].clear(); [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] 129 | (&mut (*cells_by_vertex))[*v_h as usize].clear(); [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:164:21 [INFO] [stdout] | [INFO] [stdout] 164 | (*cells_by_vertex)[*v_h as usize].clear(); [INFO] [stdout] | ^^---------------^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec>` [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: `&mut Vec>` [INFO] [stdout] --> src/grid.rs:164:21 [INFO] [stdout] | [INFO] [stdout] 164 | (*cells_by_vertex)[*v_h as usize].clear(); [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] 164 | (&mut (*cells_by_vertex))[*v_h as usize].clear(); [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:133:21 [INFO] [stdout] | [INFO] [stdout] 133 | (*visited)[**v_h as usize] = true; [INFO] [stdout] | ^^-------^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec` [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: `&mut Vec` [INFO] [stdout] --> src/grid.rs:133:21 [INFO] [stdout] | [INFO] [stdout] 133 | (*visited)[**v_h as usize] = true; [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] 133 | (&mut (*visited))[**v_h as usize] = true; [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:166:17 [INFO] [stdout] | [INFO] [stdout] 166 | (*solution)[v_j as usize] = None; [INFO] [stdout] | ^^--------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec>` [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: `&mut Vec>` [INFO] [stdout] --> src/grid.rs:166:17 [INFO] [stdout] | [INFO] [stdout] 166 | (*solution)[v_j as usize] = None; [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] 166 | (&mut (*solution))[v_j as usize] = None; [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:162:21 [INFO] [stdout] | [INFO] [stdout] 162 | (*visited)[*v_h as usize] = false; [INFO] [stdout] | ^^-------^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec` [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: `&mut Vec` [INFO] [stdout] --> src/grid.rs:162:21 [INFO] [stdout] | [INFO] [stdout] 162 | (*visited)[*v_h as usize] = false; [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] 162 | (&mut (*visited))[*v_h as usize] = false; [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:355:9 [INFO] [stdout] | [INFO] [stdout] 355 | (*cell_ptr).m[color as usize] += 1; [INFO] [stdout] | ^^--------^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut cell::Cell` [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: `&mut Vec` [INFO] [stdout] --> src/grid.rs:355:9 [INFO] [stdout] | [INFO] [stdout] 355 | (*cell_ptr).m[color as usize] += 1; [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] 355 | (&mut (*cell_ptr).m)[color as usize] += 1; [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:164:21 [INFO] [stdout] | [INFO] [stdout] 164 | (*cells_by_vertex)[*v_h as usize].clear(); [INFO] [stdout] | ^^---------------^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec>` [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: `&mut Vec>` [INFO] [stdout] --> src/grid.rs:164:21 [INFO] [stdout] | [INFO] [stdout] 164 | (*cells_by_vertex)[*v_h as usize].clear(); [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] 164 | (&mut (*cells_by_vertex))[*v_h as usize].clear(); [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:552:17 [INFO] [stdout] | [INFO] [stdout] 552 | (*cell_ptr).m[color as usize] -= 1; [INFO] [stdout] | ^^--------^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut cell::Cell` [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: `&mut Vec` [INFO] [stdout] --> src/grid.rs:552:17 [INFO] [stdout] | [INFO] [stdout] 552 | (*cell_ptr).m[color as usize] -= 1; [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] 552 | (&mut (*cell_ptr).m)[color as usize] -= 1; [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:589:40 [INFO] [stdout] | [INFO] [stdout] 589 | ... if (*cell_ptr).points_set[&color].len() == 0 { [INFO] [stdout] | ^^--------^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut cell::Cell` [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: `&HashMap>` [INFO] [stdout] --> src/grid.rs:589:40 [INFO] [stdout] | [INFO] [stdout] 589 | ... if (*cell_ptr).points_set[&color].len() == 0 { [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] 589 | if (&(*cell_ptr).points_set)[&color].len() == 0 { [INFO] [stdout] | ++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:166:17 [INFO] [stdout] | [INFO] [stdout] 166 | (*solution)[v_j as usize] = None; [INFO] [stdout] | ^^--------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec>` [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: `&mut Vec>` [INFO] [stdout] --> src/grid.rs:166:17 [INFO] [stdout] | [INFO] [stdout] 166 | (*solution)[v_j as usize] = None; [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] 166 | (&mut (*solution))[v_j as usize] = None; [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:786:25 [INFO] [stdout] | [INFO] [stdout] 786 | (*final_combination)[i as usize].unwrap_unchecked(), [INFO] [stdout] | ^^-----------------^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec>` [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/grid.rs:786:25 [INFO] [stdout] | [INFO] [stdout] 786 | (*final_combination)[i as usize].unwrap_unchecked(), [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] 786 | (&(*final_combination))[i as usize].unwrap_unchecked(), [INFO] [stdout] | ++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:794:21 [INFO] [stdout] | [INFO] [stdout] 794 | (*final_combination)[(g.v - 1) as usize].unwrap_unchecked() [INFO] [stdout] | ^^-----------------^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec>` [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/grid.rs:794:21 [INFO] [stdout] | [INFO] [stdout] 794 | (*final_combination)[(g.v - 1) as usize].unwrap_unchecked() [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] 794 | (&(*final_combination))[(g.v - 1) as usize].unwrap_unchecked() [INFO] [stdout] | ++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:355:9 [INFO] [stdout] | [INFO] [stdout] 355 | (*cell_ptr).m[color as usize] += 1; [INFO] [stdout] | ^^--------^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut cell::Cell` [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: `&mut Vec` [INFO] [stdout] --> src/grid.rs:355:9 [INFO] [stdout] | [INFO] [stdout] 355 | (*cell_ptr).m[color as usize] += 1; [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] 355 | (&mut (*cell_ptr).m)[color as usize] += 1; [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:802:17 [INFO] [stdout] | [INFO] [stdout] 802 | (*final_combination)[pos] = Some(p); [INFO] [stdout] | ^^-----------------^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec>` [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: `&mut Vec>` [INFO] [stdout] --> src/grid.rs:802:17 [INFO] [stdout] | [INFO] [stdout] 802 | (*final_combination)[pos] = Some(p); [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] 802 | (&mut (*final_combination))[pos] = Some(p); [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:552:17 [INFO] [stdout] | [INFO] [stdout] 552 | (*cell_ptr).m[color as usize] -= 1; [INFO] [stdout] | ^^--------^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut cell::Cell` [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: `&mut Vec` [INFO] [stdout] --> src/grid.rs:552:17 [INFO] [stdout] | [INFO] [stdout] 552 | (*cell_ptr).m[color as usize] -= 1; [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] 552 | (&mut (*cell_ptr).m)[color as usize] -= 1; [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:589:40 [INFO] [stdout] | [INFO] [stdout] 589 | ... if (*cell_ptr).points_set[&color].len() == 0 { [INFO] [stdout] | ^^--------^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut cell::Cell` [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: `&HashMap>` [INFO] [stdout] --> src/grid.rs:589:40 [INFO] [stdout] | [INFO] [stdout] 589 | ... if (*cell_ptr).points_set[&color].len() == 0 { [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] 589 | if (&(*cell_ptr).points_set)[&color].len() == 0 { [INFO] [stdout] | ++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:786:25 [INFO] [stdout] | [INFO] [stdout] 786 | (*final_combination)[i as usize].unwrap_unchecked(), [INFO] [stdout] | ^^-----------------^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec>` [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/grid.rs:786:25 [INFO] [stdout] | [INFO] [stdout] 786 | (*final_combination)[i as usize].unwrap_unchecked(), [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] 786 | (&(*final_combination))[i as usize].unwrap_unchecked(), [INFO] [stdout] | ++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:794:21 [INFO] [stdout] | [INFO] [stdout] 794 | (*final_combination)[(g.v - 1) as usize].unwrap_unchecked() [INFO] [stdout] | ^^-----------------^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec>` [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/grid.rs:794:21 [INFO] [stdout] | [INFO] [stdout] 794 | (*final_combination)[(g.v - 1) as usize].unwrap_unchecked() [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] 794 | (&(*final_combination))[(g.v - 1) as usize].unwrap_unchecked() [INFO] [stdout] | ++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implicit autoref creates a reference to the dereference of a raw pointer [INFO] [stdout] --> src/grid.rs:802:17 [INFO] [stdout] | [INFO] [stdout] 802 | (*final_combination)[pos] = Some(p); [INFO] [stdout] | ^^-----------------^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this raw pointer has type `*mut Vec>` [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: `&mut Vec>` [INFO] [stdout] --> src/grid.rs:802:17 [INFO] [stdout] | [INFO] [stdout] 802 | (*final_combination)[pos] = Some(p); [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] 802 | (&mut (*final_combination))[pos] = Some(p); [INFO] [stdout] | +++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.80s [INFO] running `Command { std: "docker" "inspect" "26b38a543f05adbac9a4d517642114da3e7da18f881aac785ac93598181992ec", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "26b38a543f05adbac9a4d517642114da3e7da18f881aac785ac93598181992ec", kill_on_drop: false }` [INFO] [stdout] 26b38a543f05adbac9a4d517642114da3e7da18f881aac785ac93598181992ec