[INFO] fetching crate fayalite 0.1.0... [INFO] checking fayalite-0.1.0 against try#ccf408f4326a858c00dd845a64a86b16f360a801 for pr-129466-2 [INFO] extracting crate fayalite 0.1.0 into /workspace/builds/worker-4-tc2/source [INFO] validating manifest of crates.io crate fayalite 0.1.0 on toolchain ccf408f4326a858c00dd845a64a86b16f360a801 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate fayalite 0.1.0 [INFO] removed 0 missing examples [INFO] removed 0 missing tests [INFO] finished tweaking crates.io crate fayalite 0.1.0 [INFO] tweaked toml for crates.io crate fayalite 0.1.0 written to /workspace/builds/worker-4-tc2/source/Cargo.toml [INFO] crate crates.io crate fayalite 0.1.0 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" "+ccf408f4326a858c00dd845a64a86b16f360a801" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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" "+ccf408f4326a858c00dd845a64a86b16f360a801" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] b1594fcc370aee4958273bdea4dc50d449094076f63f3c4292ed2ec8a3806737 [INFO] running `Command { std: "docker" "start" "-a" "b1594fcc370aee4958273bdea4dc50d449094076f63f3c4292ed2ec8a3806737", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b1594fcc370aee4958273bdea4dc50d449094076f63f3c4292ed2ec8a3806737", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b1594fcc370aee4958273bdea4dc50d449094076f63f3c4292ed2ec8a3806737", kill_on_drop: false }` [INFO] [stdout] b1594fcc370aee4958273bdea4dc50d449094076f63f3c4292ed2ec8a3806737 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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" "+ccf408f4326a858c00dd845a64a86b16f360a801" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 75c9bed20f3328eab97a9bdfe7bbd41455944b070d7d6aa38184a39036d5d654 [INFO] running `Command { std: "docker" "start" "-a" "75c9bed20f3328eab97a9bdfe7bbd41455944b070d7d6aa38184a39036d5d654", kill_on_drop: false }` [INFO] [stderr] Copying to /tmp/fixit [INFO] [stderr] Running `cargo fix --edition` [INFO] [stderr] Migrating Cargo.toml from 2021 edition to 2024 [INFO] [stderr] Compiling proc-macro2 v1.0.83 [INFO] [stderr] Compiling unicode-ident v1.0.12 [INFO] [stderr] Compiling serde v1.0.202 [INFO] [stderr] Compiling typenum v1.17.0 [INFO] [stderr] Compiling prettyplease v0.2.20 [INFO] [stderr] Compiling serde_json v1.0.117 [INFO] [stderr] Checking once_cell v1.19.0 [INFO] [stderr] Compiling rustix v0.38.31 [INFO] [stderr] Compiling thiserror v1.0.61 [INFO] [stderr] Compiling equivalent v1.0.1 [INFO] [stderr] Compiling hashbrown v0.14.3 [INFO] [stderr] Checking zerocopy v0.7.32 [INFO] [stderr] Compiling linux-raw-sys v0.4.13 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling ahash v0.8.7 [INFO] [stderr] Compiling num-traits v0.2.18 [INFO] [stderr] Compiling num-bigint v0.4.4 [INFO] [stderr] Compiling cfg-if v1.0.0 [INFO] [stderr] Checking allocator-api2 v0.2.16 [INFO] [stderr] Compiling ryu v1.0.17 [INFO] [stderr] Compiling bitflags v2.4.2 [INFO] [stderr] Compiling itoa v1.0.10 [INFO] [stderr] Checking utf8parse v0.2.2 [INFO] [stderr] Compiling fastrand v2.0.1 [INFO] [stderr] Checking anstyle-parse v0.2.4 [INFO] [stderr] Compiling fayalite-proc-macros-impl v0.1.0 [INFO] [stderr] Compiling radium v0.7.0 [INFO] [stderr] Checking is_terminal_polyfill v1.70.0 [INFO] [stderr] Checking anstyle v1.0.7 [INFO] [stderr] Checking anstyle-query v1.1.0 [INFO] [stderr] Checking colorchoice v1.0.1 [INFO] [stderr] Compiling cpufeatures v0.2.12 [INFO] [stderr] Compiling heck v0.5.0 [INFO] [stderr] Compiling eyre v0.6.12 [INFO] [stderr] Checking clap_lex v0.7.1 [INFO] [stderr] Compiling base16ct v0.2.0 [INFO] [stderr] Checking anstream v0.6.14 [INFO] [stderr] Checking tap v1.0.1 [INFO] [stderr] Checking strsim v0.11.1 [INFO] [stderr] Checking wyz v0.5.1 [INFO] [stderr] Checking either v1.13.0 [INFO] [stderr] Compiling quote v1.0.36 [INFO] [stderr] Checking home v0.5.9 [INFO] [stderr] Checking funty v2.0.0 [INFO] [stderr] Checking clap_builder v4.5.9 [INFO] [stderr] Compiling trybuild v1.0.89 [INFO] [stderr] Checking indenter v0.3.3 [INFO] [stderr] Checking termcolor v1.4.1 [INFO] [stderr] Checking glob v0.3.1 [INFO] [stderr] Compiling syn v2.0.66 [INFO] [stderr] Checking indexmap v2.2.6 [INFO] [stderr] Compiling num-integer v0.1.46 [INFO] [stderr] Compiling crypto-common v0.1.6 [INFO] [stderr] Compiling block-buffer v0.10.4 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling sha2 v0.10.8 [INFO] [stderr] Compiling tempfile v3.10.1 [INFO] [stderr] Checking which v6.0.1 [INFO] [stderr] Compiling serde_derive v1.0.202 [INFO] [stderr] Compiling thiserror-impl v1.0.61 [INFO] [stderr] Compiling clap_derive v4.5.8 [INFO] [stderr] Checking clap v4.5.9 [INFO] [stderr] Compiling fayalite-proc-macros v0.1.0 [INFO] [stderr] Checking bitvec v1.0.1 [INFO] [stderr] Checking basic-toml v0.1.8 [INFO] [stderr] Compiling fayalite-visit-gen v0.1.0 [INFO] [stderr] Compiling fayalite v0.1.0 (/tmp/fixit) [INFO] [stderr] Migrating build.rs from 2021 edition to 2024 [INFO] [stderr] Migrating src/lib.rs from 2021 edition to 2024 [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `fayalite` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/expr/ops.rs [INFO] [stderr] * src/firrtl.rs [INFO] [stderr] * src/module.rs [INFO] [stderr] [INFO] [stderr] This likely indicates a bug in either rustc or cargo itself, [INFO] [stderr] and we would appreciate a bug report! You're likely to see [INFO] [stderr] a number of compiler warnings after this message which cargo [INFO] [stderr] attempted to fix but failed. If you could open an issue at [INFO] [stderr] https://github.com/rust-lang/rust/issues [INFO] [stderr] quoting the full output of this command we'd be very appreciative! [INFO] [stderr] Note that you may be able to make some more progress in the near-term [INFO] [stderr] fixing code with the `--broken-code` flag [INFO] [stderr] [INFO] [stderr] The following errors were reported: [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/expr/ops.rs:44:57 [INFO] [stderr] | [INFO] [stderr] 44 | $cache_before_ty:ident: $CacheBeforeTy:ty = $cache_before_ty_expr:expr_2021,)* [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/expr/ops.rs:46:50 [INFO] [stderr] | [INFO] [stderr] 46 | $ty_vis:vis $ty_name:ident: $Ty:ty = $ty_expr:expr_2021, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/expr/ops.rs:48:55 [INFO] [stderr] | [INFO] [stderr] 48 | $cache_after_ty:ident: $CacheAfterTy:ty = $cache_after_ty_expr:expr_2021,)* [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/expr/ops.rs:50:60 [INFO] [stderr] | [INFO] [stderr] 50 | $target_name:ident: Option> = $target_expr:expr_2021,)? [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/expr/ops.rs:1097:33 [INFO] [stderr] | [INFO] [stderr] 1097 | ($name:ident; |$bits:ident| $literal_bits_bool:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/firrtl.rs:2452:25 [INFO] [stderr] | [INFO] [stderr] 2452 | $($field:ident: $value:expr_2021,)* [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/module.rs:229:64 [INFO] [stderr] | [INFO] [stderr] 229 | ($($T_impl:tt)*) $impl_self:ident: $impl_type:ty = $impl_self_expr:expr_2021 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/module.rs:230:71 [INFO] [stderr] | [INFO] [stderr] 230 | $(, ($($T_impls:tt)*) $impls_self:ident: $impls_type:ty = $impls_self_expr:expr_2021)* [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/module.rs:2092:14 [INFO] [stderr] | [INFO] [stderr] 2092 | ($v:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error: aborting due to 9 previous errors [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0658`. [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/value-struct-3a50115e9d.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/value-enum-af6e846221.rs [INFO] [stderr] Original diagnostics will follow. [INFO] [stderr] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/module.rs:539:12 [INFO] [stdout] | [INFO] [stdout] 539 | pub fn gen(&mut self, name: Interned) -> NameId { [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] = note: `--force-warn keyword-idents-2024` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/module.rs:623:14 [INFO] [stdout] | [INFO] [stdout] 623 | .gen(name) [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/module.rs:2217:54 [INFO] [stdout] | [INFO] [stdout] 2217 | ScopedNameId(self.name, self.name_id_gen.gen(name.intern())), [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/module.rs:2244:68 [INFO] [stdout] | [INFO] [stdout] 2244 | let scoped_name = ScopedNameId(self.name, self.name_id_gen.gen(name.intern())); [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/module.rs:2431:67 [INFO] [stdout] | [INFO] [stdout] 2431 | scoped_name: ScopedNameId(self.name, self.name_id_gen.gen(name.intern())), [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/module.rs:2462:68 [INFO] [stdout] | [INFO] [stdout] 2462 | let scoped_name = ScopedNameId(self.name, self.name_id_gen.gen(name.intern())); [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/module/transform/simplify_enums.rs:411:54 [INFO] [stdout] | [INFO] [stdout] 411 | let wire_name = self.name_id_gen.gen( [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/module/transform/simplify_memories.rs:615:41 [INFO] [stdout] | [INFO] [stdout] 615 | let mem_name = self.name_id_gen.gen(Intern::intern_owned(format!( [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/value-struct-3a50115e9d.rs [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/module/transform/simplify_memories.rs:744:26 [INFO] [stdout] | [INFO] [stdout] 744 | .gen(Intern::intern_owned(format!("{mem_name}_{port_name}"))); [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/value-enum-af6e846221.rs [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/expr/ops.rs:44:79 [INFO] [stdout] | [INFO] [stdout] 44 | $cache_before_ty:ident: $CacheBeforeTy:ty = $cache_before_ty_expr:expr,)* [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: `--force-warn edition-2024-expr-fragment-specifier` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 44 | $cache_before_ty:ident: $CacheBeforeTy:ty = $cache_before_ty_expr:expr_2021,)* [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/expr/ops.rs:46:59 [INFO] [stdout] | [INFO] [stdout] 46 | $ty_vis:vis $ty_name:ident: $Ty:ty = $ty_expr:expr, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 46 | $ty_vis:vis $ty_name:ident: $Ty:ty = $ty_expr:expr_2021, [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/expr/ops.rs:48:76 [INFO] [stdout] | [INFO] [stdout] 48 | $cache_after_ty:ident: $CacheAfterTy:ty = $cache_after_ty_expr:expr,)* [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 48 | $cache_after_ty:ident: $CacheAfterTy:ty = $cache_after_ty_expr:expr_2021,)* [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/expr/ops.rs:50:73 [INFO] [stdout] | [INFO] [stdout] 50 | $target_name:ident: Option> = $target_expr:expr,)? [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 50 | $target_name:ident: Option> = $target_expr:expr_2021,)? [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/expr/ops.rs:1097:52 [INFO] [stdout] | [INFO] [stdout] 1097 | ($name:ident; |$bits:ident| $literal_bits_bool:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 1097 | ($name:ident; |$bits:ident| $literal_bits_bool:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/firrtl.rs:2452:32 [INFO] [stdout] | [INFO] [stdout] 2452 | $($field:ident: $value:expr,)* [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 2452 | $($field:ident: $value:expr_2021,)* [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/module.rs:229:80 [INFO] [stdout] | [INFO] [stdout] 229 | ($($T_impl:tt)*) $impl_self:ident: $impl_type:ty = $impl_self_expr:expr [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 229 | ($($T_impl:tt)*) $impl_self:ident: $impl_type:ty = $impl_self_expr:expr_2021 [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/module.rs:230:88 [INFO] [stdout] | [INFO] [stdout] 230 | $(, ($($T_impls:tt)*) $impls_self:ident: $impls_type:ty = $impls_self_expr:expr)* [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 230 | $(, ($($T_impls:tt)*) $impls_self:ident: $impls_type:ty = $impls_self_expr:expr_2021)* [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/module.rs:2092:17 [INFO] [stdout] | [INFO] [stdout] 2092 | ($v:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 2092 | ($v:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/intern.rs:478:20 [INFO] [stdout] | [INFO] [stdout] 478 | if let Some(guard) = C::try_guard(&self.inner) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 496 | forward_fmt_trait!(Debug); [INFO] [stdout] | ------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/intern.rs:480:17 [INFO] [stdout] | [INFO] [stdout] 480 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 496 | forward_fmt_trait!(Debug); [INFO] [stdout] | ------------------------- in this macro invocation [INFO] [stdout] = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] = note: this warning originates in the macro `forward_fmt_trait` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/intern.rs:478:20 [INFO] [stdout] | [INFO] [stdout] 478 | if let Some(guard) = C::try_guard(&self.inner) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 497 | forward_fmt_trait!(Display); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/intern.rs:480:17 [INFO] [stdout] | [INFO] [stdout] 480 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 497 | forward_fmt_trait!(Display); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `forward_fmt_trait` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/intern.rs:478:20 [INFO] [stdout] | [INFO] [stdout] 478 | if let Some(guard) = C::try_guard(&self.inner) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 498 | forward_fmt_trait!(LowerExp); [INFO] [stdout] | ---------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/intern.rs:480:17 [INFO] [stdout] | [INFO] [stdout] 480 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 498 | forward_fmt_trait!(LowerExp); [INFO] [stdout] | ---------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `forward_fmt_trait` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/intern.rs:478:20 [INFO] [stdout] | [INFO] [stdout] 478 | if let Some(guard) = C::try_guard(&self.inner) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 499 | forward_fmt_trait!(LowerHex); [INFO] [stdout] | ---------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/intern.rs:480:17 [INFO] [stdout] | [INFO] [stdout] 480 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 499 | forward_fmt_trait!(LowerHex); [INFO] [stdout] | ---------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `forward_fmt_trait` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/intern.rs:478:20 [INFO] [stdout] | [INFO] [stdout] 478 | if let Some(guard) = C::try_guard(&self.inner) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 500 | forward_fmt_trait!(Octal); [INFO] [stdout] | ------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/intern.rs:480:17 [INFO] [stdout] | [INFO] [stdout] 480 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 500 | forward_fmt_trait!(Octal); [INFO] [stdout] | ------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `forward_fmt_trait` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/intern.rs:478:20 [INFO] [stdout] | [INFO] [stdout] 478 | if let Some(guard) = C::try_guard(&self.inner) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 501 | forward_fmt_trait!(Pointer); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/intern.rs:480:17 [INFO] [stdout] | [INFO] [stdout] 480 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 501 | forward_fmt_trait!(Pointer); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `forward_fmt_trait` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/intern.rs:478:20 [INFO] [stdout] | [INFO] [stdout] 478 | if let Some(guard) = C::try_guard(&self.inner) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 502 | forward_fmt_trait!(UpperExp); [INFO] [stdout] | ---------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/intern.rs:480:17 [INFO] [stdout] | [INFO] [stdout] 480 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 502 | forward_fmt_trait!(UpperExp); [INFO] [stdout] | ---------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `forward_fmt_trait` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/intern.rs:478:20 [INFO] [stdout] | [INFO] [stdout] 478 | if let Some(guard) = C::try_guard(&self.inner) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 503 | forward_fmt_trait!(UpperHex); [INFO] [stdout] | ---------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/intern.rs:480:17 [INFO] [stdout] | [INFO] [stdout] 480 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 503 | forward_fmt_trait!(UpperHex); [INFO] [stdout] | ---------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `forward_fmt_trait` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/memory.rs:743:12 [INFO] [stdout] | [INFO] [stdout] 743 | if let Some(v) = &self.0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/memory.rs:745:9 [INFO] [stdout] | [INFO] [stdout] 745 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 743 ~ match &self.0 { Some(v) => { [INFO] [stdout] 744 | v.fmt(f) [INFO] [stdout] 745 ~ } _ => { [INFO] [stdout] 746 | f.write_str("") [INFO] [stdout] 747 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/module/transform/simplify_enums.rs:307:20 [INFO] [stdout] | [INFO] [stdout] 307 | if let Some(&wire) = self.replacement_mem_ports.get(&mem_port) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^--------------------------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/module/transform/simplify_enums.rs:309:17 [INFO] [stdout] | [INFO] [stdout] 309 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 307 ~ match self.replacement_mem_ports.get(&mem_port) { Some(&wire) => { [INFO] [stdout] 308 | ExprEnum::Wire(wire) [INFO] [stdout] 309 ~ } _ => { [INFO] [stdout] 310 | ExprEnum::MemPort(mem_port.fold(self)?) [INFO] [stdout] 311 ~ }}, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/module/transform/simplify_memories.rs:252:12 [INFO] [stdout] | [INFO] [stdout] 252 | if let Some(v) = self.values.get_mut(top_index) { [INFO] [stdout] | ^^^^^^^^^^^^^^-----------^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/module/transform/simplify_memories.rs:254:9 [INFO] [stdout] | [INFO] [stdout] 254 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 252 ~ match self.values.get_mut(top_index) { Some(v) => { [INFO] [stdout] 253 | *v = top; [INFO] [stdout] 254 ~ } _ => { [INFO] [stdout] 255 | assert_eq!(top_index, self.values.len()); [INFO] [stdout] 256 | self.values.push(top); [INFO] [stdout] 257 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:174:16 [INFO] [stdout] | [INFO] [stdout] 174 | if let Some(v) = Arc::get_mut(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:177:13 [INFO] [stdout] | [INFO] [stdout] 177 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 174 ~ match Arc::get_mut(&mut self) { Some(v) => { [INFO] [stdout] 175 | *v = T::fold(v.clone(), state)?; [INFO] [stdout] 176 | Ok(self) [INFO] [stdout] 177 ~ } _ => { [INFO] [stdout] 178 | T::fold(T::clone(&*self), state).map(Arc::new) [INFO] [stdout] 179 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:183:16 [INFO] [stdout] | [INFO] [stdout] 183 | if let Some(v) = Arc::get_mut(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:186:13 [INFO] [stdout] | [INFO] [stdout] 186 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 183 ~ match Arc::get_mut(&mut self) { Some(v) => { [INFO] [stdout] 184 | *v = T::default_fold(v.clone(), state)?; [INFO] [stdout] 185 | Ok(self) [INFO] [stdout] 186 ~ } _ => { [INFO] [stdout] 187 | T::default_fold(T::clone(&*self), state).map(Arc::new) [INFO] [stdout] 188 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:208:16 [INFO] [stdout] | [INFO] [stdout] 208 | if let Some(v) = Rc::get_mut(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:211:13 [INFO] [stdout] | [INFO] [stdout] 211 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 208 ~ match Rc::get_mut(&mut self) { Some(v) => { [INFO] [stdout] 209 | *v = T::fold(v.clone(), state)?; [INFO] [stdout] 210 | Ok(self) [INFO] [stdout] 211 ~ } _ => { [INFO] [stdout] 212 | T::fold(T::clone(&*self), state).map(Rc::new) [INFO] [stdout] 213 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:217:16 [INFO] [stdout] | [INFO] [stdout] 217 | if let Some(v) = Rc::get_mut(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:220:13 [INFO] [stdout] | [INFO] [stdout] 220 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 217 ~ match Rc::get_mut(&mut self) { Some(v) => { [INFO] [stdout] 218 | *v = T::default_fold(v.clone(), state)?; [INFO] [stdout] 219 | Ok(self) [INFO] [stdout] 220 ~ } _ => { [INFO] [stdout] 221 | T::default_fold(T::clone(&*self), state).map(Rc::new) [INFO] [stdout] 222 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:241:16 [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(v) = Arc::get_mut(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:247:13 [INFO] [stdout] | [INFO] [stdout] 247 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 241 ~ match Arc::get_mut(&mut self) { Some(v) => { [INFO] [stdout] 242 | v.iter_mut().try_for_each(|v| { [INFO] [stdout] ... [INFO] [stdout] 246 | Ok(self) [INFO] [stdout] 247 ~ } _ => { [INFO] [stdout] 248 | FromIterator::from_iter(self.iter().map(|v| v.clone().fold(state))) [INFO] [stdout] 249 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:253:16 [INFO] [stdout] | [INFO] [stdout] 253 | if let Some(v) = Arc::get_mut(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:259:13 [INFO] [stdout] | [INFO] [stdout] 259 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 253 ~ match Arc::get_mut(&mut self) { Some(v) => { [INFO] [stdout] 254 | v.iter_mut().try_for_each(|v| { [INFO] [stdout] ... [INFO] [stdout] 258 | Ok(self) [INFO] [stdout] 259 ~ } _ => { [INFO] [stdout] 260 | FromIterator::from_iter(self.iter().map(|v| v.clone().default_fold(state))) [INFO] [stdout] 261 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:280:16 [INFO] [stdout] | [INFO] [stdout] 280 | if let Some(v) = Rc::get_mut(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:286:13 [INFO] [stdout] | [INFO] [stdout] 286 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 280 ~ match Rc::get_mut(&mut self) { Some(v) => { [INFO] [stdout] 281 | v.iter_mut().try_for_each(|v| { [INFO] [stdout] ... [INFO] [stdout] 285 | Ok(self) [INFO] [stdout] 286 ~ } _ => { [INFO] [stdout] 287 | FromIterator::from_iter(self.iter().map(|v| v.clone().fold(state))) [INFO] [stdout] 288 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:292:16 [INFO] [stdout] | [INFO] [stdout] 292 | if let Some(v) = Rc::get_mut(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:298:13 [INFO] [stdout] | [INFO] [stdout] 298 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 292 ~ match Rc::get_mut(&mut self) { Some(v) => { [INFO] [stdout] 293 | v.iter_mut().try_for_each(|v| { [INFO] [stdout] ... [INFO] [stdout] 297 | Ok(self) [INFO] [stdout] 298 ~ } _ => { [INFO] [stdout] 299 | FromIterator::from_iter(self.iter().map(|v| v.clone().default_fold(state))) [INFO] [stdout] 300 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/util.rs:82:12 [INFO] [stdout] | [INFO] [stdout] 82 | if let Some(r) = r.next() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/util.rs:84:9 [INFO] [stdout] | [INFO] [stdout] 84 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 82 ~ match r.next() { Some(r) => { [INFO] [stdout] 83 | f(l, r).then_some(()) [INFO] [stdout] 84 ~ } _ => { [INFO] [stdout] 85 | None [INFO] [stdout] 86 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 38 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Migrating examples/blinky.rs from 2021 edition to 2024 [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `fayalite` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/expr/ops.rs [INFO] [stderr] * src/firrtl.rs [INFO] [stderr] * src/module.rs [INFO] [stderr] [INFO] [stderr] This likely indicates a bug in either rustc or cargo itself, [INFO] [stderr] and we would appreciate a bug report! You're likely to see [INFO] [stderr] a number of compiler warnings after this message which cargo [INFO] [stderr] attempted to fix but failed. If you could open an issue at [INFO] [stderr] https://github.com/rust-lang/rust/issues [INFO] [stderr] quoting the full output of this command we'd be very appreciative! [INFO] [stderr] Note that you may be able to make some more progress in the near-term [INFO] [stderr] fixing code with the `--broken-code` flag [INFO] [stderr] [INFO] [stderr] The following errors were reported: [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/expr/ops.rs:44:57 [INFO] [stderr] | [INFO] [stderr] 44 | $cache_before_ty:ident: $CacheBeforeTy:ty = $cache_before_ty_expr:expr_2021,)* [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/expr/ops.rs:46:50 [INFO] [stderr] | [INFO] [stderr] 46 | $ty_vis:vis $ty_name:ident: $Ty:ty = $ty_expr:expr_2021, [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/expr/ops.rs:48:55 [INFO] [stderr] | [INFO] [stderr] 48 | $cache_after_ty:ident: $CacheAfterTy:ty = $cache_after_ty_expr:expr_2021,)* [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/expr/ops.rs:50:60 [INFO] [stderr] | [INFO] [stderr] 50 | $target_name:ident: Option> = $target_expr:expr_2021,)? [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/expr/ops.rs:1097:33 [INFO] [stderr] | [INFO] [stderr] 1097 | ($name:ident; |$bits:ident| $literal_bits_bool:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/firrtl.rs:2452:25 [INFO] [stderr] | [INFO] [stderr] 2452 | $($field:ident: $value:expr_2021,)* [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/module.rs:229:64 [INFO] [stderr] | [INFO] [stderr] 229 | ($($T_impl:tt)*) $impl_self:ident: $impl_type:ty = $impl_self_expr:expr_2021 [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/module.rs:230:71 [INFO] [stderr] | [INFO] [stderr] 230 | $(, ($($T_impls:tt)*) $impls_self:ident: $impls_type:ty = $impls_self_expr:expr_2021)* [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stderr] --> src/module.rs:2092:14 [INFO] [stderr] | [INFO] [stderr] 2092 | ($v:expr_2021) => { [INFO] [stderr] | ^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stderr] [INFO] [stderr] error: aborting due to 9 previous errors [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0658`. [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/value-struct-3a50115e9d.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/value-enum-af6e846221.rs [INFO] [stderr] Original diagnostics will follow. [INFO] [stderr] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/module.rs:539:12 [INFO] [stdout] | [INFO] [stdout] 539 | pub fn gen(&mut self, name: Interned) -> NameId { [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] = note: `--force-warn keyword-idents-2024` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/module.rs:623:14 [INFO] [stdout] | [INFO] [stdout] 623 | .gen(name) [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/module.rs:2217:54 [INFO] [stdout] | [INFO] [stdout] 2217 | ScopedNameId(self.name, self.name_id_gen.gen(name.intern())), [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/module.rs:2244:68 [INFO] [stdout] | [INFO] [stdout] 2244 | let scoped_name = ScopedNameId(self.name, self.name_id_gen.gen(name.intern())); [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/module.rs:2431:67 [INFO] [stdout] | [INFO] [stdout] 2431 | scoped_name: ScopedNameId(self.name, self.name_id_gen.gen(name.intern())), [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/module.rs:2462:68 [INFO] [stdout] | [INFO] [stdout] 2462 | let scoped_name = ScopedNameId(self.name, self.name_id_gen.gen(name.intern())); [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/module/transform/simplify_enums.rs:411:54 [INFO] [stdout] | [INFO] [stdout] 411 | let wire_name = self.name_id_gen.gen( [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/module/transform/simplify_memories.rs:615:41 [INFO] [stdout] | [INFO] [stdout] 615 | let mem_name = self.name_id_gen.gen(Intern::intern_owned(format!( [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/value-struct-3a50115e9d.rs [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/module/transform/simplify_memories.rs:744:26 [INFO] [stdout] | [INFO] [stdout] 744 | .gen(Intern::intern_owned(format!("{mem_name}_{port_name}"))); [INFO] [stdout] | ^^^ help: you can use a raw identifier to stay compatible: `r#gen` [INFO] [stdout] | [INFO] [stdout] = warning: this is accepted in the current edition (Rust 2021) but is a hard error in Rust 2024! [INFO] [stdout] = note: for more information, see issue #49716 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/value-enum-af6e846221.rs [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/expr/ops.rs:44:79 [INFO] [stdout] | [INFO] [stdout] 44 | $cache_before_ty:ident: $CacheBeforeTy:ty = $cache_before_ty_expr:expr,)* [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: `--force-warn edition-2024-expr-fragment-specifier` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 44 | $cache_before_ty:ident: $CacheBeforeTy:ty = $cache_before_ty_expr:expr_2021,)* [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/expr/ops.rs:46:59 [INFO] [stdout] | [INFO] [stdout] 46 | $ty_vis:vis $ty_name:ident: $Ty:ty = $ty_expr:expr, [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 46 | $ty_vis:vis $ty_name:ident: $Ty:ty = $ty_expr:expr_2021, [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/expr/ops.rs:48:76 [INFO] [stdout] | [INFO] [stdout] 48 | $cache_after_ty:ident: $CacheAfterTy:ty = $cache_after_ty_expr:expr,)* [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 48 | $cache_after_ty:ident: $CacheAfterTy:ty = $cache_after_ty_expr:expr_2021,)* [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/expr/ops.rs:50:73 [INFO] [stdout] | [INFO] [stdout] 50 | $target_name:ident: Option> = $target_expr:expr,)? [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 50 | $target_name:ident: Option> = $target_expr:expr_2021,)? [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/expr/ops.rs:1097:52 [INFO] [stdout] | [INFO] [stdout] 1097 | ($name:ident; |$bits:ident| $literal_bits_bool:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 1097 | ($name:ident; |$bits:ident| $literal_bits_bool:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/firrtl.rs:2452:32 [INFO] [stdout] | [INFO] [stdout] 2452 | $($field:ident: $value:expr,)* [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 2452 | $($field:ident: $value:expr_2021,)* [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/module.rs:229:80 [INFO] [stdout] | [INFO] [stdout] 229 | ($($T_impl:tt)*) $impl_self:ident: $impl_type:ty = $impl_self_expr:expr [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 229 | ($($T_impl:tt)*) $impl_self:ident: $impl_type:ty = $impl_self_expr:expr_2021 [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/module.rs:230:88 [INFO] [stdout] | [INFO] [stdout] 230 | $(, ($($T_impls:tt)*) $impls_self:ident: $impls_type:ty = $impls_self_expr:expr)* [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 230 | $(, ($($T_impls:tt)*) $impls_self:ident: $impls_type:ty = $impls_self_expr:expr_2021)* [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/module.rs:2092:17 [INFO] [stdout] | [INFO] [stdout] 2092 | ($v:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 2092 | ($v:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/intern.rs:478:20 [INFO] [stdout] | [INFO] [stdout] 478 | if let Some(guard) = C::try_guard(&self.inner) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 496 | forward_fmt_trait!(Debug); [INFO] [stdout] | ------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/intern.rs:480:17 [INFO] [stdout] | [INFO] [stdout] 480 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 496 | forward_fmt_trait!(Debug); [INFO] [stdout] | ------------------------- in this macro invocation [INFO] [stdout] = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] = note: this warning originates in the macro `forward_fmt_trait` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/intern.rs:478:20 [INFO] [stdout] | [INFO] [stdout] 478 | if let Some(guard) = C::try_guard(&self.inner) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 497 | forward_fmt_trait!(Display); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/intern.rs:480:17 [INFO] [stdout] | [INFO] [stdout] 480 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 497 | forward_fmt_trait!(Display); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `forward_fmt_trait` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/intern.rs:478:20 [INFO] [stdout] | [INFO] [stdout] 478 | if let Some(guard) = C::try_guard(&self.inner) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 498 | forward_fmt_trait!(LowerExp); [INFO] [stdout] | ---------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/intern.rs:480:17 [INFO] [stdout] | [INFO] [stdout] 480 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 498 | forward_fmt_trait!(LowerExp); [INFO] [stdout] | ---------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `forward_fmt_trait` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/intern.rs:478:20 [INFO] [stdout] | [INFO] [stdout] 478 | if let Some(guard) = C::try_guard(&self.inner) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 499 | forward_fmt_trait!(LowerHex); [INFO] [stdout] | ---------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/intern.rs:480:17 [INFO] [stdout] | [INFO] [stdout] 480 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 499 | forward_fmt_trait!(LowerHex); [INFO] [stdout] | ---------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `forward_fmt_trait` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/intern.rs:478:20 [INFO] [stdout] | [INFO] [stdout] 478 | if let Some(guard) = C::try_guard(&self.inner) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 500 | forward_fmt_trait!(Octal); [INFO] [stdout] | ------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/intern.rs:480:17 [INFO] [stdout] | [INFO] [stdout] 480 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 500 | forward_fmt_trait!(Octal); [INFO] [stdout] | ------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `forward_fmt_trait` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/intern.rs:478:20 [INFO] [stdout] | [INFO] [stdout] 478 | if let Some(guard) = C::try_guard(&self.inner) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 501 | forward_fmt_trait!(Pointer); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/intern.rs:480:17 [INFO] [stdout] | [INFO] [stdout] 480 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 501 | forward_fmt_trait!(Pointer); [INFO] [stdout] | --------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `forward_fmt_trait` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/intern.rs:478:20 [INFO] [stdout] | [INFO] [stdout] 478 | if let Some(guard) = C::try_guard(&self.inner) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 502 | forward_fmt_trait!(UpperExp); [INFO] [stdout] | ---------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/intern.rs:480:17 [INFO] [stdout] | [INFO] [stdout] 480 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 502 | forward_fmt_trait!(UpperExp); [INFO] [stdout] | ---------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `forward_fmt_trait` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/intern.rs:478:20 [INFO] [stdout] | [INFO] [stdout] 478 | if let Some(guard) = C::try_guard(&self.inner) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^------------------------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] ... [INFO] [stdout] 503 | forward_fmt_trait!(UpperHex); [INFO] [stdout] | ---------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/intern.rs:480:17 [INFO] [stdout] | [INFO] [stdout] 480 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 503 | forward_fmt_trait!(UpperHex); [INFO] [stdout] | ---------------------------- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `forward_fmt_trait` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/memory.rs:743:12 [INFO] [stdout] | [INFO] [stdout] 743 | if let Some(v) = &self.0 { [INFO] [stdout] | ^^^^^^^^^^^^^^^------ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/memory.rs:745:9 [INFO] [stdout] | [INFO] [stdout] 745 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 743 ~ match &self.0 { Some(v) => { [INFO] [stdout] 744 | v.fmt(f) [INFO] [stdout] 745 ~ } _ => { [INFO] [stdout] 746 | f.write_str("") [INFO] [stdout] 747 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/module/transform/simplify_enums.rs:307:20 [INFO] [stdout] | [INFO] [stdout] 307 | if let Some(&wire) = self.replacement_mem_ports.get(&mem_port) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^--------------------------^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/module/transform/simplify_enums.rs:309:17 [INFO] [stdout] | [INFO] [stdout] 309 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 307 ~ match self.replacement_mem_ports.get(&mem_port) { Some(&wire) => { [INFO] [stdout] 308 | ExprEnum::Wire(wire) [INFO] [stdout] 309 ~ } _ => { [INFO] [stdout] 310 | ExprEnum::MemPort(mem_port.fold(self)?) [INFO] [stdout] 311 ~ }}, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/module/transform/simplify_memories.rs:252:12 [INFO] [stdout] | [INFO] [stdout] 252 | if let Some(v) = self.values.get_mut(top_index) { [INFO] [stdout] | ^^^^^^^^^^^^^^-----------^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/module/transform/simplify_memories.rs:254:9 [INFO] [stdout] | [INFO] [stdout] 254 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 252 ~ match self.values.get_mut(top_index) { Some(v) => { [INFO] [stdout] 253 | *v = top; [INFO] [stdout] 254 ~ } _ => { [INFO] [stdout] 255 | assert_eq!(top_index, self.values.len()); [INFO] [stdout] 256 | self.values.push(top); [INFO] [stdout] 257 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:174:16 [INFO] [stdout] | [INFO] [stdout] 174 | if let Some(v) = Arc::get_mut(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:177:13 [INFO] [stdout] | [INFO] [stdout] 177 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 174 ~ match Arc::get_mut(&mut self) { Some(v) => { [INFO] [stdout] 175 | *v = T::fold(v.clone(), state)?; [INFO] [stdout] 176 | Ok(self) [INFO] [stdout] 177 ~ } _ => { [INFO] [stdout] 178 | T::fold(T::clone(&*self), state).map(Arc::new) [INFO] [stdout] 179 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:183:16 [INFO] [stdout] | [INFO] [stdout] 183 | if let Some(v) = Arc::get_mut(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:186:13 [INFO] [stdout] | [INFO] [stdout] 186 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 183 ~ match Arc::get_mut(&mut self) { Some(v) => { [INFO] [stdout] 184 | *v = T::default_fold(v.clone(), state)?; [INFO] [stdout] 185 | Ok(self) [INFO] [stdout] 186 ~ } _ => { [INFO] [stdout] 187 | T::default_fold(T::clone(&*self), state).map(Arc::new) [INFO] [stdout] 188 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:208:16 [INFO] [stdout] | [INFO] [stdout] 208 | if let Some(v) = Rc::get_mut(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:211:13 [INFO] [stdout] | [INFO] [stdout] 211 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 208 ~ match Rc::get_mut(&mut self) { Some(v) => { [INFO] [stdout] 209 | *v = T::fold(v.clone(), state)?; [INFO] [stdout] 210 | Ok(self) [INFO] [stdout] 211 ~ } _ => { [INFO] [stdout] 212 | T::fold(T::clone(&*self), state).map(Rc::new) [INFO] [stdout] 213 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:217:16 [INFO] [stdout] | [INFO] [stdout] 217 | if let Some(v) = Rc::get_mut(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:220:13 [INFO] [stdout] | [INFO] [stdout] 220 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 217 ~ match Rc::get_mut(&mut self) { Some(v) => { [INFO] [stdout] 218 | *v = T::default_fold(v.clone(), state)?; [INFO] [stdout] 219 | Ok(self) [INFO] [stdout] 220 ~ } _ => { [INFO] [stdout] 221 | T::default_fold(T::clone(&*self), state).map(Rc::new) [INFO] [stdout] 222 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:241:16 [INFO] [stdout] | [INFO] [stdout] 241 | if let Some(v) = Arc::get_mut(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:247:13 [INFO] [stdout] | [INFO] [stdout] 247 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 241 ~ match Arc::get_mut(&mut self) { Some(v) => { [INFO] [stdout] 242 | v.iter_mut().try_for_each(|v| { [INFO] [stdout] ... [INFO] [stdout] 246 | Ok(self) [INFO] [stdout] 247 ~ } _ => { [INFO] [stdout] 248 | FromIterator::from_iter(self.iter().map(|v| v.clone().fold(state))) [INFO] [stdout] 249 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:253:16 [INFO] [stdout] | [INFO] [stdout] 253 | if let Some(v) = Arc::get_mut(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:259:13 [INFO] [stdout] | [INFO] [stdout] 259 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 253 ~ match Arc::get_mut(&mut self) { Some(v) => { [INFO] [stdout] 254 | v.iter_mut().try_for_each(|v| { [INFO] [stdout] ... [INFO] [stdout] 258 | Ok(self) [INFO] [stdout] 259 ~ } _ => { [INFO] [stdout] 260 | FromIterator::from_iter(self.iter().map(|v| v.clone().default_fold(state))) [INFO] [stdout] 261 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:280:16 [INFO] [stdout] | [INFO] [stdout] 280 | if let Some(v) = Rc::get_mut(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:286:13 [INFO] [stdout] | [INFO] [stdout] 286 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 280 ~ match Rc::get_mut(&mut self) { Some(v) => { [INFO] [stdout] 281 | v.iter_mut().try_for_each(|v| { [INFO] [stdout] ... [INFO] [stdout] 285 | Ok(self) [INFO] [stdout] 286 ~ } _ => { [INFO] [stdout] 287 | FromIterator::from_iter(self.iter().map(|v| v.clone().fold(state))) [INFO] [stdout] 288 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:292:16 [INFO] [stdout] | [INFO] [stdout] 292 | if let Some(v) = Rc::get_mut(&mut self) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^----^ [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/module/transform/visit.rs:298:13 [INFO] [stdout] | [INFO] [stdout] 298 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 292 ~ match Rc::get_mut(&mut self) { Some(v) => { [INFO] [stdout] 293 | v.iter_mut().try_for_each(|v| { [INFO] [stdout] ... [INFO] [stdout] 297 | Ok(self) [INFO] [stdout] 298 ~ } _ => { [INFO] [stdout] 299 | FromIterator::from_iter(self.iter().map(|v| v.clone().default_fold(state))) [INFO] [stdout] 300 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/util.rs:82:12 [INFO] [stdout] | [INFO] [stdout] 82 | if let Some(r) = r.next() { [INFO] [stdout] | ^^^^^^^^^^^^^^-------- [INFO] [stdout] | | [INFO] [stdout] | this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #124085 [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/util.rs:84:9 [INFO] [stdout] | [INFO] [stdout] 84 | } else { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 82 ~ match r.next() { Some(r) => { [INFO] [stdout] 83 | f(l, r).then_some(()) [INFO] [stdout] 84 ~ } _ => { [INFO] [stdout] 85 | None [INFO] [stdout] 86 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 38 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Migrating tests/module.rs from 2021 edition to 2024 [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/module-cfe95c9a6b.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/module-e66e14126b.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/module-ada28b4244.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/module-40edfa5875.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/module-1a9a2bbbac.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/module-a2fc3b9344.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/module-6fb01df651.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/module-c7aebcd92d.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/module-c9064f110b.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/value-struct-bc963bce4b.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/value-struct-533ddec0d7.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/value-struct-8d35846766.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/module-3374598660.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/module-be59f8e7cd.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/module-65682b3002.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/module-2445f1eb49.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/module-177b8296bc.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/module-bba4cb17fe.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/module-c02b15197f.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/module-379f05b9af.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/module-ddc7264e53.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/module-55d3a7dd05.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/module-fbe59450a3.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/module-035a5c6526.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/module-0944693c9c.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/module-c400821f6a.rs [INFO] [stderr] Migrating tests/value_derive.rs from 2021 edition to 2024 [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/value-struct-45b8935e22.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/value-enum-e96c3df178.rs [INFO] [stderr] Migrating tests/ui.rs from 2021 edition to 2024 [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 5m 08s [INFO] [stderr] Running `cargo check` to verify 2024 [INFO] [stderr] Compiling fayalite v0.1.0 (/tmp/fixit) [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/module.rs:539:12 [INFO] [stdout] | [INFO] [stdout] 539 | pub fn gen(&mut self, name: Interned) -> NameId { [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 539 | pub fn r#gen(&mut self, name: Interned) -> NameId { [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/module.rs:623:14 [INFO] [stdout] | [INFO] [stdout] 623 | .gen(name) [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 623 | .r#gen(name) [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/module.rs:539:12 [INFO] [stdout] | [INFO] [stdout] 539 | pub fn gen(&mut self, name: Interned) -> NameId { [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 539 | pub fn r#gen(&mut self, name: Interned) -> NameId { [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/module.rs:623:14 [INFO] [stdout] | [INFO] [stdout] 623 | .gen(name) [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 623 | .r#gen(name) [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/module.rs:2217:54 [INFO] [stdout] | [INFO] [stdout] 2217 | ScopedNameId(self.name, self.name_id_gen.gen(name.intern())), [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 2217 | ScopedNameId(self.name, self.name_id_gen.r#gen(name.intern())), [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/module.rs:2244:68 [INFO] [stdout] | [INFO] [stdout] 2244 | let scoped_name = ScopedNameId(self.name, self.name_id_gen.gen(name.intern())); [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 2244 | let scoped_name = ScopedNameId(self.name, self.name_id_gen.r#gen(name.intern())); [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/module.rs:2431:67 [INFO] [stdout] | [INFO] [stdout] 2431 | scoped_name: ScopedNameId(self.name, self.name_id_gen.gen(name.intern())), [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 2431 | scoped_name: ScopedNameId(self.name, self.name_id_gen.r#gen(name.intern())), [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/module.rs:2462:68 [INFO] [stdout] | [INFO] [stdout] 2462 | let scoped_name = ScopedNameId(self.name, self.name_id_gen.gen(name.intern())); [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 2462 | let scoped_name = ScopedNameId(self.name, self.name_id_gen.r#gen(name.intern())); [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/module.rs:2217:54 [INFO] [stdout] | [INFO] [stdout] 2217 | ScopedNameId(self.name, self.name_id_gen.gen(name.intern())), [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 2217 | ScopedNameId(self.name, self.name_id_gen.r#gen(name.intern())), [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/module.rs:2244:68 [INFO] [stdout] | [INFO] [stdout] 2244 | let scoped_name = ScopedNameId(self.name, self.name_id_gen.gen(name.intern())); [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 2244 | let scoped_name = ScopedNameId(self.name, self.name_id_gen.r#gen(name.intern())); [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/module.rs:2431:67 [INFO] [stdout] | [INFO] [stdout] 2431 | scoped_name: ScopedNameId(self.name, self.name_id_gen.gen(name.intern())), [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 2431 | scoped_name: ScopedNameId(self.name, self.name_id_gen.r#gen(name.intern())), [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/module.rs:2462:68 [INFO] [stdout] | [INFO] [stdout] 2462 | let scoped_name = ScopedNameId(self.name, self.name_id_gen.gen(name.intern())); [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 2462 | let scoped_name = ScopedNameId(self.name, self.name_id_gen.r#gen(name.intern())); [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/module/transform/simplify_enums.rs:411:54 [INFO] [stdout] | [INFO] [stdout] 411 | let wire_name = self.name_id_gen.gen( [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 411 | let wire_name = self.name_id_gen.r#gen( [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/module/transform/simplify_enums.rs:411:54 [INFO] [stdout] | [INFO] [stdout] 411 | let wire_name = self.name_id_gen.gen( [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 411 | let wire_name = self.name_id_gen.r#gen( [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/module/transform/simplify_memories.rs:615:41 [INFO] [stdout] | [INFO] [stdout] 615 | let mem_name = self.name_id_gen.gen(Intern::intern_owned(format!( [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 615 | let mem_name = self.name_id_gen.r#gen(Intern::intern_owned(format!( [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/module/transform/simplify_memories.rs:744:26 [INFO] [stdout] | [INFO] [stdout] 744 | .gen(Intern::intern_owned(format!("{mem_name}_{port_name}"))); [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 744 | .r#gen(Intern::intern_owned(format!("{mem_name}_{port_name}"))); [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/module/transform/simplify_memories.rs:615:41 [INFO] [stdout] | [INFO] [stdout] 615 | let mem_name = self.name_id_gen.gen(Intern::intern_owned(format!( [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 615 | let mem_name = self.name_id_gen.r#gen(Intern::intern_owned(format!( [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/module/transform/simplify_memories.rs:744:26 [INFO] [stdout] | [INFO] [stdout] 744 | .gen(Intern::intern_owned(format!("{mem_name}_{port_name}"))); [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 744 | .r#gen(Intern::intern_owned(format!("{mem_name}_{port_name}"))); [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/value-struct-3a50115e9d.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/value-struct-3a50115e9d.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/value-enum-af6e846221.rs [INFO] [stderr] generated /opt/rustwide/target/debug/build/fayalite-proc-macros-impl-f62f6b13907bc61c/out/value-enum-af6e846221.rs [INFO] [stdout] error: aborting due to 9 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `fayalite` (lib test) due to 10 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: aborting due to 9 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `fayalite` (lib) due to 10 previous errors [INFO] [stderr] error: failed to check after updating to 2024 [INFO] [stderr] [INFO] [stderr] Caused by: [INFO] [stderr] process didn't exit successfully: `cargo check --frozen --all --all-targets --message-format=json` (exit status: 101) [INFO] running `Command { std: "docker" "inspect" "75c9bed20f3328eab97a9bdfe7bbd41455944b070d7d6aa38184a39036d5d654", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "75c9bed20f3328eab97a9bdfe7bbd41455944b070d7d6aa38184a39036d5d654", kill_on_drop: false }` [INFO] [stdout] 75c9bed20f3328eab97a9bdfe7bbd41455944b070d7d6aa38184a39036d5d654