[INFO] cloning repository https://github.com/ndmitchell/interpret [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ndmitchell/interpret" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fndmitchell%2Finterpret", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fndmitchell%2Finterpret'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 4d52500fc29f8d3e767ffe307c34b0e1611b03ed [INFO] checking ndmitchell/interpret against try#b1f2594eac607c1f051534800237eeedb5590a49 for pr-139493-3 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fndmitchell%2Finterpret" "/workspace/builds/worker-1-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1-tc2/source'... [INFO] [stderr] done. [INFO] removed /workspace/builds/worker-1-tc2/source/rust-toolchain [INFO] started tweaking git repo https://github.com/ndmitchell/interpret [INFO] finished tweaking git repo https://github.com/ndmitchell/interpret [INFO] tweaked toml for git repo https://github.com/ndmitchell/interpret written to /workspace/builds/worker-1-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/ndmitchell/interpret on toolchain b1f2594eac607c1f051534800237eeedb5590a49 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b1f2594eac607c1f051534800237eeedb5590a49" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/ndmitchell/interpret 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" "+b1f2594eac607c1f051534800237eeedb5590a49" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+b1f2594eac607c1f051534800237eeedb5590a49" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 792e3e6b006b7fab18b7a884ef4e5c8517bd669b25addc5ea3c4378c7519557a [INFO] running `Command { std: "docker" "start" "-a" "792e3e6b006b7fab18b7a884ef4e5c8517bd669b25addc5ea3c4378c7519557a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "792e3e6b006b7fab18b7a884ef4e5c8517bd669b25addc5ea3c4378c7519557a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "792e3e6b006b7fab18b7a884ef4e5c8517bd669b25addc5ea3c4378c7519557a", kill_on_drop: false }` [INFO] [stdout] 792e3e6b006b7fab18b7a884ef4e5c8517bd669b25addc5ea3c4378c7519557a [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+b1f2594eac607c1f051534800237eeedb5590a49" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 70b085b28940c90c0a8b98ec28ee706f87d5f2d63879ef4f56cfd0da7d44e72a [INFO] running `Command { std: "docker" "start" "-a" "70b085b28940c90c0a8b98ec28ee706f87d5f2d63879ef4f56cfd0da7d44e72a", kill_on_drop: false }` [INFO] [stderr] Compiling crossbeam-utils v0.8.1 [INFO] [stderr] Compiling serde v1.0.118 [INFO] [stderr] Compiling semver-parser v0.7.0 [INFO] [stderr] Compiling libc v0.2.81 [INFO] [stderr] Compiling const_fn v0.4.4 [INFO] [stderr] Compiling proc-macro2 v1.0.24 [INFO] [stderr] Compiling memchr v2.3.4 [INFO] [stderr] Compiling byteorder v1.3.4 [INFO] [stderr] Compiling unicode-xid v0.2.1 [INFO] [stderr] Compiling num-traits v0.2.14 [INFO] [stderr] Compiling syn v1.0.54 [INFO] [stderr] Compiling serde_json v1.0.60 [INFO] [stderr] Checking itoa v0.4.6 [INFO] [stderr] Compiling serde_derive v1.0.118 [INFO] [stderr] Checking itertools v0.9.0 [INFO] [stderr] Checking regex-syntax v0.6.21 [INFO] [stderr] Checking half v1.6.0 [INFO] [stderr] Checking walkdir v2.3.1 [INFO] [stderr] Compiling semver v0.9.0 [INFO] [stderr] Checking clap v2.33.3 [INFO] [stderr] Checking csv-core v0.1.10 [INFO] [stderr] Checking regex-automata v0.1.9 [INFO] [stderr] Checking crossbeam-channel v0.5.0 [INFO] [stderr] Compiling rustc_version v0.2.3 [INFO] [stderr] Compiling cast v0.2.3 [INFO] [stderr] Checking num_cpus v1.13.0 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Compiling quote v1.0.7 [INFO] [stderr] Checking crossbeam-epoch v0.9.1 [INFO] [stderr] Checking plotters v0.2.15 [INFO] [stderr] Checking regex v1.4.2 [INFO] [stderr] Checking crossbeam-deque v0.8.0 [INFO] [stderr] Checking criterion-plot v0.4.3 [INFO] [stderr] Checking rayon-core v1.9.0 [INFO] [stderr] Checking rayon v1.5.0 [INFO] [stderr] Checking bstr v0.2.14 [INFO] [stderr] Checking serde_cbor v0.11.1 [INFO] [stderr] Checking csv v1.1.5 [INFO] [stderr] Checking tinytemplate v1.1.0 [INFO] [stderr] Checking criterion v0.3.3 [INFO] [stderr] Checking interpret v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register.rs:26:20 [INFO] [stdout] | [INFO] [stdout] 26 | codes.push(ret as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(function_casts_as_integer)]` on by default [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 26 | codes.push(ret as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register.rs:59:26 [INFO] [stdout] | [INFO] [stdout] 59 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 59 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register.rs:85:26 [INFO] [stdout] | [INFO] [stdout] 85 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 85 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register.rs:100:26 [INFO] [stdout] | [INFO] [stdout] 100 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 100 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register.rs:125:32 [INFO] [stdout] | [INFO] [stdout] 125 | codes.push(after_a as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 125 | codes.push(after_a as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register.rs:129:32 [INFO] [stdout] | [INFO] [stdout] 129 | codes.push(after_b as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 129 | codes.push(after_b as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_compact.rs:23:20 [INFO] [stdout] | [INFO] [stdout] 23 | codes.push(ret as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 23 | codes.push(ret as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_compact.rs:56:26 [INFO] [stdout] | [INFO] [stdout] 56 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 56 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_compact.rs:82:26 [INFO] [stdout] | [INFO] [stdout] 82 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 82 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_compact.rs:97:26 [INFO] [stdout] | [INFO] [stdout] 97 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 97 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_compact.rs:122:32 [INFO] [stdout] | [INFO] [stdout] 122 | codes.push(after_a as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 122 | codes.push(after_a as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_compact.rs:126:32 [INFO] [stdout] | [INFO] [stdout] 126 | codes.push(after_b as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 126 | codes.push(after_b as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_compact_loop.rs:23:20 [INFO] [stdout] | [INFO] [stdout] 23 | codes.push(ret as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 23 | codes.push(ret as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/alt/jump_register_compact_loop.rs:28:14 [INFO] [stdout] | [INFO] [stdout] 28 | unsafe { std::mem::transmute([x as u8, y as u8, z as u8, 0, 0, 0, 0, 0]) } [INFO] [stdout] | -------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: replace this with: `isize::from_ne_bytes` [INFO] [stdout] | [INFO] [stdout] = help: there's also `from_le_bytes` and `from_be_bytes` if you expect a particular byte order [INFO] [stdout] = note: `#[warn(unnecessary_transmutes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/alt/jump_register_compact_loop.rs:32:54 [INFO] [stdout] | [INFO] [stdout] 32 | let [x, y, z, _, _, _, _, _]: [u8; 8] = unsafe { std::mem::transmute(xyz) }; [INFO] [stdout] | -------------------^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: replace this with: `isize::to_ne_bytes` [INFO] [stdout] | [INFO] [stdout] = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_compact_loop.rs:64:26 [INFO] [stdout] | [INFO] [stdout] 64 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 64 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_compact_loop.rs:87:26 [INFO] [stdout] | [INFO] [stdout] 87 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 87 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_compact_loop.rs:100:26 [INFO] [stdout] | [INFO] [stdout] 100 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 100 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_compact_loop.rs:133:32 [INFO] [stdout] | [INFO] [stdout] 133 | codes.push(after_a as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 133 | codes.push(after_a as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_compact_loop.rs:139:33 [INFO] [stdout] | [INFO] [stdout] 139 | codes.push(after_ba as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 139 | codes.push(after_ba as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_loop.rs:23:20 [INFO] [stdout] | [INFO] [stdout] 23 | codes.push(ret as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 23 | codes.push(ret as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_loop.rs:56:26 [INFO] [stdout] | [INFO] [stdout] 56 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 56 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_loop.rs:82:26 [INFO] [stdout] | [INFO] [stdout] 82 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 82 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_loop.rs:97:26 [INFO] [stdout] | [INFO] [stdout] 97 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 97 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_loop.rs:130:32 [INFO] [stdout] | [INFO] [stdout] 130 | codes.push(after_a as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 130 | codes.push(after_a as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_loop.rs:136:33 [INFO] [stdout] | [INFO] [stdout] 136 | codes.push(after_ba as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 136 | codes.push(after_ba as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_stack.rs:26:20 [INFO] [stdout] | [INFO] [stdout] 26 | codes.push(ret as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 26 | codes.push(ret as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_stack.rs:39:26 [INFO] [stdout] | [INFO] [stdout] 39 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 39 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_stack.rs:51:26 [INFO] [stdout] | [INFO] [stdout] 51 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 51 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_stack.rs:65:26 [INFO] [stdout] | [INFO] [stdout] 65 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 65 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_stack.rs:83:26 [INFO] [stdout] | [INFO] [stdout] 83 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 83 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_stack.rs:108:32 [INFO] [stdout] | [INFO] [stdout] 108 | codes.push(after_a as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 108 | codes.push(after_a as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_stack.rs:111:32 [INFO] [stdout] | [INFO] [stdout] 111 | codes.push(after_b as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 111 | codes.push(after_b as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/stack.rs:22:18 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn stack(&mut self) -> Stack { [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 22 | pub fn stack(&mut self) -> Stack<'_, T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register.rs:26:20 [INFO] [stdout] | [INFO] [stdout] 26 | codes.push(ret as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(function_casts_as_integer)]` on by default [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 26 | codes.push(ret as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register.rs:59:26 [INFO] [stdout] | [INFO] [stdout] 59 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 59 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register.rs:85:26 [INFO] [stdout] | [INFO] [stdout] 85 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 85 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register.rs:100:26 [INFO] [stdout] | [INFO] [stdout] 100 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 100 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register.rs:125:32 [INFO] [stdout] | [INFO] [stdout] 125 | codes.push(after_a as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 125 | codes.push(after_a as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register.rs:129:32 [INFO] [stdout] | [INFO] [stdout] 129 | codes.push(after_b as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 129 | codes.push(after_b as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_compact.rs:23:20 [INFO] [stdout] | [INFO] [stdout] 23 | codes.push(ret as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 23 | codes.push(ret as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_compact.rs:56:26 [INFO] [stdout] | [INFO] [stdout] 56 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 56 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_compact.rs:82:26 [INFO] [stdout] | [INFO] [stdout] 82 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 82 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_compact.rs:97:26 [INFO] [stdout] | [INFO] [stdout] 97 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 97 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_compact.rs:122:32 [INFO] [stdout] | [INFO] [stdout] 122 | codes.push(after_a as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 122 | codes.push(after_a as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_compact.rs:126:32 [INFO] [stdout] | [INFO] [stdout] 126 | codes.push(after_b as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 126 | codes.push(after_b as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_compact_loop.rs:23:20 [INFO] [stdout] | [INFO] [stdout] 23 | codes.push(ret as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 23 | codes.push(ret as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/alt/jump_register_compact_loop.rs:28:14 [INFO] [stdout] | [INFO] [stdout] 28 | unsafe { std::mem::transmute([x as u8, y as u8, z as u8, 0, 0, 0, 0, 0]) } [INFO] [stdout] | -------------------^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: replace this with: `isize::from_ne_bytes` [INFO] [stdout] | [INFO] [stdout] = help: there's also `from_le_bytes` and `from_be_bytes` if you expect a particular byte order [INFO] [stdout] = note: `#[warn(unnecessary_transmutes)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/alt/jump_register_compact_loop.rs:32:54 [INFO] [stdout] | [INFO] [stdout] 32 | let [x, y, z, _, _, _, _, _]: [u8; 8] = unsafe { std::mem::transmute(xyz) }; [INFO] [stdout] | -------------------^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: replace this with: `isize::to_ne_bytes` [INFO] [stdout] | [INFO] [stdout] = help: there's also `to_le_bytes` and `to_be_bytes` if you expect a particular byte order [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_compact_loop.rs:64:26 [INFO] [stdout] | [INFO] [stdout] 64 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 64 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_compact_loop.rs:87:26 [INFO] [stdout] | [INFO] [stdout] 87 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 87 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_compact_loop.rs:100:26 [INFO] [stdout] | [INFO] [stdout] 100 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 100 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_compact_loop.rs:133:32 [INFO] [stdout] | [INFO] [stdout] 133 | codes.push(after_a as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 133 | codes.push(after_a as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_compact_loop.rs:139:33 [INFO] [stdout] | [INFO] [stdout] 139 | codes.push(after_ba as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 139 | codes.push(after_ba as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_loop.rs:23:20 [INFO] [stdout] | [INFO] [stdout] 23 | codes.push(ret as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 23 | codes.push(ret as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_loop.rs:56:26 [INFO] [stdout] | [INFO] [stdout] 56 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 56 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_loop.rs:82:26 [INFO] [stdout] | [INFO] [stdout] 82 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 82 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_loop.rs:97:26 [INFO] [stdout] | [INFO] [stdout] 97 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 97 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_loop.rs:130:32 [INFO] [stdout] | [INFO] [stdout] 130 | codes.push(after_a as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 130 | codes.push(after_a as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_register_loop.rs:136:33 [INFO] [stdout] | [INFO] [stdout] 136 | codes.push(after_ba as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 136 | codes.push(after_ba as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_stack.rs:26:20 [INFO] [stdout] | [INFO] [stdout] 26 | codes.push(ret as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 26 | codes.push(ret as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_stack.rs:39:26 [INFO] [stdout] | [INFO] [stdout] 39 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 39 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_stack.rs:51:26 [INFO] [stdout] | [INFO] [stdout] 51 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 51 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_stack.rs:65:26 [INFO] [stdout] | [INFO] [stdout] 65 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 65 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_stack.rs:83:26 [INFO] [stdout] | [INFO] [stdout] 83 | codes.push(f as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 83 | codes.push(f as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_stack.rs:108:32 [INFO] [stdout] | [INFO] [stdout] 108 | codes.push(after_a as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 108 | codes.push(after_a as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: direct cast of function item into an integer [INFO] [stdout] --> src/alt/jump_stack.rs:111:32 [INFO] [stdout] | [INFO] [stdout] 111 | codes.push(after_b as isize); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: first cast to a pointer `as *const ()` [INFO] [stdout] | [INFO] [stdout] 111 | codes.push(after_b as *const () as isize); [INFO] [stdout] | ++++++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing [INFO] [stdout] --> src/stack.rs:22:18 [INFO] [stdout] | [INFO] [stdout] 22 | pub fn stack(&mut self) -> Stack { [INFO] [stdout] | ^^^^^^^^^ ^^^^^^^^ the same lifetime is hidden here [INFO] [stdout] | | [INFO] [stdout] | the lifetime is elided here [INFO] [stdout] | [INFO] [stdout] = help: the same lifetime is referred to in inconsistent ways, making the signature confusing [INFO] [stdout] = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default [INFO] [stdout] help: use `'_` for type paths [INFO] [stdout] | [INFO] [stdout] 22 | pub fn stack(&mut self) -> Stack<'_, T> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 15.23s [INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: criterion v0.3.3 [INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 3` [INFO] running `Command { std: "docker" "inspect" "70b085b28940c90c0a8b98ec28ee706f87d5f2d63879ef4f56cfd0da7d44e72a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "70b085b28940c90c0a8b98ec28ee706f87d5f2d63879ef4f56cfd0da7d44e72a", kill_on_drop: false }` [INFO] [stdout] 70b085b28940c90c0a8b98ec28ee706f87d5f2d63879ef4f56cfd0da7d44e72a