[INFO] fetching crate soundchange 0.0.8...
[INFO] testing soundchange-0.0.8 against try#c2e32f1c9652b13ed99608599c1e855462f421f3 for pr-146098-8
[INFO] extracting crate soundchange 0.0.8 into /workspace/builds/worker-7-tc2/source
[INFO] started tweaking crates.io crate soundchange 0.0.8
[INFO] finished tweaking crates.io crate soundchange 0.0.8
[INFO] tweaked toml for crates.io crate soundchange 0.0.8 written to /workspace/builds/worker-7-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate soundchange 0.0.8 on toolchain c2e32f1c9652b13ed99608599c1e855462f421f3
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 1 package to latest compatible version
[INFO] [stderr]       Adding log v0.2.5 (available: v0.4.28)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 7bd80efc214afe1765cc3bbaf4f9bfcde19909eae0205f0195e8fb6d29a5df5a
[INFO] running `Command { std: "docker" "start" "-a" "7bd80efc214afe1765cc3bbaf4f9bfcde19909eae0205f0195e8fb6d29a5df5a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7bd80efc214afe1765cc3bbaf4f9bfcde19909eae0205f0195e8fb6d29a5df5a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7bd80efc214afe1765cc3bbaf4f9bfcde19909eae0205f0195e8fb6d29a5df5a", kill_on_drop: false }`
[INFO] [stdout] 7bd80efc214afe1765cc3bbaf4f9bfcde19909eae0205f0195e8fb6d29a5df5a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+c2e32f1c9652b13ed99608599c1e855462f421f3" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 151d1b0bcab56e1ddd36a677764f8352257d083f0dcf67449050cefbdbdeb109
[INFO] running `Command { std: "docker" "start" "-a" "151d1b0bcab56e1ddd36a677764f8352257d083f0dcf67449050cefbdbdeb109", kill_on_drop: false }`
[INFO] [stderr] warning: no edition set: defaulting to the 2015 edition while the latest is 2024
[INFO] [stderr]    Compiling soundchange v0.0.8 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0432]: unresolved import `std::borrow::IntoCow`
[INFO] [stdout]   --> src/lib.rs:64:24
[INFO] [stdout]    |
[INFO] [stdout] 64 | use std::borrow::{Cow, IntoCow};
[INFO] [stdout]    |                        ^^^^^^^ no `IntoCow` in `borrow`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `std::str::CharRange`
[INFO] [stdout]   --> src/lib.rs:65:5
[INFO] [stdout]    |
[INFO] [stdout] 65 | use std::str::CharRange;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^ no `CharRange` in `str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: patterns aren't allowed in functions without bodies
[INFO] [stdout]    --> src/lib.rs:175:82
[INFO] [stdout]     |
[INFO] [stdout] 175 |     fn search_loop<F>(&mut self, s: &str, preconds: &[Cond], postconds: &[Cond], mut f: F)
[INFO] [stdout]     |                                                                                  ^^^^^ help: remove `mut` from the parameter: `f`
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]     = note: for more information, see issue #35203 <https://github.com/rust-lang/rust/issues/35203>
[INFO] [stdout]     = note: `#[deny(patterns_in_fns_without_body)]` (part of `#[deny(future_incompatible)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: the feature `core` has been stable since 1.6.0 and no longer requires an attribute to enable
[INFO] [stdout]   --> src/lib.rs:62:30
[INFO] [stdout]    |
[INFO] [stdout] 62 | #![feature(unboxed_closures, core, collections)]
[INFO] [stdout]    |                              ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(stable_features)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0635]: unknown feature `collections`
[INFO] [stdout]   --> src/lib.rs:62:36
[INFO] [stdout]    |
[INFO] [stdout] 62 | #![feature(unboxed_closures, core, collections)]
[INFO] [stdout]    |                                    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:67:48
[INFO] [stdout]    |
[INFO] [stdout] 67 | #[derive(Copy)] pub struct CharOf<'a>(pub &'a (Fn(Option<char>) -> bool + 'a));
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 67 | #[derive(Copy)] pub struct CharOf<'a>(pub &'a (dyn Fn(Option<char>) -> bool + 'a));
[INFO] [stdout]    |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:68:47
[INFO] [stdout]    |
[INFO] [stdout] 68 | #[derive(Copy)] pub struct StrOf<'a>(pub &'a (Fn(&str) -> Option<&str> + 'a));
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 68 | #[derive(Copy)] pub struct StrOf<'a>(pub &'a (dyn Fn(&str) -> Option<&str> + 'a));
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:69:48
[INFO] [stdout]    |
[INFO] [stdout] 69 | #[derive(Copy)] pub struct CharTo<'a>(pub &'a (Fn(char) -> char + 'a));
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 69 | #[derive(Copy)] pub struct CharTo<'a>(pub &'a (dyn Fn(char) -> char + 'a));
[INFO] [stdout]    |                                                +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:70:47
[INFO] [stdout]    |
[INFO] [stdout] 70 | #[derive(Copy)] pub struct StrTo<'a>(pub &'a (Fn(&str, &mut String) + 'a));
[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/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] help: if this is a dyn-compatible trait, use `dyn`
[INFO] [stdout]    |
[INFO] [stdout] 70 | #[derive(Copy)] pub struct StrTo<'a>(pub &'a (dyn Fn(&str, &mut String) + 'a));
[INFO] [stdout]    |                                               +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CharOf<'a>: Clone` is not satisfied
[INFO] [stdout]   --> src/lib.rs:67:10
[INFO] [stdout]    |
[INFO] [stdout] 67 | #[derive(Copy)] pub struct CharOf<'a>(pub &'a (Fn(Option<char>) -> bool + 'a));
[INFO] [stdout]    |          ^^^^ the trait `Clone` is not implemented for `CharOf<'a>`
[INFO] [stdout]    |
[INFO] [stdout] note: required by a bound in `Copy`
[INFO] [stdout]   --> /rustc/c2e32f1c9652b13ed99608599c1e855462f421f3/library/core/src/marker.rs:465:0
[INFO] [stdout] help: consider annotating `CharOf<'a>` with `#[derive(Clone)]`
[INFO] [stdout]    |
[INFO] [stdout] 67 | #[derive(Copy)] #[derive(Clone)]
[INFO] [stdout]    |                 ++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `StrOf<'a>: Clone` is not satisfied
[INFO] [stdout]   --> src/lib.rs:68:10
[INFO] [stdout]    |
[INFO] [stdout] 68 | #[derive(Copy)] pub struct StrOf<'a>(pub &'a (Fn(&str) -> Option<&str> + 'a));
[INFO] [stdout]    |          ^^^^ the trait `Clone` is not implemented for `StrOf<'a>`
[INFO] [stdout]    |
[INFO] [stdout] note: required by a bound in `Copy`
[INFO] [stdout]   --> /rustc/c2e32f1c9652b13ed99608599c1e855462f421f3/library/core/src/marker.rs:465:0
[INFO] [stdout] help: consider annotating `StrOf<'a>` with `#[derive(Clone)]`
[INFO] [stdout]    |
[INFO] [stdout] 68 | #[derive(Copy)] #[derive(Clone)]
[INFO] [stdout]    |                 ++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `CharTo<'a>: Clone` is not satisfied
[INFO] [stdout]   --> src/lib.rs:69:10
[INFO] [stdout]    |
[INFO] [stdout] 69 | #[derive(Copy)] pub struct CharTo<'a>(pub &'a (Fn(char) -> char + 'a));
[INFO] [stdout]    |          ^^^^ the trait `Clone` is not implemented for `CharTo<'a>`
[INFO] [stdout]    |
[INFO] [stdout] note: required by a bound in `Copy`
[INFO] [stdout]   --> /rustc/c2e32f1c9652b13ed99608599c1e855462f421f3/library/core/src/marker.rs:465:0
[INFO] [stdout] help: consider annotating `CharTo<'a>` with `#[derive(Clone)]`
[INFO] [stdout]    |
[INFO] [stdout] 69 | #[derive(Copy)] #[derive(Clone)]
[INFO] [stdout]    |                 ++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `StrTo<'a>: Clone` is not satisfied
[INFO] [stdout]   --> src/lib.rs:70:10
[INFO] [stdout]    |
[INFO] [stdout] 70 | #[derive(Copy)] pub struct StrTo<'a>(pub &'a (Fn(&str, &mut String) + 'a));
[INFO] [stdout]    |          ^^^^ the trait `Clone` is not implemented for `StrTo<'a>`
[INFO] [stdout]    |
[INFO] [stdout] note: required by a bound in `Copy`
[INFO] [stdout]   --> /rustc/c2e32f1c9652b13ed99608599c1e855462f421f3/library/core/src/marker.rs:465:0
[INFO] [stdout] help: consider annotating `StrTo<'a>` with `#[derive(Clone)]`
[INFO] [stdout]    |
[INFO] [stdout] 70 | #[derive(Copy)] #[derive(Clone)]
[INFO] [stdout]    |                 ++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Cond<'a>: Clone` is not satisfied
[INFO] [stdout]   --> src/lib.rs:72:10
[INFO] [stdout]    |
[INFO] [stdout] 72 | #[derive(Copy)]
[INFO] [stdout]    |          ^^^^ unsatisfied trait bound
[INFO] [stdout]    |
[INFO] [stdout] help: the trait `Clone` is not implemented for `Cond<'a>`
[INFO] [stdout]   --> src/lib.rs:73:1
[INFO] [stdout]    |
[INFO] [stdout] 73 | pub enum Cond<'a> {
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `Copy`
[INFO] [stdout]   --> /rustc/c2e32f1c9652b13ed99608599c1e855462f421f3/library/core/src/marker.rs:465:0
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Transform<'a>: Clone` is not satisfied
[INFO] [stdout]    --> src/lib.rs:261:10
[INFO] [stdout]     |
[INFO] [stdout] 261 | #[derive(Copy)]
[INFO] [stdout]     |          ^^^^ unsatisfied trait bound
[INFO] [stdout]     |
[INFO] [stdout] help: the trait `Clone` is not implemented for `Transform<'a>`
[INFO] [stdout]    --> src/lib.rs:262:1
[INFO] [stdout]     |
[INFO] [stdout] 262 | pub enum Transform<'a> {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: required by a bound in `Copy`
[INFO] [stdout]    --> /rustc/c2e32f1c9652b13ed99608599c1e855462f421f3/library/core/src/marker.rs:465:0
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `char_range_at_reverse` found for reference `&'b str` in the current scope
[INFO] [stdout]   --> src/lib.rs:85:48
[INFO] [stdout]    |
[INFO] [stdout] 85 |                 let CharRange { ch, next } = s.char_range_at_reverse(s.len());
[INFO] [stdout]    |                                                ^^^^^^^^^^^^^^^^^^^^^ method not found in `&'b str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `char_range_at_reverse` found for reference `&'b str` in the current scope
[INFO] [stdout]   --> src/lib.rs:92:52
[INFO] [stdout]    |
[INFO] [stdout] 92 |                     let CharRange { ch, next } = s.char_range_at_reverse(s.len());
[INFO] [stdout]    |                                                    ^^^^^^^^^^^^^^^^^^^^^ method not found in `&'b str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `char_range_at` found for reference `&'b str` in the current scope
[INFO] [stdout]    --> src/lib.rs:106:48
[INFO] [stdout]     |
[INFO] [stdout] 106 |                 let CharRange { ch, next } = s.char_range_at(0);
[INFO] [stdout]     |                                                ^^^^^^^^^^^^^ method not found in `&'b str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `char_range_at` found for reference `&'b str` in the current scope
[INFO] [stdout]    --> src/lib.rs:113:52
[INFO] [stdout]     |
[INFO] [stdout] 113 |                     let CharRange { ch, next } = s.char_range_at(0);
[INFO] [stdout]     |                                                    ^^^^^^^^^^^^^ method not found in `&'b str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `into_cow` found for mutable reference `&mut &'a str` in the current scope
[INFO] [stdout]    --> src/lib.rs:183:39
[INFO] [stdout]     |
[INFO] [stdout] 183 |         let mut search: Cow<_> = self.into_cow();
[INFO] [stdout]     |                                       ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `into` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 183 -         let mut search: Cow<_> = self.into_cow();
[INFO] [stdout] 183 +         let mut search: Cow<_> = self.into();
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `init` found for reference `&[Cond<'_>]` in the current scope
[INFO] [stdout]    --> src/lib.rs:197:33
[INFO] [stdout]     |
[INFO] [stdout] 197 |             preconds = preconds.init();
[INFO] [stdout]     |                                 ^^^^ method not found in `&[Cond<'_>]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `tail` found for reference `&[Cond<'_>]` in the current scope
[INFO] [stdout]    --> src/lib.rs:207:35
[INFO] [stdout]     |
[INFO] [stdout] 207 |             postconds = postconds.tail();
[INFO] [stdout]     |                                   ^^^^ method not found in `&[Cond<'_>]`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `char_range_at` found for reference `&str` in the current scope
[INFO] [stdout]    --> src/lib.rs:230:23
[INFO] [stdout]     |
[INFO] [stdout] 230 |             start = s.char_range_at(pos).next;
[INFO] [stdout]     |                       ^^^^^^^^^^^^^ method not found in `&str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `subslice_offset` found for reference `&'a str` in the current scope
[INFO] [stdout]    --> src/lib.rs:307:36
[INFO] [stdout]     |
[INFO] [stdout] 307 |             if !found && last == s.subslice_offset(ss) {
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^^^ method not found in `&'a str`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `into_cow` found for type `str` in the current scope
[INFO] [stdout]    --> src/lib.rs:323:33
[INFO] [stdout]     |
[INFO] [stdout] 323 |         Some(last) => s[..last].into_cow(),
[INFO] [stdout]     |                                 ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `into` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 323 -         Some(last) => s[..last].into_cow(),
[INFO] [stdout] 323 +         Some(last) => s[..last].into(),
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `into_cow` found for struct `String` in the current scope
[INFO] [stdout]    --> src/lib.rs:324:21
[INFO] [stdout]     |
[INFO] [stdout] 324 |         None => buf.into_cow()
[INFO] [stdout]     |                     ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: there is a method `into` with a similar name
[INFO] [stdout]     |
[INFO] [stdout] 324 -         None => buf.into_cow()
[INFO] [stdout] 324 +         None => buf.into()
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable library feature `fn_traits`
[INFO] [stdout]    --> src/lib.rs:295:49
[INFO] [stdout]     |
[INFO] [stdout] 295 |                 for c in s.chars() { buf.push(f.call((c,))); }
[INFO] [stdout]     |                                                 ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #29625 <https://github.com/rust-lang/rust/issues/29625> for more information
[INFO] [stdout]     = help: add `#![feature(fn_traits)]` to the crate attributes to enable
[INFO] [stdout]     = note: this compiler was built on 2025-11-07; consider upgrading it if it is out of date
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0658]: use of unstable library feature `fn_traits`
[INFO] [stdout]    --> src/lib.rs:298:49
[INFO] [stdout]     |
[INFO] [stdout] 298 |             Transform::StrTo(StrTo(ref f)) => f.call((s, buf)),
[INFO] [stdout]     |                                                 ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: see issue #29625 <https://github.com/rust-lang/rust/issues/29625> for more information
[INFO] [stdout]     = help: add `#![feature(fn_traits)]` to the crate attributes to enable
[INFO] [stdout]     = note: this compiler was built on 2025-11-07; consider upgrading it if it is out of date
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0277, E0432, E0599, E0635, E0658.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0277`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `soundchange` (lib) due to 23 previous errors; 5 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "151d1b0bcab56e1ddd36a677764f8352257d083f0dcf67449050cefbdbdeb109", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "151d1b0bcab56e1ddd36a677764f8352257d083f0dcf67449050cefbdbdeb109", kill_on_drop: false }`
[INFO] [stdout] 151d1b0bcab56e1ddd36a677764f8352257d083f0dcf67449050cefbdbdeb109
