[INFO] fetching crate midenc-frontend-wasm 0.0.7... [INFO] checking midenc-frontend-wasm-0.0.7 against try#ccf408f4326a858c00dd845a64a86b16f360a801 for pr-129466-2 [INFO] extracting crate midenc-frontend-wasm 0.0.7 into /workspace/builds/worker-5-tc2/source [INFO] validating manifest of crates.io crate midenc-frontend-wasm 0.0.7 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 midenc-frontend-wasm 0.0.7 [INFO] finished tweaking crates.io crate midenc-frontend-wasm 0.0.7 [INFO] tweaked toml for crates.io crate midenc-frontend-wasm 0.0.7 written to /workspace/builds/worker-5-tc2/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ccf408f4326a858c00dd845a64a86b16f360a801" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Locking 241 packages to latest compatible versions [INFO] [stderr] Adding bit-set v0.5.3 (available: v0.8.0) [INFO] [stderr] Adding bit-vec v0.6.3 (available: v0.8.0) [INFO] [stderr] Adding convert_case v0.4.0 (available: v0.6.0) [INFO] [stderr] Adding cranelift-entity v0.108.1 (available: v0.112.1) [INFO] [stderr] Adding derive_more v0.99.18 (available: v1.0.0) [INFO] [stderr] Adding fixedbitset v0.4.2 (available: v0.5.7) [INFO] [stderr] Adding generic-array v0.14.7 (available: v1.1.0) [INFO] [stderr] Adding itertools v0.11.0 (available: v0.13.0) [INFO] [stderr] Adding lalrpop v0.20.2 (available: v0.21.0) [INFO] [stderr] Adding lalrpop-util v0.20.2 (available: v0.21.0) [INFO] [stderr] Adding linux-raw-sys v0.4.14 (available: v0.6.5) [INFO] [stderr] Adding matchers v0.1.0 (available: v0.2.0) [INFO] [stderr] Adding nu-ansi-term v0.46.0 (available: v0.50.1) [INFO] [stderr] Adding phf_shared v0.10.0 (available: v0.11.2) [INFO] [stderr] Adding regex-automata v0.1.10 (available: v0.4.7) [INFO] [stderr] Adding regex-syntax v0.6.29 (available: v0.8.4) [INFO] [stderr] Adding rustc-hash v1.1.0 (available: v2.0.0) [INFO] [stderr] Adding rustc_version v0.2.3 (available: v0.4.1) [INFO] [stderr] Adding semver v0.9.0 (available: v1.0.23) [INFO] [stderr] Adding semver-parser v0.7.0 (available: v0.10.2) [INFO] [stderr] Adding siphasher v0.3.11 (available: v1.0.1) [INFO] [stderr] Adding term v0.7.0 (available: v1.0.0) [INFO] [stderr] Adding terminal_size v0.3.0 (available: v0.4.0) [INFO] [stderr] Adding unicode-width v0.1.14 (available: v0.2.0) [INFO] [stderr] Adding vte v0.11.1 (available: v0.13.0) [INFO] [stderr] Adding wasi v0.11.0+wasi-snapshot-preview1 (available: v0.13.2+wasi-0.2.1) [INFO] [stderr] Adding wasmparser v0.214.0 (available: v0.217.0) [INFO] [stderr] Adding windows-strings v0.1.0 (available: v0.2.0) [INFO] [stderr] Adding windows-sys v0.48.0 (available: v0.59.0) [INFO] [stderr] Adding windows-sys v0.52.0 (available: v0.59.0) [INFO] [stderr] Adding windows-targets v0.48.5 (available: v0.52.6) [INFO] [stderr] Adding windows_aarch64_gnullvm v0.48.5 (available: v0.52.6) [INFO] [stderr] Adding windows_aarch64_msvc v0.48.5 (available: v0.52.6) [INFO] [stderr] Adding windows_i686_gnu v0.48.5 (available: v0.52.6) [INFO] [stderr] Adding windows_i686_msvc v0.48.5 (available: v0.52.6) [INFO] [stderr] Adding windows_x86_64_gnu v0.48.5 (available: v0.52.6) [INFO] [stderr] Adding windows_x86_64_gnullvm v0.48.5 (available: v0.52.6) [INFO] [stderr] Adding windows_x86_64_msvc v0.48.5 (available: v0.52.6) [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-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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] c0821c46a5b5b44ad73a293b096aa8a594ff4a992b0d70994573ed9ad1d44867 [INFO] running `Command { std: "docker" "start" "-a" "c0821c46a5b5b44ad73a293b096aa8a594ff4a992b0d70994573ed9ad1d44867", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "c0821c46a5b5b44ad73a293b096aa8a594ff4a992b0d70994573ed9ad1d44867", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "c0821c46a5b5b44ad73a293b096aa8a594ff4a992b0d70994573ed9ad1d44867", kill_on_drop: false }` [INFO] [stdout] c0821c46a5b5b44ad73a293b096aa8a594ff4a992b0d70994573ed9ad1d44867 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-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] 73f219dc22759923de353dd247a4eb03c972358c6e421dd0d025ab267a122fa5 [INFO] running `Command { std: "docker" "start" "-a" "73f219dc22759923de353dd247a4eb03c972358c6e421dd0d025ab267a122fa5", 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 futures-core v0.3.30 [INFO] [stderr] Compiling futures-sink v0.3.30 [INFO] [stderr] Compiling smallvec v1.13.2 [INFO] [stderr] Compiling rustix v0.38.37 [INFO] [stderr] Compiling num-traits v0.2.19 [INFO] [stderr] Compiling libm v0.2.8 [INFO] [stderr] Compiling dirs-sys-next v0.1.2 [INFO] [stderr] Compiling serde_json v1.0.128 [INFO] [stderr] Compiling lock_api v0.4.12 [INFO] [stderr] Compiling utf8parse v0.2.2 [INFO] [stderr] Compiling toml_edit v0.22.22 [INFO] [stderr] Compiling blake3 v1.5.4 [INFO] [stderr] Compiling vte_generate_state_changes v0.1.2 [INFO] [stderr] Compiling trybuild v1.0.99 [INFO] [stderr] Compiling futures-task v0.3.30 [INFO] [stderr] Compiling semver-parser v0.7.0 [INFO] [stderr] Compiling crunchy v0.2.2 [INFO] [stderr] Compiling futures-channel v0.3.30 [INFO] [stderr] Compiling typenum v1.17.0 [INFO] [stderr] Compiling tiny-keccak v2.0.2 [INFO] [stderr] Compiling futures-util v0.3.30 [INFO] [stderr] Compiling futures-io v0.3.30 [INFO] [stderr] Compiling semver v0.9.0 [INFO] [stderr] Compiling parking_lot_core v0.9.10 [INFO] [stderr] Compiling dirs-next v2.0.0 [INFO] [stderr] Compiling dissimilar v1.0.9 [INFO] [stderr] Compiling vte v0.11.1 [INFO] [stderr] Compiling phf_shared v0.10.0 [INFO] [stderr] Compiling term v0.7.0 [INFO] [stderr] Compiling miden-thiserror-impl v1.0.59 [INFO] [stderr] Compiling new_debug_unreachable v1.0.6 [INFO] [stderr] Compiling indenter v0.3.3 [INFO] [stderr] Compiling rustc_version v0.2.3 [INFO] [stderr] Compiling bit-vec v0.6.3 [INFO] [stderr] Compiling parking_lot v0.12.3 [INFO] [stderr] Compiling precomputed-hash v0.1.1 [INFO] [stderr] Compiling ena v0.14.3 [INFO] [stderr] Compiling itertools v0.11.0 [INFO] [stderr] Compiling ascii-canvas v3.0.0 [INFO] [stderr] Compiling bit-set v0.5.3 [INFO] [stderr] Compiling miden-crypto v0.10.3 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling string_cache v0.8.7 [INFO] [stderr] Compiling unicode-xid v0.2.6 [INFO] [stderr] Compiling byteorder v1.5.0 [INFO] [stderr] Compiling lalrpop-util v0.20.2 [INFO] [stderr] Compiling miden-miette-derive v7.1.0 [INFO] [stderr] Compiling getrandom v0.2.15 [INFO] [stderr] Compiling gimli v0.31.0 [INFO] [stderr] Compiling miniz_oxide v0.8.0 [INFO] [stderr] Compiling object v0.36.4 [INFO] [stderr] Compiling zerocopy v0.7.35 [INFO] [stderr] Compiling rand_core v0.6.4 [INFO] [stderr] Compiling strip-ansi-escapes v0.2.0 [INFO] [stderr] Compiling miden-thiserror v1.0.59 [INFO] [stderr] Compiling unicode-width v0.1.14 [INFO] [stderr] Compiling keccak v0.1.5 [INFO] [stderr] Compiling winter-utils v0.9.3 [INFO] [stderr] Compiling arrayref v0.3.9 [INFO] [stderr] Compiling rustc-demangle v0.1.24 [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 num-complex v0.4.6 [INFO] [stderr] Compiling digest v0.10.7 [INFO] [stderr] Compiling winter-math v0.9.3 [INFO] [stderr] Compiling num-derive v0.4.2 [INFO] [stderr] Compiling cpp_demangle v0.4.4 [INFO] [stderr] Compiling num-bigint v0.4.6 [INFO] [stderr] Compiling ppv-lite86 v0.2.20 [INFO] [stderr] Compiling sha3 v0.10.8 [INFO] [stderr] Compiling num-iter v0.1.45 [INFO] [stderr] Compiling futures v0.3.30 [INFO] [stderr] Compiling smawk v0.3.2 [INFO] [stderr] Compiling is_ci v1.2.0 [INFO] [stderr] Compiling lalrpop v0.20.2 [INFO] [stderr] Compiling unicode-linebreak v0.1.5 [INFO] [stderr] Compiling supports-color v3.0.1 [INFO] [stderr] Compiling winter-crypto v0.9.0 [INFO] [stderr] Checking ruzstd v0.7.2 [INFO] [stderr] Compiling owo-colors v4.1.0 [INFO] [stderr] Compiling supports-hyperlinks v3.0.0 [INFO] [stderr] Compiling rand_chacha v0.3.1 [INFO] [stderr] Compiling supports-unicode v3.0.0 [INFO] [stderr] Compiling textwrap v0.16.1 [INFO] [stderr] Compiling spin v0.9.8 [INFO] [stderr] Compiling toml v0.8.19 [INFO] [stderr] Compiling terminal_size v0.3.0 [INFO] [stderr] Compiling rand v0.8.5 [INFO] [stderr] Compiling miden-formatting v0.1.1 [INFO] [stderr] Checking memmap2 v0.9.5 [INFO] [stderr] Compiling tracing-core v0.1.32 [INFO] [stderr] Checking typed-arena v2.0.2 [INFO] [stderr] Checking fallible-iterator v0.3.0 [INFO] [stderr] Compiling num-rational v0.4.2 [INFO] [stderr] Compiling tracing v0.1.40 [INFO] [stderr] Compiling num v0.4.3 [INFO] [stderr] Compiling addr2line v0.24.1 [INFO] [stderr] Compiling serde v1.0.210 [INFO] [stderr] Checking ahash v0.8.11 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Compiling midenc-hir-symbol v0.0.7 [INFO] [stderr] Compiling memoffset v0.9.1 [INFO] [stderr] Checking clap_builder v4.5.18 [INFO] [stderr] Compiling clap_derive v4.5.18 [INFO] [stderr] Compiling midenc-session v0.0.7 [INFO] [stderr] Compiling semver v1.0.23 [INFO] [stderr] Compiling midenc-hir-macros v0.0.7 [INFO] [stderr] Compiling serde_repr v0.1.19 [INFO] [stderr] Compiling convert_case v0.4.0 [INFO] [stderr] Checking intrusive-collections v0.9.7 [INFO] [stderr] Checking cranelift-entity v0.108.1 [INFO] [stderr] Compiling derive_more v0.99.18 [INFO] [stderr] Compiling backtrace v0.3.74 [INFO] [stderr] Checking wast v217.0.0 [INFO] [stderr] Checking expect-test v1.5.0 [INFO] [stderr] Compiling miden-miette v7.1.1 [INFO] [stderr] Compiling backtrace-ext v0.2.1 [INFO] [stderr] Checking clap v4.5.18 [INFO] [stderr] Compiling miden-core v0.10.5 [INFO] [stderr] Checking hashbrown v0.14.5 [INFO] [stderr] Checking midenc-hir-type v0.0.7 [INFO] [stderr] Checking indexmap v2.5.0 [INFO] [stderr] Checking petgraph v0.6.5 [INFO] [stderr] Checking wasmparser v0.214.0 [INFO] [stderr] Checking wat v1.217.0 [INFO] [stderr] Compiling miden-assembly v0.10.5 [INFO] [stderr] Compiling midenc-hir v0.0.7 [INFO] [stderr] Compiling miden-stdlib v0.10.5 [INFO] [stderr] Compiling miden-base-sys v0.0.7 [INFO] [stderr] Checking midenc-frontend-wasm v0.0.7 (/tmp/fixit) [INFO] [stderr] Migrating src/lib.rs from 2021 edition to 2024 [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `midenc_frontend_wasm` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/error.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/error.rs:73:6 [INFO] [stderr] | [INFO] [stderr] 73 | ($diagnostics:expr_2021, $($arg:tt)*) => {{ [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 1 previous error [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0658`. [INFO] [stderr] Original diagnostics will follow. [INFO] [stderr] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/component/dfg.rs:589:9 [INFO] [stdout] | [INFO] [stdout] 589 | gen: impl FnOnce(&mut Self, K) -> T, [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/component/dfg.rs:599:19 [INFO] [stdout] | [INFO] [stdout] 599 | let tmp = gen(self, key); [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: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/error.rs:73:19 [INFO] [stdout] | [INFO] [stdout] 73 | ($diagnostics:expr, $($arg:tt)*) => {{ [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] 73 | ($diagnostics:expr_2021, $($arg:tt)*) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/component/inline.rs:395:24 [INFO] [stdout] | [INFO] [stdout] 395 | if let Some(new_frame) = self.initializer(frame, types, init)? { [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/component/inline.rs:397:21 [INFO] [stdout] | [INFO] [stdout] 397 | } [INFO] [stdout] | ^ [INFO] [stdout] = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 395 ~ match self.initializer(frame, types, init)? { Some(new_frame) => { [INFO] [stdout] 396 | frames.push((new_frame, types.resources_mut().clone())); [INFO] [stdout] 397 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/module/build_ir.rs:60:12 [INFO] [stdout] | [INFO] [stdout] 60 | if let Some(imports) = module_imports.imported(import_module_id) { [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/build_ir.rs:80:9 [INFO] [stdout] | [INFO] [stdout] 80 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 60 ~ match module_imports.imported(import_module_id) { Some(imports) => { [INFO] [stdout] 61 | for ext_func in imports { [INFO] [stdout] ... [INFO] [stdout] 79 | } [INFO] [stdout] 80 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/module/build_ir.rs:167:12 [INFO] [stdout] | [INFO] [stdout] 167 | if let Err(e) = module_builder.declare_global_variable( [INFO] [stdout] | ____________^ [INFO] [stdout] 168 | | global_name.as_str(), [INFO] [stdout] 169 | | ir_type(global.ty, diagnostics)?, [INFO] [stdout] | | -------------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 170 | | Linkage::External, [INFO] [stdout] 171 | | Some(init.clone()), [INFO] [stdout] 172 | | SourceSpan::default(), [INFO] [stdout] 173 | | ) { [INFO] [stdout] | |_________^ [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/build_ir.rs:183:9 [INFO] [stdout] | [INFO] [stdout] 183 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 167 ~ match module_builder.declare_global_variable( [INFO] [stdout] 168 | global_name.as_str(), [INFO] [stdout] ... [INFO] [stdout] 172 | SourceSpan::default(), [INFO] [stdout] 173 ~ ) { Err(e) => { [INFO] [stdout] 174 | let message = format!( [INFO] [stdout] ... [INFO] [stdout] 182 | .into_report()); [INFO] [stdout] 183 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/module/func_translator.rs:195:12 [INFO] [stdout] | [INFO] [stdout] 195 | if let Some(loc) = addr2line.find_location(offset).into_diagnostic()? { [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/func_translator.rs:211:9 [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] 195 ~ match addr2line.find_location(offset).into_diagnostic()? { Some(loc) => { [INFO] [stdout] 196 | if let Some(file) = loc.file { [INFO] [stdout] ... [INFO] [stdout] 210 | } [INFO] [stdout] 211 ~ } _ => { [INFO] [stdout] 212 | log::debug!( [INFO] [stdout] ... [INFO] [stdout] 215 | ); [INFO] [stdout] 216 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/module/module_env.rs:209:20 [INFO] [stdout] | [INFO] [stdout] 209 | if let Err(e) = result { [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/module_env.rs:211:17 [INFO] [stdout] | [INFO] [stdout] 211 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 209 ~ match result { Err(e) => { [INFO] [stdout] 210 | log::warn!("failed to parse name section {:?}", e); [INFO] [stdout] 211 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 8 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `midenc_frontend_wasm` [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/component/dfg.rs:589:9 [INFO] [stdout] | [INFO] [stdout] 589 | gen: impl FnOnce(&mut Self, K) -> T, [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] [stderr] [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/component/dfg.rs:599:19 [INFO] [stdout] | [INFO] [stdout] 599 | let tmp = gen(self, key); [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] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/error.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/error.rs:73:6 [INFO] [stderr] | [INFO] [stderr] 73 | ($diagnostics:expr_2021, $($arg:tt)*) => {{ [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 1 previous error [INFO] [stderr] [INFO] [stderr] For more information about this error, try `rustc --explain E0658`. [INFO] [stderr] Original diagnostics will follow. [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/error.rs:73:19 [INFO] [stdout] | [INFO] [stdout] 73 | ($diagnostics:expr, $($arg:tt)*) => {{ [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] 73 | ($diagnostics:expr_2021, $($arg:tt)*) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/component/inline.rs:395:24 [INFO] [stdout] | [INFO] [stdout] 395 | if let Some(new_frame) = self.initializer(frame, types, init)? { [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/component/inline.rs:397:21 [INFO] [stdout] | [INFO] [stdout] 397 | } [INFO] [stdout] | ^ [INFO] [stdout] = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 395 ~ match self.initializer(frame, types, init)? { Some(new_frame) => { [INFO] [stdout] 396 | frames.push((new_frame, types.resources_mut().clone())); [INFO] [stdout] 397 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/module/build_ir.rs:60:12 [INFO] [stdout] | [INFO] [stdout] 60 | if let Some(imports) = module_imports.imported(import_module_id) { [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/build_ir.rs:80:9 [INFO] [stdout] | [INFO] [stdout] 80 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 60 ~ match module_imports.imported(import_module_id) { Some(imports) => { [INFO] [stdout] 61 | for ext_func in imports { [INFO] [stdout] ... [INFO] [stdout] 79 | } [INFO] [stdout] 80 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/module/build_ir.rs:167:12 [INFO] [stdout] | [INFO] [stdout] 167 | if let Err(e) = module_builder.declare_global_variable( [INFO] [stdout] | ____________^ [INFO] [stdout] 168 | | global_name.as_str(), [INFO] [stdout] 169 | | ir_type(global.ty, diagnostics)?, [INFO] [stdout] | | -------------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 170 | | Linkage::External, [INFO] [stdout] 171 | | Some(init.clone()), [INFO] [stdout] 172 | | SourceSpan::default(), [INFO] [stdout] 173 | | ) { [INFO] [stdout] | |_________^ [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/build_ir.rs:183:9 [INFO] [stdout] | [INFO] [stdout] 183 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 167 ~ match module_builder.declare_global_variable( [INFO] [stdout] 168 | global_name.as_str(), [INFO] [stdout] ... [INFO] [stdout] 172 | SourceSpan::default(), [INFO] [stdout] 173 ~ ) { Err(e) => { [INFO] [stdout] 174 | let message = format!( [INFO] [stdout] ... [INFO] [stdout] 182 | .into_report()); [INFO] [stdout] 183 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/module/func_translator.rs:195:12 [INFO] [stdout] | [INFO] [stdout] 195 | if let Some(loc) = addr2line.find_location(offset).into_diagnostic()? { [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/func_translator.rs:211:9 [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] 195 ~ match addr2line.find_location(offset).into_diagnostic()? { Some(loc) => { [INFO] [stdout] 196 | if let Some(file) = loc.file { [INFO] [stdout] ... [INFO] [stdout] 210 | } [INFO] [stdout] 211 ~ } _ => { [INFO] [stdout] 212 | log::debug!( [INFO] [stdout] ... [INFO] [stdout] 215 | ); [INFO] [stdout] 216 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/module/module_env.rs:209:20 [INFO] [stdout] | [INFO] [stdout] 209 | if let Err(e) = result { [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/module_env.rs:211:17 [INFO] [stdout] | [INFO] [stdout] 211 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 209 ~ match result { Err(e) => { [INFO] [stdout] 210 | log::warn!("failed to parse name section {:?}", e); [INFO] [stdout] 211 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 8 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 35.15s [INFO] [stderr] Running `cargo check` to verify 2024 [INFO] [stderr] Checking midenc-frontend-wasm v0.0.7 (/tmp/fixit) [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/component/dfg.rs:589:9 [INFO] [stdout] | [INFO] [stdout] 589 | gen: impl FnOnce(&mut Self, K) -> T, [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 589 | r#gen: impl FnOnce(&mut Self, K) -> T, [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected identifier, found reserved keyword `gen` [INFO] [stdout] --> src/component/dfg.rs:589:9 [INFO] [stdout] | [INFO] [stdout] 589 | gen: impl FnOnce(&mut Self, K) -> T, [INFO] [stdout] | ^^^ expected identifier, found reserved keyword [INFO] [stdout] | [INFO] [stdout] help: escape `gen` to use it as an identifier [INFO] [stdout] | [INFO] [stdout] 589 | r#gen: impl FnOnce(&mut Self, K) -> T, [INFO] [stdout] | ++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected expression, found reserved keyword `gen` [INFO] [stdout] --> src/component/dfg.rs:599:19 [INFO] [stdout] | [INFO] [stdout] 599 | let tmp = gen(self, key); [INFO] [stdout] | ^^^ expected expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: expected expression, found reserved keyword `gen` [INFO] [stdout] --> src/component/dfg.rs:599:19 [INFO] [stdout] | [INFO] [stdout] 599 | let tmp = gen(self, key); [INFO] [stdout] | ^^^ expected expression [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 2 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `midenc-frontend-wasm` (lib) due to 3 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: aborting due to 2 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `midenc-frontend-wasm` (lib test) due to 3 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" "73f219dc22759923de353dd247a4eb03c972358c6e421dd0d025ab267a122fa5", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "73f219dc22759923de353dd247a4eb03c972358c6e421dd0d025ab267a122fa5", kill_on_drop: false }` [INFO] [stdout] 73f219dc22759923de353dd247a4eb03c972358c6e421dd0d025ab267a122fa5