[INFO] fetching crate oco 0.1.1...
[INFO] testing oco-0.1.1 against beta-2026-04-21 for beta-1.96-2
[INFO] extracting crate oco 0.1.1 into /workspace/builds/worker-0-tc2/source
[INFO] started tweaking crates.io crate oco 0.1.1
[INFO] finished tweaking crates.io crate oco 0.1.1
[INFO] tweaked toml for crates.io crate oco 0.1.1 written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate oco 0.1.1 on toolchain beta-2026-04-21
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+beta-2026-04-21" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate oco 0.1.1 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" "+beta-2026-04-21" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 0e785984f9f0d04d1cea7fee528b2ba211db47687038cf66bec40ac306dc5a1e
[INFO] running `Command { std: "docker" "start" "-a" "0e785984f9f0d04d1cea7fee528b2ba211db47687038cf66bec40ac306dc5a1e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0e785984f9f0d04d1cea7fee528b2ba211db47687038cf66bec40ac306dc5a1e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0e785984f9f0d04d1cea7fee528b2ba211db47687038cf66bec40ac306dc5a1e", kill_on_drop: false }`
[INFO] [stdout] 0e785984f9f0d04d1cea7fee528b2ba211db47687038cf66bec40ac306dc5a1e
[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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 129ec150bc2d481bd2cebb462af9d1ee0a2e79bc1676f9d432679fc84480fffe
[INFO] running `Command { std: "docker" "start" "-a" "129ec150bc2d481bd2cebb462af9d1ee0a2e79bc1676f9d432679fc84480fffe", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.66
[INFO] [stderr]    Compiling unicode-ident v1.0.11
[INFO] [stderr]    Compiling once_cell v1.18.0
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling rustix v0.38.4
[INFO] [stderr]    Compiling bitflags v2.3.3
[INFO] [stderr]    Compiling linux-raw-sys v0.4.3
[INFO] [stderr]    Compiling thiserror v1.0.44
[INFO] [stderr]    Compiling utf8parse v0.2.1
[INFO] [stderr]    Compiling libc v0.2.147
[INFO] [stderr]    Compiling anstyle v1.0.1
[INFO] [stderr]    Compiling colorchoice v1.0.0
[INFO] [stderr]    Compiling ucd-trie v0.1.6
[INFO] [stderr]    Compiling anstyle-query v1.0.0
[INFO] [stderr]    Compiling sharded-slab v0.1.4
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling cc v1.0.79
[INFO] [stderr]    Compiling pin-project-lite v0.2.10
[INFO] [stderr]    Compiling anstyle-parse v0.2.1
[INFO] [stderr]    Compiling clap_lex v0.5.0
[INFO] [stderr]    Compiling serde v1.0.174
[INFO] [stderr]    Compiling adler v1.0.2
[INFO] [stderr]    Compiling strsim v0.10.0
[INFO] [stderr]    Compiling gimli v0.27.3
[INFO] [stderr]    Compiling tracing-core v0.1.31
[INFO] [stderr]    Compiling thread_local v1.1.7
[INFO] [stderr]    Compiling eyre v0.6.8
[INFO] [stderr]    Compiling serde_json v1.0.103
[INFO] [stderr]    Compiling miniz_oxide v0.7.1
[INFO] [stderr]    Compiling rustc-demangle v0.1.23
[INFO] [stderr]    Compiling owo-colors v3.5.0
[INFO] [stderr]    Compiling aho-corasick v1.0.2
[INFO] [stderr]    Compiling object v0.31.1
[INFO] [stderr]    Compiling regex-syntax v0.7.4
[INFO] [stderr]    Compiling tracing-subscriber v0.3.17
[INFO] [stderr]    Compiling tracing v0.1.37
[INFO] [stderr]    Compiling serde_derive v1.0.174
[INFO] [stderr]    Compiling quote v1.0.31
[INFO] [stderr]    Compiling indenter v0.3.3
[INFO] [stderr]    Compiling ryu v1.0.15
[INFO] [stderr]    Compiling either v1.8.1
[INFO] [stderr]    Compiling itoa v1.0.9
[INFO] [stderr]    Compiling backtrace v0.3.68
[INFO] [stderr]    Compiling tap v1.0.1
[INFO] [stderr]    Compiling syn v2.0.27
[INFO] [stderr]    Compiling is-terminal v0.4.9
[INFO] [stderr]    Compiling shlex v1.1.0
[INFO] [stderr]    Compiling anstream v0.3.2
[INFO] [stderr]    Compiling itertools v0.11.0
[INFO] [stderr]    Compiling clap_builder v4.3.17
[INFO] [stderr]    Compiling tracing-error v0.2.0
[INFO] [stderr]    Compiling addr2line v0.20.0
[INFO] [stderr]    Compiling color-spantrace v0.2.0
[INFO] [stderr]    Compiling regex-automata v0.3.3
[INFO] [stderr]    Compiling thiserror-impl v1.0.44
[INFO] [stderr]    Compiling clap_derive v4.3.12
[INFO] [stderr]    Compiling enum_dispatch v0.3.12
[INFO] [stderr]    Compiling derive-new v0.5.9
[INFO] [stderr]    Compiling derivative v2.2.0
[INFO] [stderr]    Compiling pest v2.7.1
[INFO] [stderr]    Compiling color-eyre v0.6.2
[INFO] [stderr]    Compiling clap v4.3.17
[INFO] [stderr]    Compiling clio v0.2.7
[INFO] [stderr]    Compiling pest_meta v2.7.1
[INFO] [stderr]    Compiling regex v1.9.1
[INFO] [stderr]    Compiling pest_generator v2.7.1
[INFO] [stderr]    Compiling pest_derive v2.7.1
[INFO] [stderr]    Compiling oco v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/cli/deserialize_from_args.rs:279:28
[INFO] [stdout]     |
[INFO] [stdout] 279 |     fn deserialize_enum<V>(mut self, name: &'static str, variants: &'static [&'static str], visitor: V)
[INFO] [stdout]     |                            ----^^^^
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/cli/deserialize_from_args.rs:287:34
[INFO] [stdout]     |
[INFO] [stdout] 287 |     fn deserialize_identifier<V>(mut self, visitor: V) -> Result<V::Value> where V: Visitor<'de> {
[INFO] [stdout]     |                                  ----^^^^
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `generate_vec` is never used
[INFO] [stdout]   --> src/opts/grammar/mod.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub trait Grammar : Clone {
[INFO] [stdout]    |           ------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 16 |     fn generate_vec(&self, args: ParsedArgs) -> Result<Vec<String>> {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `SplitExt` is never used
[INFO] [stdout]  --> src/util/str.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub trait SplitExt: Sized {
[INFO] [stdout]   |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `push_and_borrow` is never used
[INFO] [stdout]  --> src/util/vec.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub trait PushExt<T> {
[INFO] [stdout]   |           ------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 4 |     fn push_and_borrow(&mut self, value: T) -> &mut T;
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ResultIter` is never used
[INFO] [stdout]  --> src/util/iter.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub trait ResultIter<I, T, E>
[INFO] [stdout]   |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AndThen` is never constructed
[INFO] [stdout]   --> src/util/iter.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct AndThen<I, F> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `expect_rules` is never used
[INFO] [stdout]   --> src/commands/parser_exts.rs:65:8
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub trait PairsExt<'i, R> {
[INFO] [stdout]    |           -------- method in this trait
[INFO] [stdout] 64 |     fn expect_rule(&mut self, rule: R) -> Result<Pair<'i, R>>;
[INFO] [stdout] 65 |     fn expect_rules(&mut self, rules: &[R]) -> Result<Pair<'i, R>>;
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_rules` is never used
[INFO] [stdout]    --> src/commands/parser_exts.rs:104:4
[INFO] [stdout]     |
[INFO] [stdout] 104 | fn format_rules<R: RuleType>(rules: &[R]) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]  --> src/util/shell.rs:3:22
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn quote(in_str: &str) -> Cow<str> {
[INFO] [stdout]   |                      ^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]   |                      |
[INFO] [stdout]   |                      the lifetime is elided here
[INFO] [stdout]   |
[INFO] [stdout]   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]   = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn quote(in_str: &str) -> Cow<'_, str> {
[INFO] [stdout]   |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 34.63s
[INFO] running `Command { std: "docker" "inspect" "129ec150bc2d481bd2cebb462af9d1ee0a2e79bc1676f9d432679fc84480fffe", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "129ec150bc2d481bd2cebb462af9d1ee0a2e79bc1676f9d432679fc84480fffe", kill_on_drop: false }`
[INFO] [stdout] 129ec150bc2d481bd2cebb462af9d1ee0a2e79bc1676f9d432679fc84480fffe
[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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3b0fa8672d8818515359631a4e08b85615081f9c0c6ff766fa8f890aeb0182cc
[INFO] running `Command { std: "docker" "start" "-a" "3b0fa8672d8818515359631a4e08b85615081f9c0c6ff766fa8f890aeb0182cc", kill_on_drop: false }`
[INFO] [stderr]    Compiling regex-automata v0.1.10
[INFO] [stderr]    Compiling paste v1.0.14
[INFO] [stderr]    Compiling unicode-segmentation v1.10.1
[INFO] [stderr]    Compiling console v0.15.7
[INFO] [stderr]    Compiling ctor v0.2.4
[INFO] [stderr]    Compiling bstr v0.2.17
[INFO] [stderr]    Compiling similar v2.2.1
[INFO] [stderr]    Compiling similar-asserts v1.4.2
[INFO] [stderr]    Compiling oco v0.1.1 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition value: `used_linker`
[INFO] [stdout]  --> src/util/testing/mod.rs:8:1
[INFO] [stdout]   |
[INFO] [stdout] 8 | #[ctor::ctor]
[INFO] [stdout]   | ^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: no expected values for `feature`
[INFO] [stdout]   = note: using a cfg inside a attribute macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stdout]   = help: try referring to `ctor::ctor` crate for guidance on how handle this unexpected cfg
[INFO] [stdout]   = help: the attribute macro `ctor::ctor` may come from an old version of the `ctor` crate, try updating your dependency with `cargo update -p ctor`
[INFO] [stdout]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout]   = note: this warning originates in the attribute macro `ctor::ctor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/cli/deserialize_from_args.rs:279:28
[INFO] [stdout]     |
[INFO] [stdout] 279 |     fn deserialize_enum<V>(mut self, name: &'static str, variants: &'static [&'static str], visitor: V)
[INFO] [stdout]     |                            ----^^^^
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/cli/deserialize_from_args.rs:287:34
[INFO] [stdout]     |
[INFO] [stdout] 287 |     fn deserialize_identifier<V>(mut self, visitor: V) -> Result<V::Value> where V: Visitor<'de> {
[INFO] [stdout]     |                                  ----^^^^
[INFO] [stdout]     |                                  |
[INFO] [stdout]     |                                  help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `SplitExt` is never used
[INFO] [stdout]  --> src/util/str.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub trait SplitExt: Sized {
[INFO] [stdout]   |           ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `push_and_borrow` is never used
[INFO] [stdout]  --> src/util/vec.rs:4:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub trait PushExt<T> {
[INFO] [stdout]   |           ------- method in this trait
[INFO] [stdout] ...
[INFO] [stdout] 4 |     fn push_and_borrow(&mut self, value: T) -> &mut T;
[INFO] [stdout]   |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `ResultIter` is never used
[INFO] [stdout]  --> src/util/iter.rs:1:11
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub trait ResultIter<I, T, E>
[INFO] [stdout]   |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AndThen` is never constructed
[INFO] [stdout]   --> src/util/iter.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct AndThen<I, F> {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `expect_rules` is never used
[INFO] [stdout]   --> src/commands/parser_exts.rs:65:8
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub trait PairsExt<'i, R> {
[INFO] [stdout]    |           -------- method in this trait
[INFO] [stdout] 64 |     fn expect_rule(&mut self, rule: R) -> Result<Pair<'i, R>>;
[INFO] [stdout] 65 |     fn expect_rules(&mut self, rules: &[R]) -> Result<Pair<'i, R>>;
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `format_rules` is never used
[INFO] [stdout]    --> src/commands/parser_exts.rs:104:4
[INFO] [stdout]     |
[INFO] [stdout] 104 | fn format_rules<R: RuleType>(rules: &[R]) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]  --> src/util/shell.rs:3:22
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn quote(in_str: &str) -> Cow<str> {
[INFO] [stdout]   |                      ^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]   |                      |
[INFO] [stdout]   |                      the lifetime is elided here
[INFO] [stdout]   |
[INFO] [stdout]   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]   = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn quote(in_str: &str) -> Cow<'_, str> {
[INFO] [stdout]   |                                   +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 4.09s
[INFO] running `Command { std: "docker" "inspect" "3b0fa8672d8818515359631a4e08b85615081f9c0c6ff766fa8f890aeb0182cc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3b0fa8672d8818515359631a4e08b85615081f9c0c6ff766fa8f890aeb0182cc", kill_on_drop: false }`
[INFO] [stdout] 3b0fa8672d8818515359631a4e08b85615081f9c0c6ff766fa8f890aeb0182cc
[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=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-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:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2026-04-21" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] c689ec649d33c0aa2412b71d1342b2d1793b3a67ca92ada6c8ef2abe211315aa
[INFO] running `Command { std: "docker" "start" "-a" "c689ec649d33c0aa2412b71d1342b2d1793b3a67ca92ada6c8ef2abe211315aa", kill_on_drop: false }`
[INFO] [stderr] warning: unexpected `cfg` condition value: `used_linker`
[INFO] [stderr]  --> src/util/testing/mod.rs:8:1
[INFO] [stderr]   |
[INFO] [stderr] 8 | #[ctor::ctor]
[INFO] [stderr]   | ^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: no expected values for `feature`
[INFO] [stderr]   = note: using a cfg inside a attribute macro will use the cfgs from the destination crate and not the ones from the defining crate
[INFO] [stderr]   = help: try referring to `ctor::ctor` crate for guidance on how handle this unexpected cfg
[INFO] [stderr]   = help: the attribute macro `ctor::ctor` may come from an old version of the `ctor` crate, try updating your dependency with `cargo update -p ctor`
[INFO] [stderr]   = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stderr]   = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stderr]   = note: this warning originates in the attribute macro `ctor::ctor` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/cli/deserialize_from_args.rs:279:28
[INFO] [stderr]     |
[INFO] [stderr] 279 |     fn deserialize_enum<V>(mut self, name: &'static str, variants: &'static [&'static str], visitor: V)
[INFO] [stderr]     |                            ----^^^^
[INFO] [stderr]     |                            |
[INFO] [stderr]     |                            help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/cli/deserialize_from_args.rs:287:34
[INFO] [stderr]     |
[INFO] [stderr] 287 |     fn deserialize_identifier<V>(mut self, visitor: V) -> Result<V::Value> where V: Visitor<'de> {
[INFO] [stderr]     |                                  ----^^^^
[INFO] [stderr]     |                                  |
[INFO] [stderr]     |                                  help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: trait `SplitExt` is never used
[INFO] [stderr]  --> src/util/str.rs:1:11
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub trait SplitExt: Sized {
[INFO] [stderr]   |           ^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: method `push_and_borrow` is never used
[INFO] [stderr]  --> src/util/vec.rs:4:8
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub trait PushExt<T> {
[INFO] [stderr]   |           ------- method in this trait
[INFO] [stderr] ...
[INFO] [stderr] 4 |     fn push_and_borrow(&mut self, value: T) -> &mut T;
[INFO] [stderr]   |        ^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `ResultIter` is never used
[INFO] [stderr]  --> src/util/iter.rs:1:11
[INFO] [stderr]   |
[INFO] [stderr] 1 | pub trait ResultIter<I, T, E>
[INFO] [stderr]   |           ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `AndThen` is never constructed
[INFO] [stderr]   --> src/util/iter.rs:17:12
[INFO] [stderr]    |
[INFO] [stderr] 17 | pub struct AndThen<I, F> {
[INFO] [stderr]    |            ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: method `expect_rules` is never used
[INFO] [stderr]   --> src/commands/parser_exts.rs:65:8
[INFO] [stderr]    |
[INFO] [stderr] 63 | pub trait PairsExt<'i, R> {
[INFO] [stderr]    |           -------- method in this trait
[INFO] [stderr] 64 |     fn expect_rule(&mut self, rule: R) -> Result<Pair<'i, R>>;
[INFO] [stderr] 65 |     fn expect_rules(&mut self, rules: &[R]) -> Result<Pair<'i, R>>;
[INFO] [stderr]    |        ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `format_rules` is never used
[INFO] [stderr]    --> src/commands/parser_exts.rs:104:4
[INFO] [stderr]     |
[INFO] [stderr] 104 | fn format_rules<R: RuleType>(rules: &[R]) -> String {
[INFO] [stderr]     |    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]  --> src/util/shell.rs:3:22
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub fn quote(in_str: &str) -> Cow<str> {
[INFO] [stderr]   |                      ^^^^     ^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]   |                      |
[INFO] [stderr]   |                      the lifetime is elided here
[INFO] [stderr]   |
[INFO] [stderr]   = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]   = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]   |
[INFO] [stderr] 3 | pub fn quote(in_str: &str) -> Cow<'_, str> {
[INFO] [stderr]   |                                   +++
[INFO] [stderr] 
[INFO] [stderr] warning: `oco` (bin "oco" test) generated 10 warnings (run `cargo fix --bin "oco" -p oco --tests` to apply 3 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.12s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/oco-e2aa2f591b98b81e)
[INFO] [stdout] 
[INFO] [stdout] running 22 tests
[INFO] [stdout] test commands::full::test::parse_mixed_whitespace ... ok
[INFO] [stdout] test commands::full::test::empty_parse_from_empty_args ... ok
[INFO] [stdout] test commands::full::test::parse_mixed_whitespace_from_src ... ok
[INFO] [stdout] test commands::full::test::empty_parse_from_empty_script ... ok
[INFO] [stdout] test commands::full::test::parse_multiple_sets_with_args ... ok
[INFO] [stdout] test commands::full::test::empty_parse_from_empty_script_src ... ok
[INFO] [stdout] test commands::full::test::parse_multiple_sets_with_script ... ok
[INFO] [stdout] test commands::full::test::parse_multiple_sets_with_script_src ... ok
[INFO] [stdout] test commands::full::test::parse_script_with_comments ... ok
[INFO] [stdout] test opts::grammar::gnu::tests::test_generate_not_explicit ... ok
[INFO] [stdout] test commands::full::test::parse_script_with_comments_from_src ... ok
[INFO] [stdout] test opts::grammar::gnu::tests::test_generate_edge_cases ... ok
[INFO] [stdout] test opts::grammar::gnu::tests::test_generate_explicit ... ok
[INFO] [stdout] test opts::grammar::gnu::tests::test_parse_empty_args ... ok
[INFO] [stdout] test opts::grammar::gnu::tests::test_parse_free ... ok
[INFO] [stdout] test opts::grammar::gnu::tests::test_split_kv ... ok
[INFO] [stdout] test opts::grammar::gnu::tests::test_parse_normal ... ok
[INFO] [stdout] test opts::grammar::gnu::tests::test_generate_explicit_with_spaces ... ok
[INFO] [stdout] test opts::grammar::gnu::tests::test_parse_free_edge_cases ... ok
[INFO] [stdout] test opts::grammar::gnu::tests::test_parse_no_grouping ... ok
[INFO] [stdout] test opts::grammar::gnu::tests::test_parse_edge_cases ... ok
[INFO] [stdout] test opts::grammar::gnu::tests::test_forbidden_pos_arg_fails ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 22 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "c689ec649d33c0aa2412b71d1342b2d1793b3a67ca92ada6c8ef2abe211315aa", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c689ec649d33c0aa2412b71d1342b2d1793b3a67ca92ada6c8ef2abe211315aa", kill_on_drop: false }`
[INFO] [stdout] c689ec649d33c0aa2412b71d1342b2d1793b3a67ca92ada6c8ef2abe211315aa
