[INFO] fetching crate gallop 1.0.4... [INFO] testing gallop-1.0.4 against master#99e3aef02079e9c10583638520cd0c134dc3a01d for pr-85530 [INFO] extracting crate gallop 1.0.4 into /workspace/builds/worker-0/source [INFO] validating manifest of crates.io crate gallop 1.0.4 on toolchain 99e3aef02079e9c10583638520cd0c134dc3a01d [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+99e3aef02079e9c10583638520cd0c134dc3a01d" "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-0/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+99e3aef02079e9c10583638520cd0c134dc3a01d" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+99e3aef02079e9c10583638520cd0c134dc3a01d" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/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" "+99e3aef02079e9c10583638520cd0c134dc3a01d" "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] 0fee135f89b0b5e509f0dd8e091f80acc394a6645d0f074aa4293eb1f5983187 [INFO] running `Command { std: "docker" "start" "-a" "0fee135f89b0b5e509f0dd8e091f80acc394a6645d0f074aa4293eb1f5983187", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "0fee135f89b0b5e509f0dd8e091f80acc394a6645d0f074aa4293eb1f5983187", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "0fee135f89b0b5e509f0dd8e091f80acc394a6645d0f074aa4293eb1f5983187", kill_on_drop: false }` [INFO] [stdout] 0fee135f89b0b5e509f0dd8e091f80acc394a6645d0f074aa4293eb1f5983187 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/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" "+99e3aef02079e9c10583638520cd0c134dc3a01d" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 179974f6db6d3b216a9820abf9919e2210ebc7233be9c5448f33176d9ccc80f3 [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" "179974f6db6d3b216a9820abf9919e2210ebc7233be9c5448f33176d9ccc80f3", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [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 currently resolves to `<&[T; N] as IntoIterator>::into_iter` (due to autoref coercions), but that might change in the future when `IntoIterator` impls for arrays are added. [INFO] [stdout] --> src/lib.rs:982:10 [INFO] [stdout] | [INFO] [stdout] 982 | .into_iter() [INFO] [stdout] | ^^^^^^^^^ help: use `.iter()` instead of `.into_iter()` to avoid ambiguity: `iter` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(array_into_iter)]` on by default [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #66145 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 2.28s [INFO] running `Command { std: "docker" "inspect" "179974f6db6d3b216a9820abf9919e2210ebc7233be9c5448f33176d9ccc80f3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "179974f6db6d3b216a9820abf9919e2210ebc7233be9c5448f33176d9ccc80f3", kill_on_drop: false }` [INFO] [stdout] 179974f6db6d3b216a9820abf9919e2210ebc7233be9c5448f33176d9ccc80f3 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/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" "+99e3aef02079e9c10583638520cd0c134dc3a01d" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 873978668db5a52dbf0e5efadfe1e738cecb68a47f2d086d586bac2bb35e938f [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" "873978668db5a52dbf0e5efadfe1e738cecb68a47f2d086d586bac2bb35e938f", 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] [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] [stderr] Compiling gallop v1.0.4 (/opt/rustwide/workdir) [INFO] [stdout] warning: this method call currently resolves to `<&[T; N] as IntoIterator>::into_iter` (due to autoref coercions), but that might change in the future when `IntoIterator` impls for arrays are added. [INFO] [stdout] --> src/lib.rs:982:10 [INFO] [stdout] | [INFO] [stdout] 982 | .into_iter() [INFO] [stdout] | ^^^^^^^^^ help: use `.iter()` instead of `.into_iter()` to avoid ambiguity: `iter` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(array_into_iter)]` on by default [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #66145 [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 currently resolves to `<&[T; N] as IntoIterator>::into_iter` (due to autoref coercions), but that might change in the future when `IntoIterator` impls for arrays are added. [INFO] [stdout] --> src/lib.rs:982:10 [INFO] [stdout] | [INFO] [stdout] 982 | .into_iter() [INFO] [stdout] | ^^^^^^^^^ help: use `.iter()` instead of `.into_iter()` to avoid ambiguity: `iter` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(array_into_iter)]` on by default [INFO] [stdout] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stdout] = note: for more information, see issue #66145 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 5 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 4.27s [INFO] running `Command { std: "docker" "inspect" "873978668db5a52dbf0e5efadfe1e738cecb68a47f2d086d586bac2bb35e938f", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "873978668db5a52dbf0e5efadfe1e738cecb68a47f2d086d586bac2bb35e938f", kill_on_drop: false }` [INFO] [stdout] 873978668db5a52dbf0e5efadfe1e738cecb68a47f2d086d586bac2bb35e938f [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0/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" "+99e3aef02079e9c10583638520cd0c134dc3a01d" "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] 574139d942f9cddf251af8771fae611920932e43a35b76501b159999577a1299 [INFO] running `Command { std: "docker" "start" "-a" "574139d942f9cddf251af8771fae611920932e43a35b76501b159999577a1299", kill_on_drop: false }` [INFO] [stdout] [INFO] [stderr] warning: variable does not need to be mutable [INFO] [stdout] running 129 tests [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 currently resolves to `<&[T; N] as IntoIterator>::into_iter` (due to autoref coercions), but that might change in the future when `IntoIterator` impls for arrays are added. [INFO] [stderr] --> src/lib.rs:982:10 [INFO] [stderr] | [INFO] [stderr] 982 | .into_iter() [INFO] [stderr] | ^^^^^^^^^ help: use `.iter()` instead of `.into_iter()` to avoid ambiguity: `iter` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(array_into_iter)]` on by default [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #66145 [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 currently resolves to `<&[T; N] as IntoIterator>::into_iter` (due to autoref coercions), but that might change in the future when `IntoIterator` impls for arrays are added. [INFO] [stderr] --> src/lib.rs:982:10 [INFO] [stderr] | [INFO] [stderr] 982 | .into_iter() [INFO] [stderr] | ^^^^^^^^^ help: use `.iter()` instead of `.into_iter()` to avoid ambiguity: `iter` [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(array_into_iter)]` on by default [INFO] [stderr] = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release! [INFO] [stderr] = note: for more information, see issue #66145 [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-453c7e5bebf0148d) [INFO] [stdout] test get_first_set::combo_e ... ok [INFO] [stdout] test get_first_set::combo_ene ... ok [INFO] [stdout] test compilers_1st_ed::pg_190 ... ok [INFO] [stdout] test get_first_set::combo_ne_e ... ok [INFO] [stdout] test get_first_set::combo_et ... ok [INFO] [stdout] test get_first_set::combo_ent ... ok [INFO] [stdout] test compilers_1st_ed::pg_188 ... ok [INFO] [stdout] test get_first_set::combo_t ... 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_nt_e ... ok [INFO] [stdout] test compiler_design_in_c_1st::pg_217 ... ok [INFO] [stdout] test compiler_design_in_c_1st::pg_214 ... ok [INFO] [stdout] test compiler_design_in_c_1st::get_parse_table_ok ... 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::combo_tt ... ok [INFO] [stdout] test get_first_set::invalid_grammar ... ok [INFO] [stdout] test get_first_set::combo_tnt ... ok [INFO] [stdout] test get_first_set::is_empty ... ok [INFO] [stdout] test get_follow_set::combo_een_e ... ok [INFO] [stdout] test get_follow_set::combo_e ... ok [INFO] [stdout] test get_follow_set::combo_ee ... ok [INFO] [stdout] test get_follow_set::combo_eee ... ok [INFO] [stdout] test get_follow_set::combo_en_e ... ok [INFO] [stdout] test get_follow_set::combo_en_t ... ok [INFO] [stdout] test get_first_set::matching_non_terminal ... ok [INFO] [stdout] test get_follow_set::combo_ene_e ... ok [INFO] [stdout] test get_first_set::combo_tn ... ok [INFO] [stdout] test get_follow_set::combo_enn_t ... ok [INFO] [stdout] test get_follow_set::combo_een_t ... ok [INFO] [stdout] test get_follow_set::combo_et ... ok [INFO] [stdout] test get_follow_set::combo_ent_t ... ok [INFO] [stdout] test get_follow_set::combo_ete ... ok [INFO] [stdout] test get_follow_set::combo_eet ... ok [INFO] [stdout] test get_follow_set::combo_enn_e ... ok [INFO] [stdout] test get_follow_set::combo_ent_e ... ok [INFO] [stdout] test get_follow_set::combo_etn_e ... ok [INFO] [stdout] test get_follow_set::combo_ene_t ... ok [INFO] [stdout] test get_follow_set::combo_nee_t ... ok [INFO] [stdout] test get_follow_set::combo_etn_t ... ok [INFO] [stdout] test get_follow_set::combo_net_e ... ok [INFO] [stdout] test get_follow_set::combo_nen_e ... ok [INFO] [stdout] test get_follow_set::combo_ett ... ok [INFO] [stdout] test get_follow_set::combo_n_e ... 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_net_t ... ok [INFO] [stdout] test get_follow_set::combo_nnn_t_e ... ok [INFO] [stdout] test _parse::panic_on_terminal ... ok [INFO] [stdout] test get_follow_set::combo_nnt_t ... 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_nte_t ... ok [INFO] [stdout] test get_follow_set::combo_nen_t ... ok [INFO] [stdout] test get_follow_set::combo_ntt_e ... ok [INFO] [stdout] test get_follow_set::combo_t ... ok [INFO] [stdout] test get_follow_set::combo_ntt_t ... ok [INFO] [stdout] test get_follow_set::combo_ntn_e ... ok [INFO] [stdout] test get_follow_set::combo_ntn_t ... ok [INFO] [stdout] test get_follow_set::combo_te ... ok [INFO] [stdout] test get_follow_set::combo_ten_t ... 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_parse_table::combo_et ... ok [INFO] [stdout] test get_parse_table::combo_n_e ... ok [INFO] [stdout] test get_parse_table::combo_n_n ... ok [INFO] [stdout] test get_parse_table::combo_n_t ... ok [INFO] [stdout] test get_follow_set::combo_tet ... ok [INFO] [stdout] test get_follow_set::combo_nne ... ok [INFO] [stdout] test get_follow_set::combo_nne_t ... ok [INFO] [stdout] test get_follow_set::combo_nnn_e ... ok [INFO] [stdout] test get_follow_set::combo_nte_e ... ok [INFO] [stdout] test get_follow_set::combo_tee ... ok [INFO] [stdout] test get_follow_set::combo_ten_e ... ok [INFO] [stdout] test get_parse_table::combo_ne_e ... ok [INFO] [stdout] test get_parse_table::combo_nt_e ... ok [INFO] [stdout] test get_parse_table::combo_nt_t ... ok [INFO] [stdout] test get_parse_table::combo_ne_t_nt ... ok [INFO] [stdout] test get_parse_table::combo_t_et ... ok [INFO] [stdout] test get_parse_table::combo_t ... ok [INFO] [stdout] test get_parse_table::combo_te ... ok [INFO] [stdout] test get_parse_table::combo_te_nt_nt ... ok [INFO] [stdout] test get_parse_table::combo_tn_e ... ok [INFO] [stdout] test get_parse_table::combo_tn_t ... ok [INFO] [stdout] test get_parse_table::combo_tt ... 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 new::empty_grammar ... ok [INFO] [stdout] test get_parse_table::combo_t_t ... ok [INFO] [stdout] test get_parse_table::combo_nn_e ... ok [INFO] [stdout] test new::no_start_symbol ... ok [INFO] [stdout] test get_parse_table::combo_nn_t ... ok [INFO] [stdout] test get_parse_table::combo_ne_nt_nt ... ok [INFO] [stdout] test parsing_techniques_2nd_ed::pg_246 ... ok [INFO] [stdout] test parsing_techniques_2nd_ed::pg_243 ... ok [INFO] [stdout] test parsing_techniques_2nd_ed::pg_247 ... ok [INFO] [stdout] test compilers_1st_ed::parse_ok ... ok [INFO] [stdout] test parse::invalid_input ... ok [INFO] [stdout] test parsing_techniques_2nd_ed::parse_ok ... ok [INFO] [stdout] test rollup::auto_rollup ... ok [INFO] [stdout] test new::ok ... ok [INFO] [stdout] test parse::no_more_input ... ok [INFO] [stdout] test rollup::no_rollup ... ok [INFO] [stdout] test _parse::invalid_wrong_terminal_recursed ... ok [INFO] [stdout] test _parse::ok ... ok [INFO] [stdout] test rollup::rollup ... 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::no_more_input ... ok [INFO] [stdout] test compiler_design_in_c_1st::parse_ok ... ok [INFO] [stdout] test _parse::invalid_wrong_terminal ... ok [INFO] [stdout] test parse::ok ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 129 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 5.23s [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.07s [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "574139d942f9cddf251af8771fae611920932e43a35b76501b159999577a1299", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "574139d942f9cddf251af8771fae611920932e43a35b76501b159999577a1299", kill_on_drop: false }` [INFO] [stdout] 574139d942f9cddf251af8771fae611920932e43a35b76501b159999577a1299