[INFO] cloning repository https://github.com/JonathanWoollett-Light/formal
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/JonathanWoollett-Light/formal" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJonathanWoollett-Light%2Fformal", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJonathanWoollett-Light%2Fformal'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] af6f07a25e9cb50c1701b19a315be588720c8386
[INFO] checking JonathanWoollett-Light/formal against a5689b034ad287112f709693384a37f1377eb9cc for pr-129249-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FJonathanWoollett-Light%2Fformal" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-4-tc2/source/.cargo/config.toml
[INFO] started tweaking git repo https://github.com/JonathanWoollett-Light/formal
[INFO] finished tweaking git repo https://github.com/JonathanWoollett-Light/formal
[INFO] tweaked toml for git repo https://github.com/JonathanWoollett-Light/formal written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/JonathanWoollett-Light/formal on toolchain a5689b034ad287112f709693384a37f1377eb9cc
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/JonathanWoollett-Light/formal 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" "+a5689b034ad287112f709693384a37f1377eb9cc" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,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" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 6f39e665c44a4c962926e3794e7d3c45cfc62fa5f13aa4ca8272a99099c48b0a
[INFO] running `Command { std: "docker" "start" "6f39e665c44a4c962926e3794e7d3c45cfc62fa5f13aa4ca8272a99099c48b0a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6f39e665c44a4c962926e3794e7d3c45cfc62fa5f13aa4ca8272a99099c48b0a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "6f39e665c44a4c962926e3794e7d3c45cfc62fa5f13aa4ca8272a99099c48b0a" "/opt/rustwide/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "6f39e665c44a4c962926e3794e7d3c45cfc62fa5f13aa4ca8272a99099c48b0a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-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" "-w" "/opt/rustwide/workdir" "--user" "0:0" "6f39e665c44a4c962926e3794e7d3c45cfc62fa5f13aa4ca8272a99099c48b0a" "/opt/rustwide/cargo-home/bin/cargo" "+a5689b034ad287112f709693384a37f1377eb9cc" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.158
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]     Checking tracing-core v0.1.32
[INFO] [stderr]     Checking futures-core v0.3.30
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]     Checking futures-sink v0.3.30
[INFO] [stderr]     Checking regex-syntax v0.6.29
[INFO] [stderr]     Checking regex-syntax v0.8.5
[INFO] [stderr]    Compiling heapless v0.7.17
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking overload v0.1.1
[INFO] [stderr]     Checking crossbeam-deque v0.8.6
[INFO] [stderr]     Checking spin v0.9.8
[INFO] [stderr]     Checking crossbeam-channel v0.5.13
[INFO] [stderr]     Checking hash32 v0.2.1
[INFO] [stderr]     Checking thread_local v1.1.8
[INFO] [stderr]     Checking either v1.13.0
[INFO] [stderr]     Checking nu-ansi-term v0.46.0
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]     Checking futures-util v0.3.30
[INFO] [stderr]     Checking futures-channel v0.3.30
[INFO] [stderr]     Checking num-complex v0.4.6
[INFO] [stderr]     Checking cpufeatures v0.2.16
[INFO] [stderr]     Checking itertools v0.13.0
[INFO] [stderr]     Checking num-bigint v0.4.6
[INFO] [stderr]     Checking num-iter v0.1.45
[INFO] [stderr]     Checking sha2 v0.10.8
[INFO] [stderr]     Checking ordered-float v1.1.1
[INFO] [stderr]     Checking rayon-core v1.13.0
[INFO] [stderr]    Compiling syn v2.0.87
[INFO] [stderr]     Checking thousands v0.2.0
[INFO] [stderr]     Checking integer-encoding v3.0.4
[INFO] [stderr]     Checking ansi_term v0.12.1
[INFO] [stderr]     Checking tracing-log v0.2.0
[INFO] [stderr]     Checking tracing-log v0.1.4
[INFO] [stderr]    Compiling formal v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking rayon v1.12.0
[INFO] [stderr]     Checking getrandom v0.2.15
[INFO] [stderr]     Checking num_cpus v1.16.0
[INFO] [stderr]     Checking threadpool v1.8.1
[INFO] [stderr]     Checking thrift v0.15.0
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr] warning: formal@0.1.0: formal setup: some system dependencies are missing or were just installed
[INFO] [stderr] warning: formal@0.1.0:   missing packages (no terminal to prompt for sudo); run:  sudo apt-get install -y qemu-system-misc gcc-riscv64-unknown-elf binutils-riscv64-unknown-elf qemu-user
[INFO] [stderr] warning: formal@0.1.0:   if a QEMU boot test reports a missing toolchain, set RISCV_BIN to the dir holding riscv64-unknown-elf-as/ld (apt installs them on PATH; export RISCV_BIN accordingly).
[INFO] [stderr] warning: formal@0.1.0:   (set FORMAL_NO_SETUP=1 to skip this, or FORMAL_SETUP=detect to only report)
[INFO] [stderr]     Checking num-rational v0.4.2
[INFO] [stderr]     Checking num v0.4.3
[INFO] [stderr]     Checking regex-automata v0.1.10
[INFO] [stderr]     Checking matchers v0.1.0
[INFO] [stderr]     Checking regex-automata v0.4.8
[INFO] [stderr]     Checking futures-executor v0.3.30
[INFO] [stderr]     Checking regex v1.11.1
[INFO] [stderr]    Compiling zerocopy-derive v0.7.35
[INFO] [stderr]    Compiling thiserror-impl v1.0.63
[INFO] [stderr]    Compiling tracing-attributes v0.1.27
[INFO] [stderr]    Compiling pin-project-internal v1.1.5
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling async-trait v0.1.82
[INFO] [stderr]    Compiling tracing-test-macro v0.2.5
[INFO] [stderr]     Checking zerocopy v0.7.35
[INFO] [stderr]     Checking thiserror v1.0.63
[INFO] [stderr]     Checking pin-project v1.1.5
[INFO] [stderr]     Checking ppv-lite86 v0.2.20
[INFO] [stderr]     Checking tracing v0.1.40
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking tracing-subscriber v0.3.18
[INFO] [stderr]     Checking cobs v0.3.0
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking opentelemetry v0.17.0
[INFO] [stderr]     Checking tracing-test v0.2.5
[INFO] [stderr]     Checking tracing-assertions v0.6.0
[INFO] [stderr]     Checking opentelemetry-semantic-conventions v0.9.0
[INFO] [stderr]     Checking tracing-opentelemetry v0.17.4
[INFO] [stderr]     Checking postcard v1.1.3
[INFO] [stderr]     Checking opentelemetry-jaeger v0.16.0
[INFO] [stdout] error: useless conversion to the same type: `u64`
[INFO] [stdout]    --> src/verifier_types.rs:432:47
[INFO] [stdout]     |
[INFO] [stdout] 432 |                 (Some(o), Some(v)) if *len == size(&Type::U8).into() => {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 432 -                 (Some(o), Some(v)) if *len == size(&Type::U8).into() => {
[INFO] [stdout] 432 +                 (Some(o), Some(v)) if *len == size(&Type::U8) => {
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 432 -                 (Some(o), Some(v)) if *len == size(&Type::U8).into() => {
[INFO] [stdout] 432 +                 (Some(o), Some(v)) if *len == <u64 as Into<_>>::into(size(&Type::U8)) => {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `u64`
[INFO] [stdout]    --> src/verifier_types.rs:439:47
[INFO] [stdout]     |
[INFO] [stdout] 439 |                 (Some(o), Some(v)) if *len == size(&Type::U32).into() => {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 439 -                 (Some(o), Some(v)) if *len == size(&Type::U32).into() => {
[INFO] [stdout] 439 +                 (Some(o), Some(v)) if *len == size(&Type::U32) => {
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 439 -                 (Some(o), Some(v)) if *len == size(&Type::U32).into() => {
[INFO] [stdout] 439 +                 (Some(o), Some(v)) if *len == <u64 as Into<_>>::into(size(&Type::U32)) => {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `u64`
[INFO] [stdout]    --> src/verifier_types.rs:449:41
[INFO] [stdout]     |
[INFO] [stdout] 449 |                 (Some(o), _) if *len == size(&Type::U64).into() => {
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 449 -                 (Some(o), _) if *len == size(&Type::U64).into() => {
[INFO] [stdout] 449 +                 (Some(o), _) if *len == size(&Type::U64) => {
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 449 -                 (Some(o), _) if *len == size(&Type::U64).into() => {
[INFO] [stdout] 449 +                 (Some(o), _) if *len == <u64 as Into<_>>::into(size(&Type::U64)) => {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ast::Label`
[INFO] [stdout]     --> src/verifier_types.rs:1873:21
[INFO] [stdout]      |
[INFO] [stdout] 1873 |                     tag.into(),
[INFO] [stdout]      |                     ^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]      |
[INFO] [stdout] 1873 -                     tag.into(),
[INFO] [stdout] 1873 +                     tag,
[INFO] [stdout]      |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]      |
[INFO] [stdout] 1873 -                     tag.into(),
[INFO] [stdout] 1873 +                     <ast::Label as Into<_>>::into(tag),
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: formal@0.1.0: formal setup: some system dependencies are missing or were just installed
[INFO] [stderr] warning: formal@0.1.0:   missing packages (no terminal to prompt for sudo); run:  sudo apt-get install -y qemu-system-misc gcc-riscv64-unknown-elf binutils-riscv64-unknown-elf qemu-user
[INFO] [stderr] warning: formal@0.1.0:   if a QEMU boot test reports a missing toolchain, set RISCV_BIN to the dir holding riscv64-unknown-elf-as/ld (apt installs them on PATH; export RISCV_BIN accordingly).
[INFO] [stderr] warning: formal@0.1.0:   (set FORMAL_NO_SETUP=1 to skip this, or FORMAL_SETUP=detect to only report)
[INFO] [stderr] error: could not compile `formal` (lib) due to 4 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: useless conversion to the same type: `u64`
[INFO] [stdout]    --> src/verifier_types.rs:432:47
[INFO] [stdout]     |
[INFO] [stdout] 432 |                 (Some(o), Some(v)) if *len == size(&Type::U8).into() => {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 432 -                 (Some(o), Some(v)) if *len == size(&Type::U8).into() => {
[INFO] [stdout] 432 +                 (Some(o), Some(v)) if *len == size(&Type::U8) => {
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 432 -                 (Some(o), Some(v)) if *len == size(&Type::U8).into() => {
[INFO] [stdout] 432 +                 (Some(o), Some(v)) if *len == <u64 as Into<_>>::into(size(&Type::U8)) => {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `u64`
[INFO] [stdout]    --> src/verifier_types.rs:439:47
[INFO] [stdout]     |
[INFO] [stdout] 439 |                 (Some(o), Some(v)) if *len == size(&Type::U32).into() => {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 439 -                 (Some(o), Some(v)) if *len == size(&Type::U32).into() => {
[INFO] [stdout] 439 +                 (Some(o), Some(v)) if *len == size(&Type::U32) => {
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 439 -                 (Some(o), Some(v)) if *len == size(&Type::U32).into() => {
[INFO] [stdout] 439 +                 (Some(o), Some(v)) if *len == <u64 as Into<_>>::into(size(&Type::U32)) => {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `u64`
[INFO] [stdout]    --> src/verifier_types.rs:449:41
[INFO] [stdout]     |
[INFO] [stdout] 449 |                 (Some(o), _) if *len == size(&Type::U64).into() => {
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]     |
[INFO] [stdout] 449 -                 (Some(o), _) if *len == size(&Type::U64).into() => {
[INFO] [stdout] 449 +                 (Some(o), _) if *len == size(&Type::U64) => {
[INFO] [stdout]     |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]     |
[INFO] [stdout] 449 -                 (Some(o), _) if *len == size(&Type::U64).into() => {
[INFO] [stdout] 449 +                 (Some(o), _) if *len == <u64 as Into<_>>::into(size(&Type::U64)) => {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `ast::Label`
[INFO] [stdout]     --> src/verifier_types.rs:1873:21
[INFO] [stdout]      |
[INFO] [stdout] 1873 |                     tag.into(),
[INFO] [stdout]      |                     ^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] help: consider removing the conversion call
[INFO] [stdout]      |
[INFO] [stdout] 1873 -                     tag.into(),
[INFO] [stdout] 1873 +                     tag,
[INFO] [stdout]      |
[INFO] [stdout] help: you can use the fully-qualified path to avoid triggering this lint
[INFO] [stdout]      |
[INFO] [stdout] 1873 -                     tag.into(),
[INFO] [stdout] 1873 +                     <ast::Label as Into<_>>::into(tag),
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: formal@0.1.0: formal setup: some system dependencies are missing or were just installed
[INFO] [stderr] warning: formal@0.1.0:   missing packages (no terminal to prompt for sudo); run:  sudo apt-get install -y qemu-system-misc gcc-riscv64-unknown-elf binutils-riscv64-unknown-elf qemu-user
[INFO] [stderr] warning: formal@0.1.0:   if a QEMU boot test reports a missing toolchain, set RISCV_BIN to the dir holding riscv64-unknown-elf-as/ld (apt installs them on PATH; export RISCV_BIN accordingly).
[INFO] [stderr] warning: formal@0.1.0:   (set FORMAL_NO_SETUP=1 to skip this, or FORMAL_SETUP=detect to only report)
[INFO] [stderr] error: could not compile `formal` (lib test) due to 4 previous errors
[INFO] running `Command { std: "docker" "inspect" "6f39e665c44a4c962926e3794e7d3c45cfc62fa5f13aa4ca8272a99099c48b0a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "6f39e665c44a4c962926e3794e7d3c45cfc62fa5f13aa4ca8272a99099c48b0a", kill_on_drop: false }`
[INFO] [stdout] 6f39e665c44a4c962926e3794e7d3c45cfc62fa5f13aa4ca8272a99099c48b0a
