[INFO] fetching crate bytekey-fix 0.5.1... [INFO] checking bytekey-fix-0.5.1 against try#a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d for pr-145342-1 [INFO] extracting crate bytekey-fix 0.5.1 into /workspace/builds/worker-7-tc2/source [INFO] started tweaking crates.io crate bytekey-fix 0.5.1 [INFO] finished tweaking crates.io crate bytekey-fix 0.5.1 [INFO] tweaked toml for crates.io crate bytekey-fix 0.5.1 written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] validating manifest of crates.io crate bytekey-fix 0.5.1 on toolchain a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Locking 18 packages to latest compatible versions [INFO] [stderr] Adding rand v0.5.6 (available: v0.9.2) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "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] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 6841660ddeea80f31d2d53c40a22311d24979abf8ad52192e125901f38c68732 [INFO] running `Command { std: "docker" "start" "-a" "6841660ddeea80f31d2d53c40a22311d24979abf8ad52192e125901f38c68732", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "6841660ddeea80f31d2d53c40a22311d24979abf8ad52192e125901f38c68732", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "6841660ddeea80f31d2d53c40a22311d24979abf8ad52192e125901f38c68732", kill_on_drop: false }` [INFO] [stdout] 6841660ddeea80f31d2d53c40a22311d24979abf8ad52192e125901f38c68732 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:7ad1b28ee6f5f7f699f6cf7015098d6ccdd96d6f2d78dd06228f5b4c9faf309c" "/opt/rustwide/cargo-home/bin/cargo" "+a4980311fb7bb9e7893708e6bd3fbbfb2819fd3d" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 3135341c104a1e5751ab5a110d852fa33249fa445251bc60455f21582b2c5052 [INFO] running `Command { std: "docker" "start" "-a" "3135341c104a1e5751ab5a110d852fa33249fa445251bc60455f21582b2c5052", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.101 [INFO] [stderr] Compiling unicode-ident v1.0.18 [INFO] [stderr] Compiling libc v0.2.175 [INFO] [stderr] Compiling serde v1.0.219 [INFO] [stderr] Checking rand_core v0.4.2 [INFO] [stderr] Checking byteorder v1.5.0 [INFO] [stderr] Checking utf-8 v0.7.6 [INFO] [stderr] Checking rand_core v0.3.1 [INFO] [stderr] Compiling quote v1.0.40 [INFO] [stderr] Compiling syn v2.0.106 [INFO] [stderr] Checking rand v0.5.6 [INFO] [stderr] Checking bytekey-fix v0.5.1 (/opt/rustwide/workdir) [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/de.rs:196:31 [INFO] [stdout] | [INFO] [stdout] 196 | let f: f32 = unsafe { transmute(val ^ t) }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unnecessary_transmutes)]` on by default [INFO] [stdout] help: replace this with [INFO] [stdout] | [INFO] [stdout] 196 - let f: f32 = unsafe { transmute(val ^ t) }; [INFO] [stdout] 196 + let f: f32 = unsafe { f32::from_bits(i32::cast_unsigned(val ^ t)) }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/de.rs:206:31 [INFO] [stdout] | [INFO] [stdout] 206 | let f: f64 = unsafe { transmute(val ^ t) }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace this with [INFO] [stdout] | [INFO] [stdout] 206 - let f: f64 = unsafe { transmute(val ^ t) }; [INFO] [stdout] 206 + let f: f64 = unsafe { f64::from_bits(i64::cast_unsigned(val ^ t)) }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/de.rs:466:9 [INFO] [stdout] | [INFO] [stdout] 457 | / fn deserialize_enum( [INFO] [stdout] 458 | | self, [INFO] [stdout] 459 | | _name: &'static str, [INFO] [stdout] 460 | | _fields: &'static [&'static str], [INFO] [stdout] ... | [INFO] [stdout] 463 | | where [INFO] [stdout] 464 | | V: Visitor<'de>, [INFO] [stdout] | |____________________________- move the `impl` block outside of this method `deserialize_enum` [INFO] [stdout] 465 | { [INFO] [stdout] 466 | impl<'de, 'a, R> serde::de::EnumAccess<'de> for &'a mut Deserializer [INFO] [stdout] | ^^^^^^^^^^^^^^^^^---------------------^^^^^^^^^^^^^^^^^^------------^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `Deserializer` is not local [INFO] [stdout] | `EnumAccess` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/de.rs:484:9 [INFO] [stdout] | [INFO] [stdout] 457 | / fn deserialize_enum( [INFO] [stdout] 458 | | self, [INFO] [stdout] 459 | | _name: &'static str, [INFO] [stdout] 460 | | _fields: &'static [&'static str], [INFO] [stdout] ... | [INFO] [stdout] 463 | | where [INFO] [stdout] 464 | | V: Visitor<'de>, [INFO] [stdout] | |____________________________- move the `impl` block outside of this method `deserialize_enum` [INFO] [stdout] ... [INFO] [stdout] 484 | impl<'de, 'a, R> serde::de::VariantAccess<'de> for &'a mut Deserializer [INFO] [stdout] | ^^^^^^^^^^^^^^^^^------------------------^^^^^^^^^^^^^^^^^^------------^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `Deserializer` is not local [INFO] [stdout] | `VariantAccess` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/ser.rs:420:28 [INFO] [stdout] | [INFO] [stdout] 420 | let val = unsafe { transmute::(v) }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace this with [INFO] [stdout] | [INFO] [stdout] 420 - let val = unsafe { transmute::(v) }; [INFO] [stdout] 420 + let val = unsafe { f32::to_bits(v).cast_signed() }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/ser.rs:432:28 [INFO] [stdout] | [INFO] [stdout] 432 | let val = unsafe { transmute::(v) }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace this with [INFO] [stdout] | [INFO] [stdout] 432 - let val = unsafe { transmute::(v) }; [INFO] [stdout] 432 + let val = unsafe { f64::to_bits(v).cast_signed() }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling serde_derive v1.0.219 [INFO] [stdout] error[E0463]: can't find crate for `bytekey` [INFO] [stdout] --> tests/ser.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | extern crate bytekey; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ can't find crate [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0463]: can't find crate for `bytekey` [INFO] [stdout] --> tests/de.rs:1:1 [INFO] [stdout] | [INFO] [stdout] 1 | extern crate bytekey; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ can't find crate [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0463`. [INFO] [stdout] [INFO] [stderr] error: could not compile `bytekey-fix` (test "ser") due to 1 previous error [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/de.rs:196:31 [INFO] [stdout] | [INFO] [stdout] 196 | let f: f32 = unsafe { transmute(val ^ t) }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unnecessary_transmutes)]` on by default [INFO] [stdout] help: replace this with [INFO] [stdout] | [INFO] [stdout] 196 - let f: f32 = unsafe { transmute(val ^ t) }; [INFO] [stdout] 196 + let f: f32 = unsafe { f32::from_bits(i32::cast_unsigned(val ^ t)) }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/de.rs:206:31 [INFO] [stdout] | [INFO] [stdout] 206 | let f: f64 = unsafe { transmute(val ^ t) }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace this with [INFO] [stdout] | [INFO] [stdout] 206 - let f: f64 = unsafe { transmute(val ^ t) }; [INFO] [stdout] 206 + let f: f64 = unsafe { f64::from_bits(i64::cast_unsigned(val ^ t)) }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/de.rs:466:9 [INFO] [stdout] | [INFO] [stdout] 457 | / fn deserialize_enum( [INFO] [stdout] 458 | | self, [INFO] [stdout] 459 | | _name: &'static str, [INFO] [stdout] 460 | | _fields: &'static [&'static str], [INFO] [stdout] ... | [INFO] [stdout] 463 | | where [INFO] [stdout] 464 | | V: Visitor<'de>, [INFO] [stdout] | |____________________________- move the `impl` block outside of this method `deserialize_enum` [INFO] [stdout] 465 | { [INFO] [stdout] 466 | impl<'de, 'a, R> serde::de::EnumAccess<'de> for &'a mut Deserializer [INFO] [stdout] | ^^^^^^^^^^^^^^^^^---------------------^^^^^^^^^^^^^^^^^^------------^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `Deserializer` is not local [INFO] [stdout] | `EnumAccess` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] = note: `#[warn(non_local_definitions)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: non-local `impl` definition, `impl` blocks should be written at the same level as their item [INFO] [stdout] --> src/de.rs:484:9 [INFO] [stdout] | [INFO] [stdout] 457 | / fn deserialize_enum( [INFO] [stdout] 458 | | self, [INFO] [stdout] 459 | | _name: &'static str, [INFO] [stdout] 460 | | _fields: &'static [&'static str], [INFO] [stdout] ... | [INFO] [stdout] 463 | | where [INFO] [stdout] 464 | | V: Visitor<'de>, [INFO] [stdout] | |____________________________- move the `impl` block outside of this method `deserialize_enum` [INFO] [stdout] ... [INFO] [stdout] 484 | impl<'de, 'a, R> serde::de::VariantAccess<'de> for &'a mut Deserializer [INFO] [stdout] | ^^^^^^^^^^^^^^^^^------------------------^^^^^^^^^^^^^^^^^^------------^^^ [INFO] [stdout] | | | [INFO] [stdout] | | `Deserializer` is not local [INFO] [stdout] | `VariantAccess` is not local [INFO] [stdout] | [INFO] [stdout] = note: an `impl` is never scoped, even when it is nested inside an item, as it may impact type checking outside of that item, which can be the case if neither the trait or the self type are at the same nesting level as the `impl` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/ser.rs:420:28 [INFO] [stdout] | [INFO] [stdout] 420 | let val = unsafe { transmute::(v) }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace this with [INFO] [stdout] | [INFO] [stdout] 420 - let val = unsafe { transmute::(v) }; [INFO] [stdout] 420 + let val = unsafe { f32::to_bits(v).cast_signed() }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unnecessary transmute [INFO] [stdout] --> src/ser.rs:432:28 [INFO] [stdout] | [INFO] [stdout] 432 | let val = unsafe { transmute::(v) }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] help: replace this with [INFO] [stdout] | [INFO] [stdout] 432 - let val = unsafe { transmute::(v) }; [INFO] [stdout] 432 + let val = unsafe { f64::to_bits(v).cast_signed() }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0463`. [INFO] [stdout] [INFO] [stderr] error: could not compile `bytekey-fix` (test "de") due to 1 previous error [INFO] running `Command { std: "docker" "inspect" "3135341c104a1e5751ab5a110d852fa33249fa445251bc60455f21582b2c5052", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3135341c104a1e5751ab5a110d852fa33249fa445251bc60455f21582b2c5052", kill_on_drop: false }` [INFO] [stdout] 3135341c104a1e5751ab5a110d852fa33249fa445251bc60455f21582b2c5052