[INFO] cloning repository https://github.com/jarroyer/me_figuring_out_rust [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/jarroyer/me_figuring_out_rust" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjarroyer%2Fme_figuring_out_rust", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjarroyer%2Fme_figuring_out_rust'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 001498d2eff9a40befac425bbaa88e624d9bfced [INFO] testing jarroyer/me_figuring_out_rust against master#caccb4d0368bd918ef6668af8e13834d07040417 for pr-146098-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjarroyer%2Fme_figuring_out_rust" "/workspace/builds/worker-2-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc1/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/jarroyer/me_figuring_out_rust [INFO] finished tweaking git repo https://github.com/jarroyer/me_figuring_out_rust [INFO] tweaked toml for git repo https://github.com/jarroyer/me_figuring_out_rust written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/jarroyer/me_figuring_out_rust on toolchain caccb4d0368bd918ef6668af8e13834d07040417 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+caccb4d0368bd918ef6668af8e13834d07040417" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate git repo https://github.com/jarroyer/me_figuring_out_rust already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+caccb4d0368bd918ef6668af8e13834d07040417" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+caccb4d0368bd918ef6668af8e13834d07040417" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 13da1879d128e6054a709a83d46e93a97242dae5d7df88ac302ad569183411ce [INFO] running `Command { std: "docker" "start" "-a" "13da1879d128e6054a709a83d46e93a97242dae5d7df88ac302ad569183411ce", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "13da1879d128e6054a709a83d46e93a97242dae5d7df88ac302ad569183411ce", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "13da1879d128e6054a709a83d46e93a97242dae5d7df88ac302ad569183411ce", kill_on_drop: false }` [INFO] [stdout] 13da1879d128e6054a709a83d46e93a97242dae5d7df88ac302ad569183411ce [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/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:e90291280db7d1fac5b66fc6dad9f9662629e7365a55743daf9bdf73ebc4ea79" "/opt/rustwide/cargo-home/bin/cargo" "+caccb4d0368bd918ef6668af8e13834d07040417" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 5fd517f36c54c1236771659fdb677600fe7b53f0bab0f9b629ffc78813b9b7ad [INFO] running `Command { std: "docker" "start" "-a" "5fd517f36c54c1236771659fdb677600fe7b53f0bab0f9b629ffc78813b9b7ad", kill_on_drop: false }` [INFO] [stderr] Compiling messenger v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] error: unknown start of token: ` [INFO] [stdout] --> src/lib.rs:18:22 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct Consumer <`a> { [INFO] [stdout] | ^ [INFO] [stdout] | [INFO] [stdout] help: Unicode character '`' (Grave Accent) looks like ''' (Single Quote), but it is not [INFO] [stdout] | [INFO] [stdout] 18 - pub struct Consumer <`a> { [INFO] [stdout] 18 + pub struct Consumer <'a> { [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected one of `>`, a const expression, lifetime, or type, found `}` [INFO] [stdout] --> src/lib.rs:21:1 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct Consumer <`a> { [INFO] [stdout] | -------- while parsing this struct [INFO] [stdout] 19 | pub name: String, [INFO] [stdout] 20 | pub source: &Vec, [INFO] [stdout] | - expected one of `>`, a const expression, lifetime, or type [INFO] [stdout] 21 | } [INFO] [stdout] | ^ unexpected token [INFO] [stdout] | [INFO] [stdout] help: you might have meant to end the type parameters here [INFO] [stdout] | [INFO] [stdout] 20 | pub source: &Vec>, [INFO] [stdout] | + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0106]: missing lifetime specifier [INFO] [stdout] --> src/lib.rs:15:22 [INFO] [stdout] | [INFO] [stdout] 15 | pub destination: &Vec>, [INFO] [stdout] | ^ expected named lifetime parameter [INFO] [stdout] | [INFO] [stdout] help: consider introducing a named lifetime parameter [INFO] [stdout] | [INFO] [stdout] 13 ~ pub struct Producer<'a> { [INFO] [stdout] 14 | pub name: String, [INFO] [stdout] 15 ~ pub destination: &'a Vec>, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0261]: use of undeclared lifetime name `'a` [INFO] [stdout] --> src/lib.rs:15:35 [INFO] [stdout] | [INFO] [stdout] 15 | pub destination: &Vec>, [INFO] [stdout] | ^^ undeclared lifetime [INFO] [stdout] | [INFO] [stdout] help: consider introducing lifetime `'a` here [INFO] [stdout] | [INFO] [stdout] 13 | pub struct Producer<'a> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0261]: use of undeclared lifetime name `'a` [INFO] [stdout] --> src/lib.rs:27:25 [INFO] [stdout] | [INFO] [stdout] 27 | buffer: Vec> [INFO] [stdout] | ^^ undeclared lifetime [INFO] [stdout] | [INFO] [stdout] help: consider introducing lifetime `'a` here [INFO] [stdout] | [INFO] [stdout] 23 | pub struct Transport<'a> { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0261]: use of undeclared lifetime name `'a` [INFO] [stdout] --> src/lib.rs:36:45 [INFO] [stdout] | [INFO] [stdout] 36 | pub fn produce(&self, message: &Message<'a>) { [INFO] [stdout] | ^^ undeclared lifetime [INFO] [stdout] | [INFO] [stdout] help: consider introducing lifetime `'a` here [INFO] [stdout] | [INFO] [stdout] 36 | pub fn produce<'a>(&self, message: &Message<'a>) { [INFO] [stdout] | ++++ [INFO] [stdout] help: consider introducing lifetime `'a` here [INFO] [stdout] | [INFO] [stdout] 30 | impl<'a> Producer { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0261]: use of undeclared lifetime name `'a` [INFO] [stdout] --> src/lib.rs:56:51 [INFO] [stdout] | [INFO] [stdout] 56 | pub fn set_source(&self, source: &Vec>) { [INFO] [stdout] | ^^ undeclared lifetime [INFO] [stdout] | [INFO] [stdout] help: consider introducing lifetime `'a` here [INFO] [stdout] | [INFO] [stdout] 56 | pub fn set_source<'a>(&self, source: &Vec>) { [INFO] [stdout] | ++++ [INFO] [stdout] help: consider introducing lifetime `'a` here [INFO] [stdout] | [INFO] [stdout] 45 | impl<'a> Consumer { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0261]: use of undeclared lifetime name `'a` [INFO] [stdout] --> src/lib.rs:64:33 [INFO] [stdout] | [INFO] [stdout] 64 | let buffer: Vec> = Vec::new(); [INFO] [stdout] | ^^ undeclared lifetime [INFO] [stdout] | [INFO] [stdout] help: consider introducing lifetime `'a` here [INFO] [stdout] | [INFO] [stdout] 63 | pub fn build<'a>(name: String, producer: Producer, consumer: Consumer) -> Result { [INFO] [stdout] | ++++ [INFO] [stdout] help: consider introducing lifetime `'a` here [INFO] [stdout] | [INFO] [stdout] 61 | impl<'a> Transport { [INFO] [stdout] | ++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type parameter `a` should have an upper camel case name [INFO] [stdout] --> src/lib.rs:18:23 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct Consumer <`a> { [INFO] [stdout] | ^ help: convert the identifier to upper camel case: `A` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(non_camel_case_types)]` (part of `#[warn(nonstandard_style)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0107]: missing generics for struct `Consumer` [INFO] [stdout] --> src/lib.rs:26:19 [INFO] [stdout] | [INFO] [stdout] 26 | pub consumer: Consumer, [INFO] [stdout] | ^^^^^^^^ expected 1 generic argument [INFO] [stdout] | [INFO] [stdout] note: struct defined here, with 1 generic parameter: `a` [INFO] [stdout] --> src/lib.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct Consumer <`a> { [INFO] [stdout] | ^^^^^^^^ - [INFO] [stdout] help: add missing generic argument [INFO] [stdout] | [INFO] [stdout] 26 | pub consumer: Consumer, [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0392]: type parameter `a` is never used [INFO] [stdout] --> src/lib.rs:18:23 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct Consumer <`a> { [INFO] [stdout] | ^ unused type parameter [INFO] [stdout] | [INFO] [stdout] = help: consider removing `a`, referring to it in a field, or using a marker such as `PhantomData` [INFO] [stdout] = help: if you intended `a` to be a const parameter, use `const a: /* Type */` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0107]: missing generics for struct `Consumer` [INFO] [stdout] --> src/lib.rs:45:6 [INFO] [stdout] | [INFO] [stdout] 45 | impl Consumer { [INFO] [stdout] | ^^^^^^^^ expected 1 generic argument [INFO] [stdout] | [INFO] [stdout] note: struct defined here, with 1 generic parameter: `a` [INFO] [stdout] --> src/lib.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct Consumer <`a> { [INFO] [stdout] | ^^^^^^^^ - [INFO] [stdout] help: add missing generic argument [INFO] [stdout] | [INFO] [stdout] 45 | impl Consumer { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0107]: missing generics for struct `Consumer` [INFO] [stdout] --> src/lib.rs:47:65 [INFO] [stdout] | [INFO] [stdout] 47 | pub fn build(name: String, source: &Vec) -> Result { [INFO] [stdout] | ^^^^^^^^ expected 1 generic argument [INFO] [stdout] | [INFO] [stdout] note: struct defined here, with 1 generic parameter: `a` [INFO] [stdout] --> src/lib.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct Consumer <`a> { [INFO] [stdout] | ^^^^^^^^ - [INFO] [stdout] help: add missing generic argument [INFO] [stdout] | [INFO] [stdout] 47 | pub fn build(name: String, source: &Vec) -> Result, &'static str> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0107]: missing generics for struct `Consumer` [INFO] [stdout] --> src/lib.rs:63:62 [INFO] [stdout] | [INFO] [stdout] 63 | pub fn build(name: String, producer: Producer, consumer: Consumer) -> Result { [INFO] [stdout] | ^^^^^^^^ expected 1 generic argument [INFO] [stdout] | [INFO] [stdout] note: struct defined here, with 1 generic parameter: `a` [INFO] [stdout] --> src/lib.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct Consumer <`a> { [INFO] [stdout] | ^^^^^^^^ - [INFO] [stdout] help: add missing generic argument [INFO] [stdout] | [INFO] [stdout] 63 | pub fn build(name: String, producer: Producer, consumer: Consumer) -> Result { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0107]: missing generics for struct `Consumer` [INFO] [stdout] --> src/lib.rs:70:42 [INFO] [stdout] | [INFO] [stdout] 70 | pub fn get_consumer(&self) -> Option { [INFO] [stdout] | ^^^^^^^^ expected 1 generic argument [INFO] [stdout] | [INFO] [stdout] note: struct defined here, with 1 generic parameter: `a` [INFO] [stdout] --> src/lib.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | pub struct Consumer <`a> { [INFO] [stdout] | ^^^^^^^^ - [INFO] [stdout] help: add missing generic argument [INFO] [stdout] | [INFO] [stdout] 70 | pub fn get_consumer(&self) -> Option> { [INFO] [stdout] | +++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0507]: cannot move out of `self.producer` which is behind a shared reference [INFO] [stdout] --> src/lib.rs:75:14 [INFO] [stdout] | [INFO] [stdout] 75 | Some(self.producer) [INFO] [stdout] | ^^^^^^^^^^^^^ move occurs because `self.producer` has type `Producer`, which does not implement the `Copy` trait [INFO] [stdout] | [INFO] [stdout] note: if `Producer` implemented `Clone`, you could clone the value [INFO] [stdout] --> src/lib.rs:13:1 [INFO] [stdout] | [INFO] [stdout] 13 | pub struct Producer { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ consider implementing `Clone` for this type [INFO] [stdout] ... [INFO] [stdout] 75 | Some(self.producer) [INFO] [stdout] | ------------- you could clone this value [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0106, E0107, E0261, E0392, E0507. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0106`. [INFO] [stdout] [INFO] [stderr] error: could not compile `messenger` (lib) due to 15 previous errors; 1 warning emitted [INFO] running `Command { std: "docker" "inspect" "5fd517f36c54c1236771659fdb677600fe7b53f0bab0f9b629ffc78813b9b7ad", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "5fd517f36c54c1236771659fdb677600fe7b53f0bab0f9b629ffc78813b9b7ad", kill_on_drop: false }` [INFO] [stdout] 5fd517f36c54c1236771659fdb677600fe7b53f0bab0f9b629ffc78813b9b7ad