[INFO] cloning repository https://github.com/mrotaru/language-implementation-patterns [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/mrotaru/language-implementation-patterns" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmrotaru%2Flanguage-implementation-patterns", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmrotaru%2Flanguage-implementation-patterns'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] d9f6631b1a5e7cb48e5f4ce8724f2ca7f4bbd59c [INFO] testing mrotaru/language-implementation-patterns against master#8534be72fc3b9c5f2f2dc4e4ee7b651a008e9a3e for pr-74409 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmrotaru%2Flanguage-implementation-patterns" "/workspace/builds/worker-7/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/mrotaru/language-implementation-patterns on toolchain 8534be72fc3b9c5f2f2dc4e4ee7b651a008e9a3e [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+8534be72fc3b9c5f2f2dc4e4ee7b651a008e9a3e" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/mrotaru/language-implementation-patterns [INFO] finished tweaking git repo https://github.com/mrotaru/language-implementation-patterns [INFO] tweaked toml for git repo https://github.com/mrotaru/language-implementation-patterns written to /workspace/builds/worker-7/source/Cargo.toml [INFO] crate git repo https://github.com/mrotaru/language-implementation-patterns already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+8534be72fc3b9c5f2f2dc4e4ee7b651a008e9a3e" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+8534be72fc3b9c5f2f2dc4e4ee7b651a008e9a3e" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] aacaceef8e3d47219e0d89b9faccf53e4d21fd9117c1450968f15705f193316e [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" "aacaceef8e3d47219e0d89b9faccf53e4d21fd9117c1450968f15705f193316e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "aacaceef8e3d47219e0d89b9faccf53e4d21fd9117c1450968f15705f193316e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "aacaceef8e3d47219e0d89b9faccf53e4d21fd9117c1450968f15705f193316e", kill_on_drop: false }` [INFO] [stdout] aacaceef8e3d47219e0d89b9faccf53e4d21fd9117c1450968f15705f193316e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/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:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+8534be72fc3b9c5f2f2dc4e4ee7b651a008e9a3e" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 8737480af03fefd55fca6e45b663dc50eabbb3e174ed7c7ec41eaad272d147a6 [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" "8737480af03fefd55fca6e45b663dc50eabbb3e174ed7c7ec41eaad272d147a6", kill_on_drop: false }` [INFO] [stderr] Compiling language-implementation-patterns v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error[E0726]: implicit elided lifetime not allowed here [INFO] [stdout] --> src/lib.rs:22:6 [INFO] [stdout] | [INFO] [stdout] 22 | impl ListTokenizer { [INFO] [stdout] | ^^^^^^^^^^^^^- help: indicate the anonymous lifetime: `<'_>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0726]: implicit elided lifetime not allowed here [INFO] [stdout] --> src/lib.rs:38:20 [INFO] [stdout] | [INFO] [stdout] 38 | impl Tokenizer for ListTokenizer { [INFO] [stdout] | ^^^^^^^^^^^^^- help: indicate the anonymous lifetime: `<'_>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated [INFO] [stdout] --> src/lib.rs:18:19 [INFO] [stdout] | [INFO] [stdout] 18 | iterator: Box>, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Iterator` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(bare_trait_objects)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0623]: lifetime mismatch [INFO] [stdout] --> src/lib.rs:24:9 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn new(&mut self, input: &str) -> ListTokenizer { [INFO] [stdout] | ---- ------------- [INFO] [stdout] | | [INFO] [stdout] | this parameter and the return type are declared with different lifetimes... [INFO] [stdout] 24 | / ListTokenizer { [INFO] [stdout] 25 | | input, [INFO] [stdout] 26 | | token_types: vec![ [INFO] [stdout] 27 | | TokenType { name: String::from("LIST_ITEM") }, [INFO] [stdout] ... | [INFO] [stdout] 33 | | current_char_result: self.iterator.next(), [INFO] [stdout] 34 | | } [INFO] [stdout] | |_________^ ...but data from `input` is returned here [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0621]: explicit lifetime required in the type of `input` [INFO] [stdout] --> src/lib.rs:32:23 [INFO] [stdout] | [INFO] [stdout] 23 | pub fn new(&mut self, input: &str) -> ListTokenizer { [INFO] [stdout] | ---- help: add explicit lifetime `'static` to the type of `input`: `&'static str` [INFO] [stdout] ... [INFO] [stdout] 32 | iterator: Box::new(input.chars()), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ lifetime `'static` required [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/lib.rs:48:29 [INFO] [stdout] | [INFO] [stdout] 43 | / match current_char { [INFO] [stdout] 44 | | ' ' | '\t' | '\n' | '\r' => { [INFO] [stdout] 45 | | self.current_char_result = self.iterator.next(); [INFO] [stdout] 46 | | }, [INFO] [stdout] 47 | | ',' => { [INFO] [stdout] 48 | | Token { type_id: &self.token_types[1], data: None } [INFO] [stdout] | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `()`, found struct `Token` [INFO] [stdout] ... | [INFO] [stdout] 55 | | }, [INFO] [stdout] 56 | | } [INFO] [stdout] | | -- help: consider using a semicolon here [INFO] [stdout] | |_____________________| [INFO] [stdout] | expected this to be `()` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/lib.rs:51:29 [INFO] [stdout] | [INFO] [stdout] 43 | / match current_char { [INFO] [stdout] 44 | | ' ' | '\t' | '\n' | '\r' => { [INFO] [stdout] 45 | | self.current_char_result = self.iterator.next(); [INFO] [stdout] 46 | | }, [INFO] [stdout] ... | [INFO] [stdout] 51 | | Token { type_id: &self.token_types[2], data: None } [INFO] [stdout] | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `()`, found struct `Token` [INFO] [stdout] ... | [INFO] [stdout] 55 | | }, [INFO] [stdout] 56 | | } [INFO] [stdout] | | -- help: consider using a semicolon here [INFO] [stdout] | |_____________________| [INFO] [stdout] | expected this to be `()` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/lib.rs:54:29 [INFO] [stdout] | [INFO] [stdout] 43 | / match current_char { [INFO] [stdout] 44 | | ' ' | '\t' | '\n' | '\r' => { [INFO] [stdout] 45 | | self.current_char_result = self.iterator.next(); [INFO] [stdout] 46 | | }, [INFO] [stdout] ... | [INFO] [stdout] 54 | | Token { type_id: &self.token_types[3], data: None } [INFO] [stdout] | | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected `()`, found struct `Token` [INFO] [stdout] 55 | | }, [INFO] [stdout] 56 | | } [INFO] [stdout] | | -- help: consider using a semicolon here [INFO] [stdout] | |_____________________| [INFO] [stdout] | expected this to be `()` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/lib.rs:69:16 [INFO] [stdout] | [INFO] [stdout] 64 | fn tokenize(&self) -> Vec { [INFO] [stdout] | ---------- expected because this return type... [INFO] [stdout] ... [INFO] [stdout] 69 | return tokens; [INFO] [stdout] | ^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | expected struct `Token`, found enum `std::option::Option` [INFO] [stdout] | ...is found to be `std::vec::Vec>` here [INFO] [stdout] | [INFO] [stdout] = note: expected struct `std::vec::Vec>` [INFO] [stdout] found struct `std::vec::Vec>>` [INFO] [stdout] = note: to return `impl Trait`, all returned values must be of the same type [INFO] [stdout] = note: for information on `impl Trait`, see [INFO] [stdout] = help: alternatively, create a new `enum` with a variant for each returned type [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 8 previous errors; 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0308, E0621, E0623. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0308`. [INFO] [stdout] [INFO] [stderr] error: could not compile `language-implementation-patterns`. [INFO] [stderr] [INFO] [stderr] To learn more, run the command again with --verbose. [INFO] running `Command { std: "docker" "inspect" "8737480af03fefd55fca6e45b663dc50eabbb3e174ed7c7ec41eaad272d147a6", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "8737480af03fefd55fca6e45b663dc50eabbb3e174ed7c7ec41eaad272d147a6", kill_on_drop: false }` [INFO] [stdout] 8737480af03fefd55fca6e45b663dc50eabbb3e174ed7c7ec41eaad272d147a6