[INFO] fetching crate perplex 0.4.1...
[INFO] testing perplex-0.4.1 against 1.69.0 for beta-1.70-1
[INFO] extracting crate perplex 0.4.1 into /workspace/builds/worker-4-tc1/source
[INFO] validating manifest of crates.io crate perplex 0.4.1 on toolchain 1.69.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.69.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate perplex 0.4.1
[INFO] finished tweaking crates.io crate perplex 0.4.1
[INFO] tweaked toml for crates.io crate perplex 0.4.1 written to /workspace/builds/worker-4-tc1/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" __CARGO_TEST_CHANNEL_OVERRIDE_DO_NOT_USE_THIS="nightly" "/workspace/cargo-home/bin/cargo" "+1.69.0" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.69.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded perplex-runtime v0.1.1
[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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 586650db2f93cb189e82e32c630e52e2acd53ca365252bc0a40a64ebd3ba281c
[INFO] running `Command { std: "docker" "start" "-a" "586650db2f93cb189e82e32c630e52e2acd53ca365252bc0a40a64ebd3ba281c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "586650db2f93cb189e82e32c630e52e2acd53ca365252bc0a40a64ebd3ba281c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "586650db2f93cb189e82e32c630e52e2acd53ca365252bc0a40a64ebd3ba281c", kill_on_drop: false }`
[INFO] [stdout] 586650db2f93cb189e82e32c630e52e2acd53ca365252bc0a40a64ebd3ba281c
[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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 405c429bdddf5d6cbbbaf6b906f1e351fc8bc4496335b81fca157160f8dce490
[INFO] running `Command { std: "docker" "start" "-a" "405c429bdddf5d6cbbbaf6b906f1e351fc8bc4496335b81fca157160f8dce490", kill_on_drop: false }`
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling num-integer v0.1.45
[INFO] [stderr]    Compiling void v1.0.2
[INFO] [stderr]    Compiling lazy_static v0.2.11
[INFO] [stderr]    Compiling unicode-width v0.1.10
[INFO] [stderr]    Compiling iana-time-zone v0.1.56
[INFO] [stderr]    Compiling atty v0.2.11
[INFO] [stderr]    Compiling time v0.1.45
[INFO] [stderr]    Compiling unreachable v1.0.0
[INFO] [stderr]    Compiling vec_map v0.8.2
[INFO] [stderr]    Compiling strsim v0.8.0
[INFO] [stderr]    Compiling textwrap v0.11.0
[INFO] [stderr]    Compiling thread_local v0.3.4
[INFO] [stderr]    Compiling ansi_term v0.12.1
[INFO] [stderr]    Compiling memmap v0.6.2
[INFO] [stderr]    Compiling clap v2.34.0
[INFO] [stderr]    Compiling perplex-runtime v0.1.1
[INFO] [stderr]    Compiling chrono v0.4.24
[INFO] [stderr]    Compiling stderrlog v0.4.3
[INFO] [stderr]    Compiling perplex v0.4.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/backend.rs:176:13
[INFO] [stdout]     |
[INFO] [stdout] 176 |         let mut ta: Vec<_> = state
[INFO] [stdout]     |             ----^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/honalee.rs:144:17
[INFO] [stdout]     |
[INFO] [stdout] 144 |             let mut item_set = &mut done_list[index];
[INFO] [stdout]     |                 ----^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `origin` is never read
[INFO] [stdout]    --> src/glr.rs:598:5
[INFO] [stdout]     |
[INFO] [stdout] 597 | pub struct ConflictArc {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] 598 |     origin: ItemSetId,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ConflictArc` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `rank` and `reconverged` are never read
[INFO] [stdout]    --> src/glr.rs:636:5
[INFO] [stdout]     |
[INFO] [stdout] 635 | pub struct ConflictNode {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 636 |     rank: usize,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 640 |     reconverged: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ConflictNode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 16.10s
[INFO] running `Command { std: "docker" "inspect" "405c429bdddf5d6cbbbaf6b906f1e351fc8bc4496335b81fca157160f8dce490", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "405c429bdddf5d6cbbbaf6b906f1e351fc8bc4496335b81fca157160f8dce490", kill_on_drop: false }`
[INFO] [stdout] 405c429bdddf5d6cbbbaf6b906f1e351fc8bc4496335b81fca157160f8dce490
[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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 257f07a3e88761d8064712d1a5b4063ad59a44cafec933611b85a81243faf125
[INFO] running `Command { std: "docker" "start" "-a" "257f07a3e88761d8064712d1a5b4063ad59a44cafec933611b85a81243faf125", kill_on_drop: false }`
[INFO] [stderr]    Compiling perplex v0.4.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/backend.rs:176:13
[INFO] [stdout]     |
[INFO] [stdout] 176 |         let mut ta: Vec<_> = state
[INFO] [stdout]     |             ----^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/honalee.rs:144:17
[INFO] [stdout]     |
[INFO] [stdout] 144 |             let mut item_set = &mut done_list[index];
[INFO] [stdout]     |                 ----^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `origin` is never read
[INFO] [stdout]    --> src/glr.rs:598:5
[INFO] [stdout]     |
[INFO] [stdout] 597 | pub struct ConflictArc {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] 598 |     origin: ItemSetId,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ConflictArc` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `rank` and `reconverged` are never read
[INFO] [stdout]    --> src/glr.rs:636:5
[INFO] [stdout]     |
[INFO] [stdout] 635 | pub struct ConflictNode {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 636 |     rank: usize,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 640 |     reconverged: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ConflictNode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]    --> tests/tribble1.rs:200:35
[INFO] [stdout]     |
[INFO] [stdout] 200 |     let res = IterParser::new(seq.into_iter().cloned()).run();
[INFO] [stdout]     |                                   ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]     = note: `#[warn(array_into_iter)]` on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 200 |     let res = IterParser::new(seq.iter().cloned()).run();
[INFO] [stdout]     |                                   ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 200 |     let res = IterParser::new(IntoIterator::into_iter(seq).cloned()).run();
[INFO] [stdout]     |                               ++++++++++++++++++++++++   ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]    --> tests/tribble1.rs:209:35
[INFO] [stdout]     |
[INFO] [stdout] 209 |     let res = IterParser::new(seq.into_iter().cloned()).run();
[INFO] [stdout]     |                                   ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 209 |     let res = IterParser::new(seq.iter().cloned()).run();
[INFO] [stdout]     |                                   ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 209 |     let res = IterParser::new(IntoIterator::into_iter(seq).cloned()).run();
[INFO] [stdout]     |                               ++++++++++++++++++++++++   ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]    --> tests/tribble1.rs:218:35
[INFO] [stdout]     |
[INFO] [stdout] 218 |     let res = IterParser::new(seq.into_iter().cloned()).run();
[INFO] [stdout]     |                                   ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 218 |     let res = IterParser::new(seq.iter().cloned()).run();
[INFO] [stdout]     |                                   ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 218 |     let res = IterParser::new(IntoIterator::into_iter(seq).cloned()).run();
[INFO] [stdout]     |                               ++++++++++++++++++++++++   ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]    --> tests/tribble1.rs:227:35
[INFO] [stdout]     |
[INFO] [stdout] 227 |     let res = IterParser::new(seq.into_iter().cloned()).run();
[INFO] [stdout]     |                                   ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 227 |     let res = IterParser::new(seq.iter().cloned()).run();
[INFO] [stdout]     |                                   ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 227 |     let res = IterParser::new(IntoIterator::into_iter(seq).cloned()).run();
[INFO] [stdout]     |                               ++++++++++++++++++++++++   ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/backend.rs:176:13
[INFO] [stdout]     |
[INFO] [stdout] 176 |         let mut ta: Vec<_> = state
[INFO] [stdout]     |             ----^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/honalee.rs:144:17
[INFO] [stdout]     |
[INFO] [stdout] 144 |             let mut item_set = &mut done_list[index];
[INFO] [stdout]     |                 ----^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 4 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `origin` is never read
[INFO] [stdout]    --> src/glr.rs:598:5
[INFO] [stdout]     |
[INFO] [stdout] 597 | pub struct ConflictArc {
[INFO] [stdout]     |            ----------- field in this struct
[INFO] [stdout] 598 |     origin: ItemSetId,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ConflictArc` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]     = note: `#[warn(dead_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `rank` and `reconverged` are never read
[INFO] [stdout]    --> src/glr.rs:636:5
[INFO] [stdout]     |
[INFO] [stdout] 635 | pub struct ConflictNode {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 636 |     rank: usize,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 640 |     reconverged: bool,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `ConflictNode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stdout]    --> src/parser.rs:329:34
[INFO] [stdout]     |
[INFO] [stdout] 329 |         let res = parse_iter(seq.into_iter().cloned());
[INFO] [stdout]     |                                  ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stdout]     = note: `#[warn(array_into_iter)]` on by default
[INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stdout]     |
[INFO] [stdout] 329 |         let res = parse_iter(seq.iter().cloned());
[INFO] [stdout]     |                                  ~~~~
[INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stdout]     |
[INFO] [stdout] 329 |         let res = parse_iter(IntoIterator::into_iter(seq).cloned());
[INFO] [stdout]     |                              ++++++++++++++++++++++++   ~
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 5 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 6.09s
[INFO] running `Command { std: "docker" "inspect" "257f07a3e88761d8064712d1a5b4063ad59a44cafec933611b85a81243faf125", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "257f07a3e88761d8064712d1a5b4063ad59a44cafec933611b85a81243faf125", kill_on_drop: false }`
[INFO] [stdout] 257f07a3e88761d8064712d1a5b4063ad59a44cafec933611b85a81243faf125
[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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:5ff2268d62e97bff2cde7d5815dd6ed5b47097566f13b8d0ca110b04b60e07ed" "/opt/rustwide/cargo-home/bin/cargo" "+1.69.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 3b88c8afc56149b24e41b2503486237064fda4328b7dcfb1c159ba8e137ad3e7
[INFO] running `Command { std: "docker" "start" "-a" "3b88c8afc56149b24e41b2503486237064fda4328b7dcfb1c159ba8e137ad3e7", kill_on_drop: false }`
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/backend.rs:176:13
[INFO] [stderr]     |
[INFO] [stderr] 176 |         let mut ta: Vec<_> = state
[INFO] [stderr]     |             ----^^
[INFO] [stderr]     |             |
[INFO] [stderr]     |             help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/honalee.rs:144:17
[INFO] [stderr]     |
[INFO] [stderr] 144 |             let mut item_set = &mut done_list[index];
[INFO] [stderr]     |                 ----^^^^^^^^
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: field `origin` is never read
[INFO] [stderr]    --> src/glr.rs:598:5
[INFO] [stderr]     |
[INFO] [stderr] 597 | pub struct ConflictArc {
[INFO] [stderr]     |            ----------- field in this struct
[INFO] [stderr] 598 |     origin: ItemSetId,
[INFO] [stderr]     |     ^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `ConflictArc` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr]     = note: `#[warn(dead_code)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: fields `rank` and `reconverged` are never read
[INFO] [stderr]    --> src/glr.rs:636:5
[INFO] [stderr]     |
[INFO] [stderr] 635 | pub struct ConflictNode {
[INFO] [stderr]     |            ------------ fields in this struct
[INFO] [stderr] 636 |     rank: usize,
[INFO] [stderr]     |     ^^^^
[INFO] [stderr] ...
[INFO] [stderr] 640 |     reconverged: bool,
[INFO] [stderr]     |     ^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `ConflictNode` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stderr]    --> src/parser.rs:329:34
[INFO] [stderr]     |
[INFO] [stderr] 329 |         let res = parse_iter(seq.into_iter().cloned());
[INFO] [stderr]     |                                  ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this changes meaning in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stderr]     = note: `#[warn(array_into_iter)]` on by default
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]     |
[INFO] [stderr] 329 |         let res = parse_iter(seq.iter().cloned());
[INFO] [stderr]     |                                  ~~~~
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]     |
[INFO] [stderr] 329 |         let res = parse_iter(IntoIterator::into_iter(seq).cloned());
[INFO] [stderr]     |                              ++++++++++++++++++++++++   ~
[INFO] [stderr] 
[INFO] [stderr] warning: `perplex` (lib) generated 4 warnings (run `cargo fix --lib -p perplex` to apply 2 suggestions)
[INFO] [stderr] warning: `perplex` (lib test) generated 5 warnings (4 duplicates) (run `cargo fix --lib -p perplex --tests` to apply 1 suggestion)
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stderr]    --> tests/tribble1.rs:200:35
[INFO] [stderr]     |
[INFO] [stderr] 200 |     let res = IterParser::new(seq.into_iter().cloned()).run();
[INFO] [stderr]     |                                   ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this changes meaning in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stderr]     = note: `#[warn(array_into_iter)]` on by default
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]     |
[INFO] [stderr] 200 |     let res = IterParser::new(seq.iter().cloned()).run();
[INFO] [stderr]     |                                   ~~~~
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]     |
[INFO] [stderr] 200 |     let res = IterParser::new(IntoIterator::into_iter(seq).cloned()).run();
[INFO] [stderr]     |                               ++++++++++++++++++++++++   ~
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stderr]    --> tests/tribble1.rs:209:35
[INFO] [stderr]     |
[INFO] [stderr] 209 |     let res = IterParser::new(seq.into_iter().cloned()).run();
[INFO] [stderr]     |                                   ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this changes meaning in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]     |
[INFO] [stderr] 209 |     let res = IterParser::new(seq.iter().cloned()).run();
[INFO] [stderr]     |                                   ~~~~
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]     |
[INFO] [stderr] 209 |     let res = IterParser::new(IntoIterator::into_iter(seq).cloned()).run();
[INFO] [stderr]     |                               ++++++++++++++++++++++++   ~
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stderr]    --> tests/tribble1.rs:218:35
[INFO] [stderr]     |
[INFO] [stderr] 218 |     let res = IterParser::new(seq.into_iter().cloned()).run();
[INFO] [stderr]     |                                   ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this changes meaning in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]     |
[INFO] [stderr] 218 |     let res = IterParser::new(seq.iter().cloned()).run();
[INFO] [stderr]     |                                   ~~~~
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]     |
[INFO] [stderr] 218 |     let res = IterParser::new(IntoIterator::into_iter(seq).cloned()).run();
[INFO] [stderr]     |                               ++++++++++++++++++++++++   ~
[INFO] [stderr] 
[INFO] [stderr] warning: this method call resolves to `<&[T; N] as IntoIterator>::into_iter` (due to backwards compatibility), but will resolve to <[T; N] as IntoIterator>::into_iter in Rust 2021
[INFO] [stderr]    --> tests/tribble1.rs:227:35
[INFO] [stderr]     |
[INFO] [stderr] 227 |     let res = IterParser::new(seq.into_iter().cloned()).run();
[INFO] [stderr]     |                                   ^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this changes meaning in Rust 2021
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/IntoIterator-for-arrays.html>
[INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
[INFO] [stderr]     |
[INFO] [stderr] 227 |     let res = IterParser::new(seq.iter().cloned()).run();
[INFO] [stderr]     |                                   ~~~~
[INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
[INFO] [stderr]     |
[INFO] [stderr] 227 |     let res = IterParser::new(IntoIterator::into_iter(seq).cloned()).run();
[INFO] [stderr]     |                               ++++++++++++++++++++++++   ~
[INFO] [stderr] 
[INFO] [stderr] warning: `perplex` (test "tribble1") generated 4 warnings (run `cargo fix --test "tribble1"` to apply 4 suggestions)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.06s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/perplex-3573ae7cb948dd50)
[INFO] [stdout] 
[INFO] [stdout] running 12 tests
[INFO] [stdout] test lexer::tests::comment_multiple_lines ... ok
[INFO] [stdout] test lexer::tests::quoted_escapes ... ok
[INFO] [stdout] test lexer::tests::quoted_escapes_backslash ... ok
[INFO] [stdout] test lexer::tests::tokens2 ... ok
[INFO] [stdout] test first::test::epsilon_rule_is_transparent ... ok
[INFO] [stdout] test parser::tests::simple1 ... ok
[INFO] [stdout] test first::test::simple_terminal ... ok
[INFO] [stdout] test first::test::simple_indirection ... ok
[INFO] [stdout] test lexer::tests::comment_inline ... ok
[INFO] [stdout] test lexer::tests::comment_single_line ... ok
[INFO] [stdout] test lexer::tests::tokens1 ... ok
[INFO] [stderr]      Running unittests src/tool.rs (/opt/rustwide/target/debug/deps/perplex-7da2c96e496f8806)
[INFO] [stdout] test item_set::tests::left_recursion ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/tribble1.rs (/opt/rustwide/target/debug/deps/tribble1-c3ec2c061f83dd1d)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test simple2 ... ok
[INFO] [stdout] test simple1 ... ok
[INFO] [stdout] test simple3 ... ok
[INFO] [stdout] test simple4 ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests perplex
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "3b88c8afc56149b24e41b2503486237064fda4328b7dcfb1c159ba8e137ad3e7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3b88c8afc56149b24e41b2503486237064fda4328b7dcfb1c159ba8e137ad3e7", kill_on_drop: false }`
[INFO] [stdout] 3b88c8afc56149b24e41b2503486237064fda4328b7dcfb1c159ba8e137ad3e7
