[INFO] fetching crate gallop 1.0.4... [INFO] testing gallop-1.0.4 against master#432e145bd5a974c5b6f4dd9b352891bd7502b69d for pr-87041 [INFO] extracting crate gallop 1.0.4 into /workspace/builds/worker-4/source [INFO] validating manifest of crates.io crate gallop 1.0.4 on toolchain 432e145bd5a974c5b6f4dd9b352891bd7502b69d [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+432e145bd5a974c5b6f4dd9b352891bd7502b69d" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate gallop 1.0.4 [INFO] finished tweaking crates.io crate gallop 1.0.4 [INFO] tweaked toml for crates.io crate gallop 1.0.4 written to /workspace/builds/worker-4/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+432e145bd5a974c5b6f4dd9b352891bd7502b69d" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+432e145bd5a974c5b6f4dd9b352891bd7502b69d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/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:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+432e145bd5a974c5b6f4dd9b352891bd7502b69d" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 86b2d2573a34499442fd32c6f128b62cca40d327e2e1cb6d16d543c80e2086cb [INFO] running `Command { std: "docker" "start" "-a" "86b2d2573a34499442fd32c6f128b62cca40d327e2e1cb6d16d543c80e2086cb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "86b2d2573a34499442fd32c6f128b62cca40d327e2e1cb6d16d543c80e2086cb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "86b2d2573a34499442fd32c6f128b62cca40d327e2e1cb6d16d543c80e2086cb", kill_on_drop: false }` [INFO] [stdout] 86b2d2573a34499442fd32c6f128b62cca40d327e2e1cb6d16d543c80e2086cb [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/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" "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:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+432e145bd5a974c5b6f4dd9b352891bd7502b69d" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] c449583bee8793c4b26e5d48f3d0b5b9e633c968b0ea9d55d4a23eb9c4801c97 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "c449583bee8793c4b26e5d48f3d0b5b9e633c968b0ea9d55d4a23eb9c4801c97", kill_on_drop: false }` [INFO] [stderr] Compiling gallop v1.0.4 (/opt/rustwide/workdir) [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:570:21 [INFO] [stdout] | [INFO] [stdout] 570 | let mut current_children = children; [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/lib.rs:712:41 [INFO] [stdout] | [INFO] [stdout] 712 | ... let mut first_non_terminal = first_set.get_mut(non_terminal).unwrap(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:735:29 [INFO] [stdout] | [INFO] [stdout] 735 | let mut first_non_terminal = first_set.get_mut(non_terminal).unwrap(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:784:33 [INFO] [stdout] | [INFO] [stdout] 784 | ... let mut follow_rule_element_b = follow_set.get_mut(&b).unwrap(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [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/lib.rs:982:10 [INFO] [stdout] | [INFO] [stdout] 982 | .into_iter() [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(array_into_iter)]` on by default [INFO] [stdout] = warning: this changes meaning in Rust 2021 [INFO] [stdout] = note: for more information, see issue #66145 [INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity [INFO] [stdout] | [INFO] [stdout] 982 | .iter() [INFO] [stdout] | ^^^^ [INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value [INFO] [stdout] | [INFO] [stdout] 981 | IntoIterator::into_iter(['\u{0020}', '\u{0009}','\u{000a}','\u{000c}','\u{000d}']) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 2.15s [INFO] running `Command { std: "docker" "inspect" "c449583bee8793c4b26e5d48f3d0b5b9e633c968b0ea9d55d4a23eb9c4801c97", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c449583bee8793c4b26e5d48f3d0b5b9e633c968b0ea9d55d4a23eb9c4801c97", kill_on_drop: false }` [INFO] [stdout] c449583bee8793c4b26e5d48f3d0b5b9e633c968b0ea9d55d4a23eb9c4801c97 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/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" "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:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+432e145bd5a974c5b6f4dd9b352891bd7502b69d" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 1761d765821f0513263ba8c68f3b82407b3f5b7e39319fd599486d73ac0402b7 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `Command { std: "docker" "start" "-a" "1761d765821f0513263ba8c68f3b82407b3f5b7e39319fd599486d73ac0402b7", kill_on_drop: false }` [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:570:21 [INFO] [stdout] | [INFO] [stdout] 570 | let mut current_children = children; [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/lib.rs:712:41 [INFO] [stdout] | [INFO] [stdout] 712 | ... let mut first_non_terminal = first_set.get_mut(non_terminal).unwrap(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Compiling gallop v1.0.4 (/opt/rustwide/workdir) [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:735:29 [INFO] [stdout] | [INFO] [stdout] 735 | let mut first_non_terminal = first_set.get_mut(non_terminal).unwrap(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:784:33 [INFO] [stdout] | [INFO] [stdout] 784 | ... let mut follow_rule_element_b = follow_set.get_mut(&b).unwrap(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [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/lib.rs:982:10 [INFO] [stdout] | [INFO] [stdout] 982 | .into_iter() [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(array_into_iter)]` on by default [INFO] [stdout] = warning: this changes meaning in Rust 2021 [INFO] [stdout] = note: for more information, see issue #66145 [INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity [INFO] [stdout] | [INFO] [stdout] 982 | .iter() [INFO] [stdout] | ^^^^ [INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value [INFO] [stdout] | [INFO] [stdout] 981 | IntoIterator::into_iter(['\u{0020}', '\u{0009}','\u{000a}','\u{000c}','\u{000d}']) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:570:21 [INFO] [stdout] | [INFO] [stdout] 570 | let mut current_children = children; [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/lib.rs:712:41 [INFO] [stdout] | [INFO] [stdout] 712 | ... let mut first_non_terminal = first_set.get_mut(non_terminal).unwrap(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:735:29 [INFO] [stdout] | [INFO] [stdout] 735 | let mut first_non_terminal = first_set.get_mut(non_terminal).unwrap(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/lib.rs:784:33 [INFO] [stdout] | [INFO] [stdout] 784 | ... let mut follow_rule_element_b = follow_set.get_mut(&b).unwrap(); [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [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/lib.rs:982:10 [INFO] [stdout] | [INFO] [stdout] 982 | .into_iter() [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(array_into_iter)]` on by default [INFO] [stdout] = warning: this changes meaning in Rust 2021 [INFO] [stdout] = note: for more information, see issue #66145 [INFO] [stdout] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity [INFO] [stdout] | [INFO] [stdout] 982 | .iter() [INFO] [stdout] | ^^^^ [INFO] [stdout] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value [INFO] [stdout] | [INFO] [stdout] 981 | IntoIterator::into_iter(['\u{0020}', '\u{0009}','\u{000a}','\u{000c}','\u{000d}']) [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 2.74s [INFO] running `Command { std: "docker" "inspect" "1761d765821f0513263ba8c68f3b82407b3f5b7e39319fd599486d73ac0402b7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "1761d765821f0513263ba8c68f3b82407b3f5b7e39319fd599486d73ac0402b7", kill_on_drop: false }` [INFO] [stdout] 1761d765821f0513263ba8c68f3b82407b3f5b7e39319fd599486d73ac0402b7 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/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" "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:20528e8c29e4536546f0102ce88568b16ea7538393a33fcca951030f7af10457" "/opt/rustwide/cargo-home/bin/cargo" "+432e145bd5a974c5b6f4dd9b352891bd7502b69d" "test" "--frozen", kill_on_drop: false }` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 703baa0da7e93f6d88b57b53d9822b20b70602b05265bee0325a977994743feb [INFO] running `Command { std: "docker" "start" "-a" "703baa0da7e93f6d88b57b53d9822b20b70602b05265bee0325a977994743feb", kill_on_drop: false }` [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:570:21 [INFO] [stderr] | [INFO] [stderr] 570 | let mut current_children = children; [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/lib.rs:712:41 [INFO] [stderr] | [INFO] [stderr] 712 | ... let mut first_non_terminal = first_set.get_mut(non_terminal).unwrap(); [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:735:29 [INFO] [stderr] | [INFO] [stderr] 735 | let mut first_non_terminal = first_set.get_mut(non_terminal).unwrap(); [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:784:33 [INFO] [stderr] | [INFO] [stderr] 784 | ... let mut follow_rule_element_b = follow_set.get_mut(&b).unwrap(); [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [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/lib.rs:982:10 [INFO] [stderr] | [INFO] [stderr] 982 | .into_iter() [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(array_into_iter)]` on by default [INFO] [stderr] = warning: this changes meaning in Rust 2021 [INFO] [stderr] = note: for more information, see issue #66145 [INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity [INFO] [stderr] | [INFO] [stderr] 982 | .iter() [INFO] [stderr] | ^^^^ [INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value [INFO] [stderr] | [INFO] [stderr] 981 | IntoIterator::into_iter(['\u{0020}', '\u{0009}','\u{000a}','\u{000c}','\u{000d}']) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ ^ [INFO] [stderr] [INFO] [stderr] warning: 5 warnings emitted [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:570:21 [INFO] [stderr] | [INFO] [stderr] 570 | let mut current_children = children; [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/lib.rs:712:41 [INFO] [stderr] | [INFO] [stderr] 712 | ... let mut first_non_terminal = first_set.get_mut(non_terminal).unwrap(); [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:735:29 [INFO] [stderr] | [INFO] [stderr] 735 | let mut first_non_terminal = first_set.get_mut(non_terminal).unwrap(); [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [INFO] [stderr] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stderr] --> src/lib.rs:784:33 [INFO] [stderr] | [INFO] [stderr] 784 | ... let mut follow_rule_element_b = follow_set.get_mut(&b).unwrap(); [INFO] [stderr] | ----^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | | [INFO] [stderr] | help: remove this `mut` [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/lib.rs:982:10 [INFO] [stderr] | [INFO] [stderr] 982 | .into_iter() [INFO] [stderr] | ^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(array_into_iter)]` on by default [INFO] [stderr] = warning: this changes meaning in Rust 2021 [INFO] [stderr] = note: for more information, see issue #66145 [INFO] [stderr] help: use `.iter()` instead of `.into_iter()` to avoid ambiguity [INFO] [stderr] | [INFO] [stderr] 982 | .iter() [INFO] [stderr] | ^^^^ [INFO] [stderr] help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value [INFO] [stderr] | [INFO] [stderr] 981 | IntoIterator::into_iter(['\u{0020}', '\u{0009}','\u{000a}','\u{000c}','\u{000d}']) [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ ^ [INFO] [stderr] [INFO] [stderr] warning: 5 warnings emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.01s [INFO] [stderr] Running unittests (/opt/rustwide/target/debug/deps/gallop-48ccfb23634820b6) [INFO] [stdout] [INFO] [stdout] running 129 tests [INFO] [stdout] test compiler_design_in_c_1st::pg_214 ... ok [INFO] [stdout] test get_first_set::combo_ent ... ok [INFO] [stdout] test get_first_set::combo_et ... ok [INFO] [stdout] test get_first_set::combo_ne_e ... ok [INFO] [stdout] test compiler_design_in_c_1st::get_parse_table_ok ... ok [INFO] [stdout] test get_first_set::combo_nt_e ... ok [INFO] [stdout] test compilers_1st_ed::pg_190 ... ok [INFO] [stdout] test get_first_set::combo_e ... ok [INFO] [stdout] test get_first_set::combo_ene ... ok [INFO] [stdout] test get_first_set::combo_t ... ok [INFO] [stdout] test compiler_design_in_c_1st::pg_217 ... ok [INFO] [stdout] test compilers_1st_ed::pg_188 ... ok [INFO] [stdout] test get_first_set::combo_tne ... ok [INFO] [stdout] test get_first_set::combo_te ... ok [INFO] [stdout] test get_first_set::is_empty ... ok [INFO] [stdout] test get_first_set::combo_nt_t ... ok [INFO] [stdout] test get_first_set::combo_ne_t ... ok [INFO] [stdout] test get_first_set::combo_tn ... ok [INFO] [stdout] test get_first_set::combo_tt ... ok [INFO] [stdout] test get_follow_set::combo_eee ... ok [INFO] [stdout] test get_follow_set::combo_ee ... ok [INFO] [stdout] test get_first_set::combo_tnt ... ok [INFO] [stdout] test get_follow_set::combo_een_e ... ok [INFO] [stdout] test _parse::panic_on_terminal - should panic ... ok [INFO] [stdout] test get_follow_set::combo_e ... ok [INFO] [stdout] test get_follow_set::combo_een_t ... ok [INFO] [stdout] test get_follow_set::combo_eet ... ok [INFO] [stdout] test get_first_set::invalid_grammar ... ok [INFO] [stdout] test get_first_set::matching_non_terminal ... ok [INFO] [stdout] test get_follow_set::combo_en_t ... ok [INFO] [stdout] test get_follow_set::combo_en_e ... ok [INFO] [stdout] test get_follow_set::combo_ene_e ... ok [INFO] [stdout] test get_follow_set::combo_ete ... ok [INFO] [stdout] test get_follow_set::combo_enn_e ... ok [INFO] [stdout] test get_follow_set::combo_ene_t ... ok [INFO] [stdout] test get_follow_set::combo_et ... ok [INFO] [stdout] test get_follow_set::combo_enn_t ... ok [INFO] [stdout] test get_follow_set::combo_etn_t ... ok [INFO] [stdout] test get_follow_set::combo_nee_t ... ok [INFO] [stdout] test get_follow_set::combo_ett ... ok [INFO] [stdout] test get_follow_set::combo_n_t ... ok [INFO] [stdout] test get_follow_set::combo_nee_e ... ok [INFO] [stdout] test get_follow_set::combo_etn_e ... ok [INFO] [stdout] test get_follow_set::combo_ent_t ... ok [INFO] [stdout] test get_follow_set::combo_nen_e ... ok [INFO] [stdout] test get_follow_set::combo_nne ... ok [INFO] [stdout] test get_follow_set::combo_nnn_t_e ... ok [INFO] [stdout] test get_follow_set::combo_nnn_t_t ... ok [INFO] [stdout] test get_follow_set::combo_nnt_e ... ok [INFO] [stdout] test get_follow_set::combo_nnt_t ... ok [INFO] [stdout] test get_follow_set::combo_nte_e ... ok [INFO] [stdout] test get_follow_set::combo_nte_t ... ok [INFO] [stdout] test get_follow_set::combo_ent_e ... ok [INFO] [stdout] test get_follow_set::combo_net_t ... ok [INFO] [stdout] test get_follow_set::combo_ntn_e ... ok [INFO] [stdout] test get_follow_set::combo_ntt_e ... ok [INFO] [stdout] test get_follow_set::combo_ntt_t ... ok [INFO] [stdout] test get_follow_set::combo_ntn_t ... ok [INFO] [stdout] test get_follow_set::combo_t ... ok [INFO] [stdout] test get_follow_set::combo_te ... ok [INFO] [stdout] test get_follow_set::combo_tee ... ok [INFO] [stdout] test get_follow_set::combo_ten_e ... ok [INFO] [stdout] test get_follow_set::combo_ten_t ... ok [INFO] [stdout] test get_follow_set::combo_tet ... ok [INFO] [stdout] test get_follow_set::combo_tn_e ... ok [INFO] [stdout] test get_follow_set::combo_tn_t ... ok [INFO] [stdout] test get_follow_set::combo_tne_e ... ok [INFO] [stdout] test get_follow_set::combo_tne_t ... ok [INFO] [stdout] test get_follow_set::combo_tnn_e ... ok [INFO] [stdout] test get_follow_set::combo_tnn_t ... ok [INFO] [stdout] test get_follow_set::combo_tnt_e ... ok [INFO] [stdout] test get_follow_set::combo_tnt_t ... ok [INFO] [stdout] test get_follow_set::combo_tt ... ok [INFO] [stdout] test get_follow_set::combo_tte ... ok [INFO] [stdout] test get_follow_set::combo_ttn_e ... ok [INFO] [stdout] test get_follow_set::combo_ttn_t ... ok [INFO] [stdout] test get_follow_set::combo_ttt ... ok [INFO] [stdout] test get_parse_table::combo_e ... ok [INFO] [stdout] test get_parse_table::combo_ee ... ok [INFO] [stdout] test get_parse_table::combo_en_e ... ok [INFO] [stdout] test get_parse_table::combo_en_t ... ok [INFO] [stdout] test get_follow_set::combo_n_e ... ok [INFO] [stdout] test get_parse_table::combo_et ... ok [INFO] [stdout] test get_parse_table::combo_n_t ... ok [INFO] [stdout] test get_parse_table::combo_n_e ... ok [INFO] [stdout] test get_parse_table::combo_ne_e ... ok [INFO] [stdout] test get_parse_table::combo_n_n ... ok [INFO] [stdout] test get_follow_set::combo_nnn_e ... ok [INFO] [stdout] test get_parse_table::combo_ne_t ... ok [INFO] [stdout] test get_parse_table::combo_nn_t_t ... ok [INFO] [stdout] test get_follow_set::combo_nne_t ... ok [INFO] [stdout] test get_parse_table::combo_ne_nt_nt ... ok [INFO] [stdout] test get_follow_set::combo_net_e ... ok [INFO] [stdout] test get_parse_table::combo_ne_t_nt ... ok [INFO] [stdout] test get_parse_table::combo_nt_t ... ok [INFO] [stdout] test get_parse_table::combo_t_et ... ok [INFO] [stdout] test get_parse_table::combo_nn_e ... ok [INFO] [stdout] test get_parse_table::combo_nt_e ... ok [INFO] [stdout] test get_parse_table::combo_t ... ok [INFO] [stdout] test get_parse_table::combo_tn_e ... ok [INFO] [stdout] test get_parse_table::combo_nn_t ... ok [INFO] [stdout] test get_parse_table::combo_te_nt_nt ... ok [INFO] [stdout] test get_parse_table::combo_tt ... ok [INFO] [stdout] test get_parse_table::combo_tn_t ... ok [INFO] [stdout] test new::no_start_symbol ... ok [INFO] [stdout] test new::empty_grammar ... ok [INFO] [stdout] test get_parse_table::combo_t_t ... ok [INFO] [stdout] test get_parse_table::combo_te ... ok [INFO] [stdout] test parsing_techniques_2nd_ed::pg_243 ... ok [INFO] [stdout] test get_follow_set::combo_nen_t ... ok [INFO] [stdout] test parsing_techniques_2nd_ed::pg_247 ... ok [INFO] [stdout] test parsing_techniques_2nd_ed::pg_246 ... ok [INFO] [stdout] test compiler_design_in_c_1st::parse_ok ... ok [INFO] [stdout] test rollup::no_rollup ... ok [INFO] [stdout] test _parse::ok ... ok [INFO] [stdout] test _parse::invalid_wrong_terminal_recursed ... ok [INFO] [stdout] test rollup::auto_rollup ... ok [INFO] [stdout] test _parse::no_more_input ... ok [INFO] [stdout] test compilers_1st_ed::parse_ok ... ok [INFO] [stdout] test new::ok ... ok [INFO] [stdout] test _parse::no_input ... ok [INFO] [stdout] test new::bad_parse_table ... ok [INFO] [stdout] test _parse::invalid_input ... ok [INFO] [stdout] test parse::ok ... ok [INFO] [stdout] test _parse::invalid_wrong_terminal ... ok [INFO] [stdout] test parsing_techniques_2nd_ed::parse_ok ... ok [INFO] [stdout] test parse::invalid_input ... ok [INFO] [stdout] test parse::no_more_input ... ok [INFO] [stdout] test rollup::rollup ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 129 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.77s [INFO] [stdout] [INFO] [stderr] Doc-tests gallop [INFO] [stdout] [INFO] [stdout] running 16 tests [INFO] [stdout] test src/lib.rs - (line 118) ... ignored [INFO] [stdout] test src/lib.rs - (line 133) ... ignored [INFO] [stdout] test src/lib.rs - (line 176) ... ignored [INFO] [stdout] test src/lib.rs - (line 245) ... ignored [INFO] [stdout] test src/lib.rs - (line 293) ... ignored [INFO] [stdout] test src/lib.rs - (line 36) ... ignored [INFO] [stdout] test src/lib.rs - (line 5) ... ignored [INFO] [stdout] test src/lib.rs - (line 51) ... ignored [INFO] [stdout] test src/lib.rs - (line 60) ... ignored [INFO] [stdout] test src/lib.rs - (line 66) ... ignored [INFO] [stdout] test src/lib.rs - (line 74) ... ignored [INFO] [stdout] test src/lib.rs - (line 81) ... ignored [INFO] [stdout] test src/lib.rs - (line 89) ... ignored [INFO] [stdout] test src/lib.rs - Parser::new (line 437) ... ignored [INFO] [stdout] test src/lib.rs - Parser::parse (line 506) ... ignored [INFO] [stdout] test src/lib.rs - Parser::rollup (line 531) ... ignored [INFO] [stdout] [INFO] [stdout] test result: ok. 0 passed; 0 failed; 16 ignored; 0 measured; 0 filtered out; finished in 0.15s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "703baa0da7e93f6d88b57b53d9822b20b70602b05265bee0325a977994743feb", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "703baa0da7e93f6d88b57b53d9822b20b70602b05265bee0325a977994743feb", kill_on_drop: false }` [INFO] [stdout] 703baa0da7e93f6d88b57b53d9822b20b70602b05265bee0325a977994743feb