[INFO] fetching crate earley 0.1.0...
[INFO] checking earley-0.1.0 against try#47af3d0de9d26c7deba4cfb203b710cc3f764e91 for pr-130443
[INFO] extracting crate earley 0.1.0 into /workspace/builds/worker-0-tc2/source
[INFO] validating manifest of crates.io crate earley 0.1.0 on toolchain 47af3d0de9d26c7deba4cfb203b710cc3f764e91
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+47af3d0de9d26c7deba4cfb203b710cc3f764e91" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate earley 0.1.0
[INFO] finished tweaking crates.io crate earley 0.1.0
[INFO] tweaked toml for crates.io crate earley 0.1.0 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+47af3d0de9d26c7deba4cfb203b710cc3f764e91" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 28 packages to latest compatible versions
[INFO] [stderr]       Adding windows-sys v0.52.0 (available: v0.59.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+47af3d0de9d26c7deba4cfb203b710cc3f764e91" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2021
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+47af3d0de9d26c7deba4cfb203b710cc3f764e91" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 46ea65dedf242254c5960f9240e442decd084e5f8470b6cd42f4d4626c87ecb3
[INFO] running `Command { std: "docker" "start" "-a" "46ea65dedf242254c5960f9240e442decd084e5f8470b6cd42f4d4626c87ecb3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "46ea65dedf242254c5960f9240e442decd084e5f8470b6cd42f4d4626c87ecb3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "46ea65dedf242254c5960f9240e442decd084e5f8470b6cd42f4d4626c87ecb3", kill_on_drop: false }`
[INFO] [stdout] 46ea65dedf242254c5960f9240e442decd084e5f8470b6cd42f4d4626c87ecb3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:ceb6ea022f8a89cebbe621bb4987e73a935bd40dfbb726f832cfff4742a5b95a" "/opt/rustwide/cargo-home/bin/cargo" "+47af3d0de9d26c7deba4cfb203b710cc3f764e91" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] fecd26f37c7f5fbc8e4b21a8dd71f69bca9073a80cbe53decdf2d09a72db819b
[INFO] running `Command { std: "docker" "start" "-a" "fecd26f37c7f5fbc8e4b21a8dd71f69bca9073a80cbe53decdf2d09a72db819b", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2021
[INFO] [stderr]     Checking memchr v2.7.4
[INFO] [stderr]     Checking unicode-segmentation v1.12.0
[INFO] [stderr]     Checking anstream v0.6.15
[INFO] [stderr]     Checking earley v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/item_table.rs:108:13
[INFO] [stdout]     |
[INFO] [stdout] 108 |             try!(format!("{:=^80}\n", format!(" {} ", index)).fmt(f));
[INFO] [stdout]     |             ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/item_table.rs:110:17
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 try!(format!("{:<60} {:?}\n", item, item.get_operation()).fmt(f));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/grammar/rule.rs:6:26
[INFO] [stdout]   |
[INFO] [stdout] 6 |     productions: Vec<Box<Production<T>>>,
[INFO] [stdout]   |                          ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 6 |     productions: Vec<Box<dyn Production<T>>>,
[INFO] [stdout]   |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/item.rs:16:21
[INFO] [stdout]    |
[INFO] [stdout] 16 |     production: &'a Production<T>,
[INFO] [stdout]    |                     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 16 |     production: &'a dyn Production<T>,
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/grammar/production.rs:12:31
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl<'a, T> PartialEq for &'a Production<T> {
[INFO] [stdout]    |                               ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl<'a, T> PartialEq for &'a dyn Production<T> {
[INFO] [stdout]    |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/grammar/rule.rs:11:57
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub fn new(name: &'static str, productions: Vec<Box<Production<T>>>) -> Rule<T> {
[INFO] [stdout]    |                                                         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub fn new(name: &'static str, productions: Vec<Box<dyn Production<T>>>) -> Rule<T> {
[INFO] [stdout]    |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/grammar/rule.rs:23:44
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn get_productions(&self) -> &[Box<Production<T>>] {
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn get_productions(&self) -> &[Box<dyn Production<T>>] {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/grammar/mod.rs:20:37
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub fn new(productions: Vec<Box<Production<T>>>) -> Grammar<T> {
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub fn new(productions: Vec<Box<dyn Production<T>>>) -> Grammar<T> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/grammar/mod.rs:47:58
[INFO] [stdout]    |
[INFO] [stdout] 47 |     pub fn productions_for_starting_rule(&self) -> &[Box<Production<T>>] {
[INFO] [stdout]    |                                                          ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 47 |     pub fn productions_for_starting_rule(&self) -> &[Box<dyn Production<T>>] {
[INFO] [stdout]    |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/grammar/mod.rs:51:56
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub fn productions_for(&self, name: &str) -> &[Box<Production<T>>] {
[INFO] [stdout]    |                                                        ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub fn productions_for(&self, name: &str) -> &[Box<dyn Production<T>>] {
[INFO] [stdout]    |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/item.rs:42:36
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub fn predict(production: &'a Production<T>, start: usize) -> Item<'a, T> {
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub fn predict(production: &'a dyn Production<T>, start: usize) -> Item<'a, T> {
[INFO] [stdout]    |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/grammar/production.rs:18:24
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl<'a, T> Eq for &'a Production<T> {}
[INFO] [stdout]    |                        ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl<'a, T> Eq for &'a dyn Production<T> {}
[INFO] [stdout]    |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/item_table.rs:88:21
[INFO] [stdout]    |
[INFO] [stdout] 88 |         if let Some(mut items) = self.table.get_mut(index) {
[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: 13 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking regex-automata v0.4.7
[INFO] [stderr]     Checking regex v1.10.6
[INFO] [stderr]     Checking env_filter v0.1.2
[INFO] [stderr]     Checking env_logger v0.11.5
[INFO] [stdout] error: no rules expected the token `:`
[INFO] [stdout]   --> benches/basic.rs:12:82
[INFO] [stdout]    |
[INFO] [stdout] 12 |         earley_production!("Sum" => [{"Sum"}, ["+"], {"Product"}]         (result: u32) { result[0].get() + result[2].get() }),
[INFO] [stdout]    |                                                                                  ^ no rules expected this token in macro call
[INFO] [stdout]    |
[INFO] [stdout] note: while trying to match `)`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/grammar/macros.rs:10:57
[INFO] [stdout]    |
[INFO] [stdout] 10 |     ($name:expr => [$($token:expr),*] ($($varname:pat),*) -> $vartype:ty; $action:block) => {
[INFO] [stdout]    |                                                         ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: no rules expected the token `:`
[INFO] [stdout]   --> benches/basic.rs:13:82
[INFO] [stdout]    |
[INFO] [stdout] 13 |         earley_production!("Sum" => [{"Product"}]                         (result: u32) { result[0].get() }),
[INFO] [stdout]    |                                                                                  ^ no rules expected this token in macro call
[INFO] [stdout]    |
[INFO] [stdout] note: while trying to match `)`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/grammar/macros.rs:10:57
[INFO] [stdout]    |
[INFO] [stdout] 10 |     ($name:expr => [$($token:expr),*] ($($varname:pat),*) -> $vartype:ty; $action:block) => {
[INFO] [stdout]    |                                                         ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: no rules expected the token `:`
[INFO] [stdout]   --> benches/basic.rs:14:82
[INFO] [stdout]    |
[INFO] [stdout] 14 |         earley_production!("Product" => [{"Product"}, ["*"], {"Factor"}]  (result: u32) { result[0].get() * result[2].get() }),
[INFO] [stdout]    |                                                                                  ^ no rules expected this token in macro call
[INFO] [stdout]    |
[INFO] [stdout] note: while trying to match `)`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/grammar/macros.rs:10:57
[INFO] [stdout]    |
[INFO] [stdout] 10 |     ($name:expr => [$($token:expr),*] ($($varname:pat),*) -> $vartype:ty; $action:block) => {
[INFO] [stdout]    |                                                         ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: no rules expected the token `:`
[INFO] [stdout]   --> benches/basic.rs:15:82
[INFO] [stdout]    |
[INFO] [stdout] 15 |         earley_production!("Product" => [{"Factor"}]                      (result: u32) { result[0].get() }),
[INFO] [stdout]    |                                                                                  ^ no rules expected this token in macro call
[INFO] [stdout]    |
[INFO] [stdout] note: while trying to match `)`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/grammar/macros.rs:10:57
[INFO] [stdout]    |
[INFO] [stdout] 10 |     ($name:expr => [$($token:expr),*] ($($varname:pat),*) -> $vartype:ty; $action:block) => {
[INFO] [stdout]    |                                                         ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: no rules expected the token `:`
[INFO] [stdout]   --> benches/basic.rs:16:82
[INFO] [stdout]    |
[INFO] [stdout] 16 |         earley_production!("Factor" => [["("], {"Sum"}, [")"]]            (result: u32) { result[1].get() }),
[INFO] [stdout]    |                                                                                  ^ no rules expected this token in macro call
[INFO] [stdout]    |
[INFO] [stdout] note: while trying to match `)`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/grammar/macros.rs:10:57
[INFO] [stdout]    |
[INFO] [stdout] 10 |     ($name:expr => [$($token:expr),*] ($($varname:pat),*) -> $vartype:ty; $action:block) => {
[INFO] [stdout]    |                                                         ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: no rules expected the token `:`
[INFO] [stdout]   --> benches/basic.rs:17:82
[INFO] [stdout]    |
[INFO] [stdout] 17 |         earley_production!("Factor" => [{"Number"}]                       (result: u32) { result[0].get() }),
[INFO] [stdout]    |                                                                                  ^ no rules expected this token in macro call
[INFO] [stdout]    |
[INFO] [stdout] note: while trying to match `)`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/grammar/macros.rs:10:57
[INFO] [stdout]    |
[INFO] [stdout] 10 |     ($name:expr => [$($token:expr),*] ($($varname:pat),*) -> $vartype:ty; $action:block) => {
[INFO] [stdout]    |                                                         ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: no rules expected the token `:`
[INFO] [stdout]   --> benches/basic.rs:18:82
[INFO] [stdout]    |
[INFO] [stdout] 18 |         earley_production!("Number" => [["1"]]                            (result: u32) { 1 }),
[INFO] [stdout]    |                                                                                  ^ no rules expected this token in macro call
[INFO] [stdout]    |
[INFO] [stdout] note: while trying to match `)`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/grammar/macros.rs:10:57
[INFO] [stdout]    |
[INFO] [stdout] 10 |     ($name:expr => [$($token:expr),*] ($($varname:pat),*) -> $vartype:ty; $action:block) => {
[INFO] [stdout]    |                                                         ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: no rules expected the token `:`
[INFO] [stdout]   --> benches/basic.rs:19:82
[INFO] [stdout]    |
[INFO] [stdout] 19 |         earley_production!("Number" => [["2"]]                            (result: u32) { 2 }),
[INFO] [stdout]    |                                                                                  ^ no rules expected this token in macro call
[INFO] [stdout]    |
[INFO] [stdout] note: while trying to match `)`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/grammar/macros.rs:10:57
[INFO] [stdout]    |
[INFO] [stdout] 10 |     ($name:expr => [$($token:expr),*] ($($varname:pat),*) -> $vartype:ty; $action:block) => {
[INFO] [stdout]    |                                                         ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: no rules expected the token `:`
[INFO] [stdout]   --> benches/basic.rs:20:82
[INFO] [stdout]    |
[INFO] [stdout] 20 |         earley_production!("Number" => [["3"]]                            (result: u32) { 3 }),
[INFO] [stdout]    |                                                                                  ^ no rules expected this token in macro call
[INFO] [stdout]    |
[INFO] [stdout] note: while trying to match `)`
[INFO] [stdout]   --> /opt/rustwide/workdir/src/grammar/macros.rs:10:57
[INFO] [stdout]    |
[INFO] [stdout] 10 |     ($name:expr => [$($token:expr),*] ($($varname:pat),*) -> $vartype:ty; $action:block) => {
[INFO] [stdout]    |                                                         ^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> benches/basic.rs:3:1
[INFO] [stdout]   |
[INFO] [stdout] 3 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> tests/rules.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> tests/nullability.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> benches/basic.rs:11:30
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let productions: Vec<Box<Production<u32>>> = vec![
[INFO] [stdout]    |                              ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     let productions: Vec<Box<dyn Production<u32>>> = vec![
[INFO] [stdout]    |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> examples/basic.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> tests/empty_rules.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused `#[macro_use]` import
[INFO] [stdout]  --> tests/basic.rs:1:1
[INFO] [stdout]   |
[INFO] [stdout] 1 | #[macro_use]
[INFO] [stdout]   | ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/item_table.rs:108:13
[INFO] [stdout]     |
[INFO] [stdout] 108 |             try!(format!("{:=^80}\n", format!(" {} ", index)).fmt(f));
[INFO] [stdout]     |             ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated macro `try`: use the `?` operator instead
[INFO] [stdout]    --> src/item_table.rs:110:17
[INFO] [stdout]     |
[INFO] [stdout] 110 |                 try!(format!("{:<60} {:?}\n", item, item.get_operation()).fmt(f));
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> src/grammar/rule.rs:6:26
[INFO] [stdout]   |
[INFO] [stdout] 6 |     productions: Vec<Box<Production<T>>>,
[INFO] [stdout]   |                          ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 6 |     productions: Vec<Box<dyn Production<T>>>,
[INFO] [stdout]   |                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/item.rs:16:21
[INFO] [stdout]    |
[INFO] [stdout] 16 |     production: &'a Production<T>,
[INFO] [stdout]    |                     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 16 |     production: &'a dyn Production<T>,
[INFO] [stdout]    |                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/grammar/production.rs:12:31
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl<'a, T> PartialEq for &'a Production<T> {
[INFO] [stdout]    |                               ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 12 | impl<'a, T> PartialEq for &'a dyn Production<T> {
[INFO] [stdout]    |                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/grammar/rule.rs:11:57
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub fn new(name: &'static str, productions: Vec<Box<Production<T>>>) -> Rule<T> {
[INFO] [stdout]    |                                                         ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 11 |     pub fn new(name: &'static str, productions: Vec<Box<dyn Production<T>>>) -> Rule<T> {
[INFO] [stdout]    |                                                         +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/grammar/rule.rs:23:44
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn get_productions(&self) -> &[Box<Production<T>>] {
[INFO] [stdout]    |                                            ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 23 |     pub fn get_productions(&self) -> &[Box<dyn Production<T>>] {
[INFO] [stdout]    |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/grammar/mod.rs:20:37
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub fn new(productions: Vec<Box<Production<T>>>) -> Grammar<T> {
[INFO] [stdout]    |                                     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 20 |     pub fn new(productions: Vec<Box<dyn Production<T>>>) -> Grammar<T> {
[INFO] [stdout]    |                                     +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/grammar/mod.rs:47:58
[INFO] [stdout]    |
[INFO] [stdout] 47 |     pub fn productions_for_starting_rule(&self) -> &[Box<Production<T>>] {
[INFO] [stdout]    |                                                          ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 47 |     pub fn productions_for_starting_rule(&self) -> &[Box<dyn Production<T>>] {
[INFO] [stdout]    |                                                          +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/grammar/mod.rs:51:56
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub fn productions_for(&self, name: &str) -> &[Box<Production<T>>] {
[INFO] [stdout]    |                                                        ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 51 |     pub fn productions_for(&self, name: &str) -> &[Box<dyn Production<T>>] {
[INFO] [stdout]    |                                                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> tests/rules.rs:7:30
[INFO] [stdout]   |
[INFO] [stdout] 7 |     let productions: Vec<Box<Production<u32>>> = vec![
[INFO] [stdout]   |                              ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 7 |     let productions: Vec<Box<dyn Production<u32>>> = vec![
[INFO] [stdout]   |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 9 previous errors; 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/item.rs:42:36
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub fn predict(production: &'a Production<T>, start: usize) -> Item<'a, T> {
[INFO] [stdout]    |                                    ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub fn predict(production: &'a dyn Production<T>, start: usize) -> Item<'a, T> {
[INFO] [stdout]    |                                    +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/grammar/production.rs:18:24
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl<'a, T> Eq for &'a Production<T> {}
[INFO] [stdout]    |                        ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl<'a, T> Eq for &'a dyn Production<T> {}
[INFO] [stdout]    |                        +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> tests/nullability.rs:7:30
[INFO] [stdout]   |
[INFO] [stdout] 7 |     let productions: Vec<Box<Production<u32>>> = vec![
[INFO] [stdout]   |                              ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 7 |     let productions: Vec<Box<dyn Production<u32>>> = vec![
[INFO] [stdout]   |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> tests/empty_rules.rs:7:30
[INFO] [stdout]   |
[INFO] [stdout] 7 |     let productions: Vec<Box<Production<String>>> = vec![
[INFO] [stdout]   |                              ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 7 |     let productions: Vec<Box<dyn Production<String>>> = vec![
[INFO] [stdout]   |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `earley` (bench "basic") due to 10 previous errors; 2 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]  --> tests/basic.rs:7:30
[INFO] [stdout]   |
[INFO] [stdout] 7 |     let productions: Vec<Box<Production<u32>>> = vec![
[INFO] [stdout]   |                              ^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]   = note: for more information, see <https://doc.rust-lang.org/nightly/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]   = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] help: if this is an object-safe trait, use `dyn`
[INFO] [stdout]   |
[INFO] [stdout] 7 |     let productions: Vec<Box<dyn Production<u32>>> = vec![
[INFO] [stdout]   |                              +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `unwrap` found for unit type `()` in the current scope
[INFO] [stdout]  --> examples/basic.rs:8:24
[INFO] [stdout]   |
[INFO] [stdout] 8 |     env_logger::init().unwrap();
[INFO] [stdout]   |                        ^^^^^^ method not found in `()`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 1 previous error; 1 warning emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0599`.
[INFO] [stdout] 
[INFO] [stdout] warning: 2 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `earley` (example "basic") due to 2 previous errors; 1 warning emitted
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/item_table.rs:88:21
[INFO] [stdout]    |
[INFO] [stdout] 88 |         if let Some(mut items) = self.table.get_mut(index) {
[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: 13 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "fecd26f37c7f5fbc8e4b21a8dd71f69bca9073a80cbe53decdf2d09a72db819b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "fecd26f37c7f5fbc8e4b21a8dd71f69bca9073a80cbe53decdf2d09a72db819b", kill_on_drop: false }`
[INFO] [stdout] fecd26f37c7f5fbc8e4b21a8dd71f69bca9073a80cbe53decdf2d09a72db819b
