[INFO] crate gallop 1.0.4 is already in cache [INFO] testing gallop-1.0.4 against try#03a1ea71b075ab964b5278bc6e74cd6c52c36ee0 for pr-74409 [INFO] extracting crate gallop 1.0.4 into /workspace/builds/worker-14/source [INFO] validating manifest of crates.io crate gallop 1.0.4 on toolchain 03a1ea71b075ab964b5278bc6e74cd6c52c36ee0 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+03a1ea71b075ab964b5278bc6e74cd6c52c36ee0" "read-manifest" "--manifest-path" "Cargo.toml", 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-14/source/Cargo.toml [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+03a1ea71b075ab964b5278bc6e74cd6c52c36ee0" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }` [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+03a1ea71b075ab964b5278bc6e74cd6c52c36ee0" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/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" "MAP_USER_ID=0" "-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" "--network" "none" "rustops/crates-build-env@sha256:d9fbb4e2287ab3795bdefaf705efb7541a8875c13bce71e067d6b01dc5ed759b" "/opt/rustwide/cargo-home/bin/cargo" "+03a1ea71b075ab964b5278bc6e74cd6c52c36ee0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 2c6a00f88ede6be230a403f4009f42104008a7bb0f3123c04ea3a6ab307aefbe [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" "2c6a00f88ede6be230a403f4009f42104008a7bb0f3123c04ea3a6ab307aefbe", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "2c6a00f88ede6be230a403f4009f42104008a7bb0f3123c04ea3a6ab307aefbe", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "2c6a00f88ede6be230a403f4009f42104008a7bb0f3123c04ea3a6ab307aefbe", kill_on_drop: false }` [INFO] [stdout] 2c6a00f88ede6be230a403f4009f42104008a7bb0f3123c04ea3a6ab307aefbe [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/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" "MAP_USER_ID=0" "-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" "--network" "none" "rustops/crates-build-env@sha256:d9fbb4e2287ab3795bdefaf705efb7541a8875c13bce71e067d6b01dc5ed759b" "/opt/rustwide/cargo-home/bin/cargo" "+03a1ea71b075ab964b5278bc6e74cd6c52c36ee0" "build" "--frozen" "--message-format=json", 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] ef14bf6f66bd184f0f6fe58b0b5524fbc5b8719951c822ebcf1312a79d52431c [INFO] running `Command { std: "docker" "start" "-a" "ef14bf6f66bd184f0f6fe58b0b5524fbc5b8719951c822ebcf1312a79d52431c", 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 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.56s [INFO] running `Command { std: "docker" "inspect" "ef14bf6f66bd184f0f6fe58b0b5524fbc5b8719951c822ebcf1312a79d52431c", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "ef14bf6f66bd184f0f6fe58b0b5524fbc5b8719951c822ebcf1312a79d52431c", kill_on_drop: false }` [INFO] [stdout] ef14bf6f66bd184f0f6fe58b0b5524fbc5b8719951c822ebcf1312a79d52431c [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/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" "MAP_USER_ID=0" "-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" "--network" "none" "rustops/crates-build-env@sha256:d9fbb4e2287ab3795bdefaf705efb7541a8875c13bce71e067d6b01dc5ed759b" "/opt/rustwide/cargo-home/bin/cargo" "+03a1ea71b075ab964b5278bc6e74cd6c52c36ee0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] a37d1fd21e83c8ec8c25c5ee16b91ec2b3a26b8494f1a06fafbdebf57dc5d2e1 [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" "a37d1fd21e83c8ec8c25c5ee16b91ec2b3a26b8494f1a06fafbdebf57dc5d2e1", 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 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.57s [INFO] running `Command { std: "docker" "inspect" "a37d1fd21e83c8ec8c25c5ee16b91ec2b3a26b8494f1a06fafbdebf57dc5d2e1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a37d1fd21e83c8ec8c25c5ee16b91ec2b3a26b8494f1a06fafbdebf57dc5d2e1", kill_on_drop: false }` [INFO] [stdout] a37d1fd21e83c8ec8c25c5ee16b91ec2b3a26b8494f1a06fafbdebf57dc5d2e1 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-14/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" "MAP_USER_ID=0" "-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" "--network" "none" "rustops/crates-build-env@sha256:d9fbb4e2287ab3795bdefaf705efb7541a8875c13bce71e067d6b01dc5ed759b" "/opt/rustwide/cargo-home/bin/cargo" "+03a1ea71b075ab964b5278bc6e74cd6c52c36ee0" "test" "--frozen", kill_on_drop: false }` [INFO] [stdout] 92f2ac7a1acafc7eaebb8f3ef8bb15e9b9470e872aa88cc78ec9ee1f569286f3 [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" "92f2ac7a1acafc7eaebb8f3ef8bb15e9b9470e872aa88cc78ec9ee1f569286f3", 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 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.05s [INFO] [stdout] [INFO] [stderr] Running /opt/rustwide/target/debug/deps/gallop-68c7bd6abab6fe92 [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 compiler_design_in_c_1st::pg_217 ... 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_nt_e ... ok [INFO] [stdout] test get_first_set::combo_nt_t ... ok [INFO] [stdout] test get_first_set::combo_t ... ok [INFO] [stdout] test get_first_set::combo_te ... ok [INFO] [stdout] test compiler_design_in_c_1st::get_parse_table_ok ... ok [INFO] [stdout] test get_first_set::combo_tn ... ok [INFO] [stdout] test get_first_set::combo_ene ... ok [INFO] [stdout] test get_first_set::combo_tnt ... ok [INFO] [stdout] test get_first_set::invalid_grammar ... ok [INFO] [stdout] test get_first_set::combo_tt ... ok [INFO] [stdout] test get_first_set::matching_non_terminal ... ok [INFO] [stdout] test get_first_set::is_empty ... ok [INFO] [stdout] test get_follow_set::combo_ee ... ok [INFO] [stdout] test get_follow_set::combo_e ... ok [INFO] [stdout] test get_follow_set::combo_eee ... ok [INFO] [stdout] test get_follow_set::combo_een_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_follow_set::combo_en_e ... ok [INFO] [stdout] test get_follow_set::combo_en_t ... ok [INFO] [stdout] test get_follow_set::combo_ene_t ... ok [INFO] [stdout] test get_follow_set::combo_ene_e ... ok [INFO] [stdout] test get_follow_set::combo_enn_t ... 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_ent_t ... ok [INFO] [stdout] test get_follow_set::combo_et ... ok [INFO] [stdout] test get_follow_set::combo_ete ... ok [INFO] [stdout] test get_follow_set::combo_etn_t ... ok [INFO] [stdout] test get_follow_set::combo_etn_e ... ok [INFO] [stdout] test get_follow_set::combo_n_e ... ok [INFO] [stdout] test get_follow_set::combo_ett ... ok [INFO] [stdout] test get_follow_set::combo_nee_e ... ok [INFO] [stdout] test get_follow_set::combo_n_t ... ok [INFO] [stdout] test get_follow_set::combo_nen_e ... ok [INFO] [stdout] test get_first_set::combo_tne ... ok [INFO] [stdout] test get_first_set::combo_ne_t ... ok [INFO] [stdout] test get_follow_set::combo_nee_t ... ok [INFO] [stdout] test get_follow_set::combo_nen_t ... ok [INFO] [stdout] test get_follow_set::combo_net_t ... ok [INFO] [stdout] test get_follow_set::combo_net_e ... ok [INFO] [stdout] test get_follow_set::combo_nnn_e ... ok [INFO] [stdout] test get_follow_set::combo_nnn_t_e ... ok [INFO] [stdout] test get_follow_set::combo_nne_t ... ok [INFO] [stdout] test get_follow_set::combo_nnn_t_t ... ok [INFO] [stdout] test get_follow_set::combo_nte_e ... ok [INFO] [stdout] test get_follow_set::combo_nne ... ok [INFO] [stdout] test get_follow_set::combo_nnt_e ... ok [INFO] [stdout] test compilers_1st_ed::pg_190 ... ok [INFO] [stdout] test compilers_1st_ed::pg_188 ... ok [INFO] [stdout] test get_first_set::combo_e ... 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_ntt_e ... 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_tee ... ok [INFO] [stdout] test get_follow_set::combo_nnt_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_ten_e ... 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_tne_t ... ok [INFO] [stdout] test get_follow_set::combo_tne_e ... ok [INFO] [stdout] test get_follow_set::combo_tt ... ok [INFO] [stdout] test get_follow_set::combo_t ... ok [INFO] [stdout] test get_follow_set::combo_tn_t ... ok [INFO] [stdout] test get_follow_set::combo_tte ... ok [INFO] [stdout] test get_follow_set::combo_tnt_t ... ok [INFO] [stdout] test get_follow_set::combo_tnt_e ... ok [INFO] [stdout] test get_follow_set::combo_ntt_t ... 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_et ... 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_t ... ok [INFO] [stdout] test get_parse_table::combo_n_e ... ok [INFO] [stdout] test get_parse_table::combo_ne_nt_nt ... ok [INFO] [stdout] test get_parse_table::combo_ne_t ... ok [INFO] [stdout] test get_parse_table::combo_ne_t_nt ... ok [INFO] [stdout] test get_parse_table::combo_nn_e ... ok [INFO] [stdout] test get_parse_table::combo_en_e ... ok [INFO] [stdout] test get_parse_table::combo_nn_t ... ok [INFO] [stdout] test get_follow_set::combo_ttn_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_nte_t ... 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_nn_t_t ... ok [INFO] [stdout] test get_parse_table::combo_t_t ... 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_te_nt_nt ... ok [INFO] [stdout] test new::empty_grammar ... ok [INFO] [stdout] test new::no_start_symbol ... 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_ne_e ... ok [INFO] [stdout] test get_parse_table::combo_te ... ok [INFO] [stdout] test get_parse_table::combo_t_et ... ok [INFO] [stdout] test parsing_techniques_2nd_ed::pg_243 ... ok [INFO] [stdout] test parsing_techniques_2nd_ed::pg_246 ... ok [INFO] [stdout] test parsing_techniques_2nd_ed::pg_247 ... ok [INFO] [stdout] test _parse::panic_on_terminal ... ok [INFO] [stdout] test _parse::ok ... ok [INFO] [stdout] test rollup::no_rollup ... ok [INFO] [stdout] test _parse::no_more_input ... ok [INFO] [stdout] test _parse::no_input ... ok [INFO] [stdout] test new::bad_parse_table ... ok [INFO] [stdout] test parse::no_more_input ... ok [INFO] [stdout] test parse::ok ... ok [INFO] [stdout] test _parse::invalid_wrong_terminal_recursed ... ok [INFO] [stdout] test parsing_techniques_2nd_ed::parse_ok ... ok [INFO] [stdout] test compiler_design_in_c_1st::parse_ok ... ok [INFO] [stdout] test _parse::invalid_input ... ok [INFO] [stdout] test new::ok ... ok [INFO] [stdout] test parse::invalid_input ... ok [INFO] [stdout] test rollup::auto_rollup ... ok [INFO] [stdout] test compilers_1st_ed::parse_ok ... ok [INFO] [stdout] test _parse::invalid_wrong_terminal ... ok [INFO] [stderr] Doc-tests gallop [INFO] [stdout] test rollup::rollup ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 129 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [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 [INFO] [stdout] [INFO] running `Command { std: "docker" "inspect" "92f2ac7a1acafc7eaebb8f3ef8bb15e9b9470e872aa88cc78ec9ee1f569286f3", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "92f2ac7a1acafc7eaebb8f3ef8bb15e9b9470e872aa88cc78ec9ee1f569286f3", kill_on_drop: false }` [INFO] [stdout] 92f2ac7a1acafc7eaebb8f3ef8bb15e9b9470e872aa88cc78ec9ee1f569286f3