[INFO] cloning repository https://github.com/2xsaiko/binserde
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/2xsaiko/binserde" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2F2xsaiko%2Fbinserde", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2F2xsaiko%2Fbinserde'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 6936edae682f63d88e95b17bf81d79a7ccf57029
[INFO] checking 2xsaiko/binserde against master#c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38 for pr-146470
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2F2xsaiko%2Fbinserde" "/workspace/builds/worker-4-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/2xsaiko/binserde
[INFO] finished tweaking git repo https://github.com/2xsaiko/binserde
[INFO] tweaked toml for git repo https://github.com/2xsaiko/binserde written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/2xsaiko/binserde on toolchain c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/2xsaiko/binserde 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" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded darling_macro v0.10.2
[INFO] [stderr]   Downloaded thiserror-impl v1.0.25
[INFO] [stderr]   Downloaded syn v1.0.72
[INFO] [stderr]   Downloaded strsim v0.9.3
[INFO] [stderr]   Downloaded thiserror v1.0.25
[INFO] [stderr]   Downloaded proc-macro2 v1.0.27
[INFO] [stderr]   Downloaded darling v0.10.2
[INFO] [stderr]   Downloaded darling_core v0.10.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] f6d54dc0ba06a27e0fef02ab9dabeea775e6764182226cac25ba3047f4006b1d
[INFO] running `Command { std: "docker" "start" "-a" "f6d54dc0ba06a27e0fef02ab9dabeea775e6764182226cac25ba3047f4006b1d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "f6d54dc0ba06a27e0fef02ab9dabeea775e6764182226cac25ba3047f4006b1d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f6d54dc0ba06a27e0fef02ab9dabeea775e6764182226cac25ba3047f4006b1d", kill_on_drop: false }`
[INFO] [stdout] f6d54dc0ba06a27e0fef02ab9dabeea775e6764182226cac25ba3047f4006b1d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc1/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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c90bcb9571b7aab0d8beaa2ce8a998ffaf079d38" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] f84f19870121a7eed3d22dac31021c5a8e18bb8b399cd60a3eaeb0d4c5fa14cf
[INFO] running `Command { std: "docker" "start" "-a" "f84f19870121a7eed3d22dac31021c5a8e18bb8b399cd60a3eaeb0d4c5fa14cf", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.27
[INFO] [stderr]    Compiling syn v1.0.72
[INFO] [stderr]    Compiling unicode-xid v0.2.2
[INFO] [stderr]    Compiling strsim v0.9.3
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling ident_case v1.0.1
[INFO] [stderr]     Checking quote v1.0.9
[INFO] [stderr]     Checking darling_core v0.10.2
[INFO] [stderr]    Compiling thiserror-impl v1.0.25
[INFO] [stderr]     Checking thiserror v1.0.25
[INFO] [stderr]    Compiling darling_macro v0.10.2
[INFO] [stderr]    Compiling darling v0.10.2
[INFO] [stderr]     Checking binserde_derive v0.1.4 (/opt/rustwide/workdir/binserde_derive)
[INFO] [stdout] warning: fields `ty` and `index` are never read
[INFO] [stdout]   --> binserde_derive/src/common.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct BinSerdeField {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 27 |     pub ident: Option<syn::Ident>,
[INFO] [stdout] 28 |     pub ty: Type,
[INFO] [stdout]    |         ^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub index: Option<usize>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BinSerdeField` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `move_sort` is never used
[INFO] [stdout]    --> binserde_derive/src/common.rs:122:4
[INFO] [stdout]     |
[INFO] [stdout] 122 | fn move_sort<T, F>(slice: &mut [T], op: F)
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `swap_at` is never used
[INFO] [stdout]    --> binserde_derive/src/common.rs:142:4
[INFO] [stdout]     |
[INFO] [stdout] 142 | fn swap_at<T>(slice: &mut [T], idx: usize) {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `swap_outer` is never used
[INFO] [stdout]    --> binserde_derive/src/common.rs:162:4
[INFO] [stdout]     |
[INFO] [stdout] 162 | fn swap_outer<T>(slice: &mut [T], count: usize) {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> binserde_derive/src/common.rs:51:33
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub fn to_struct_fields(fields: &Fields<BinSerdeField>, skip: bool) -> Vec<StructField> {
[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] 51 | pub fn to_struct_fields(fields: &Fields<BinSerdeField>, skip: bool) -> Vec<StructField<'_>> {
[INFO] [stdout]    |                                                                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> binserde_derive/src/common.rs:68:26
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub fn to_idents(fields: &Fields<BinSerdeField>, skip: bool) -> Vec<Cow<Ident>> {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub fn to_idents(fields: &Fields<BinSerdeField>, skip: bool) -> Vec<Cow<'_, Ident>> {
[INFO] [stdout]    |                                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ty` and `index` are never read
[INFO] [stdout]   --> binserde_derive/src/common.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct BinSerdeField {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 27 |     pub ident: Option<syn::Ident>,
[INFO] [stdout] 28 |     pub ty: Type,
[INFO] [stdout]    |         ^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub index: Option<usize>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BinSerdeField` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `move_sort` is never used
[INFO] [stdout]    --> binserde_derive/src/common.rs:122:4
[INFO] [stdout]     |
[INFO] [stdout] 122 | fn move_sort<T, F>(slice: &mut [T], op: F)
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> binserde_derive/src/common.rs:51:33
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub fn to_struct_fields(fields: &Fields<BinSerdeField>, skip: bool) -> Vec<StructField> {
[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] 51 | pub fn to_struct_fields(fields: &Fields<BinSerdeField>, skip: bool) -> Vec<StructField<'_>> {
[INFO] [stdout]    |                                                                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> binserde_derive/src/common.rs:68:26
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub fn to_idents(fields: &Fields<BinSerdeField>, skip: bool) -> Vec<Cow<Ident>> {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub fn to_idents(fields: &Fields<BinSerdeField>, skip: bool) -> Vec<Cow<'_, Ident>> {
[INFO] [stdout]    |                                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `ty` and `index` are never read
[INFO] [stdout]   --> binserde_derive/src/common.rs:28:9
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct BinSerdeField {
[INFO] [stdout]    |            ------------- fields in this struct
[INFO] [stdout] 27 |     pub ident: Option<syn::Ident>,
[INFO] [stdout] 28 |     pub ty: Type,
[INFO] [stdout]    |         ^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub index: Option<usize>,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `BinSerdeField` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `move_sort` is never used
[INFO] [stdout]    --> binserde_derive/src/common.rs:122:4
[INFO] [stdout]     |
[INFO] [stdout] 122 | fn move_sort<T, F>(slice: &mut [T], op: F)
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `swap_at` is never used
[INFO] [stdout]    --> binserde_derive/src/common.rs:142:4
[INFO] [stdout]     |
[INFO] [stdout] 142 | fn swap_at<T>(slice: &mut [T], idx: usize) {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `swap_outer` is never used
[INFO] [stdout]    --> binserde_derive/src/common.rs:162:4
[INFO] [stdout]     |
[INFO] [stdout] 162 | fn swap_outer<T>(slice: &mut [T], count: usize) {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> binserde_derive/src/common.rs:51:33
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub fn to_struct_fields(fields: &Fields<BinSerdeField>, skip: bool) -> Vec<StructField> {
[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] 51 | pub fn to_struct_fields(fields: &Fields<BinSerdeField>, skip: bool) -> Vec<StructField<'_>> {
[INFO] [stdout]    |                                                                                       ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> binserde_derive/src/common.rs:68:26
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub fn to_idents(fields: &Fields<BinSerdeField>, skip: bool) -> Vec<Cow<Ident>> {
[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] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 68 | pub fn to_idents(fields: &Fields<BinSerdeField>, skip: bool) -> Vec<Cow<'_, Ident>> {
[INFO] [stdout]    |                                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking binserde v0.1.7 (/opt/rustwide/workdir)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/util.rs:54:29
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub fn serialize_iter<I, S>(mut iter: I, mut serializer: S) -> Result<()>
[INFO] [stdout]    |                             ----^^^^
[INFO] [stdout]    |                             |
[INFO] [stdout]    |                             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `write_str` is never used
[INFO] [stdout]   --> src/write_ext.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub trait WriteExt {
[INFO] [stdout]    |           -------- method in this trait
[INFO] [stdout] 10 |     fn write_str(&mut self, s: &str) -> Result<usize>;
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `read_str` is never used
[INFO] [stdout]   --> src/write_ext.rs:40:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub trait ReadExt {
[INFO] [stdout]    |           ------- method in this trait
[INFO] [stdout] 40 |     fn read_str(&mut self) -> Result<String>;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/util.rs:54:29
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub fn serialize_iter<I, S>(mut iter: I, mut serializer: S) -> Result<()>
[INFO] [stdout]    |                             ----^^^^
[INFO] [stdout]    |                             |
[INFO] [stdout]    |                             help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `write_str` is never used
[INFO] [stdout]   --> src/write_ext.rs:10:8
[INFO] [stdout]    |
[INFO] [stdout]  9 | pub trait WriteExt {
[INFO] [stdout]    |           -------- method in this trait
[INFO] [stdout] 10 |     fn write_str(&mut self, s: &str) -> Result<usize>;
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `read_str` is never used
[INFO] [stdout]   --> src/write_ext.rs:40:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub trait ReadExt {
[INFO] [stdout]    |           ------- method in this trait
[INFO] [stdout] 40 |     fn read_str(&mut self) -> Result<String>;
[INFO] [stdout]    |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 3.56s
[INFO] running `Command { std: "docker" "inspect" "f84f19870121a7eed3d22dac31021c5a8e18bb8b399cd60a3eaeb0d4c5fa14cf", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "f84f19870121a7eed3d22dac31021c5a8e18bb8b399cd60a3eaeb0d4c5fa14cf", kill_on_drop: false }`
[INFO] [stdout] f84f19870121a7eed3d22dac31021c5a8e18bb8b399cd60a3eaeb0d4c5fa14cf
