[INFO] fetching crate uiua 0.12.3... [INFO] checking uiua-0.12.3 against try#ccf408f4326a858c00dd845a64a86b16f360a801 for pr-129466-2 [INFO] extracting crate uiua 0.12.3 into /workspace/builds/worker-2-tc2/source [INFO] validating manifest of crates.io crate uiua 0.12.3 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] removed /workspace/builds/worker-2-tc2/source/.cargo/config.toml [INFO] started tweaking crates.io crate uiua 0.12.3 [INFO] finished tweaking crates.io crate uiua 0.12.3 [INFO] tweaked toml for crates.io crate uiua 0.12.3 written to /workspace/builds/worker-2-tc2/source/Cargo.toml [INFO] crate crates.io crate uiua 0.12.3 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-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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] 20e1ac898a0aa640d065a21bda88de6e7eb7e1e847d7346354894b2edfbf55fa [INFO] running `Command { std: "docker" "start" "-a" "20e1ac898a0aa640d065a21bda88de6e7eb7e1e847d7346354894b2edfbf55fa", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "20e1ac898a0aa640d065a21bda88de6e7eb7e1e847d7346354894b2edfbf55fa", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "20e1ac898a0aa640d065a21bda88de6e7eb7e1e847d7346354894b2edfbf55fa", kill_on_drop: false }` [INFO] [stdout] 20e1ac898a0aa640d065a21bda88de6e7eb7e1e847d7346354894b2edfbf55fa [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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] d1c51fbffb7cbf4719114cca3e542c049b05aa76b3635613fa30730f20675ee6 [INFO] running `Command { std: "docker" "start" "-a" "d1c51fbffb7cbf4719114cca3e542c049b05aa76b3635613fa30730f20675ee6", 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] Fixed Cargo.toml (36 fixes) [INFO] [stderr] Compiling proc-macro2 v1.0.79 [INFO] [stderr] Compiling libc v0.2.153 [INFO] [stderr] Compiling serde v1.0.197 [INFO] [stderr] Compiling autocfg v1.2.0 [INFO] [stderr] Checking simd-adler32 v0.3.7 [INFO] [stderr] Checking scopeguard v1.2.0 [INFO] [stderr] Compiling thiserror v1.0.58 [INFO] [stderr] Compiling cc v1.1.13 [INFO] [stderr] Compiling crc32fast v1.4.0 [INFO] [stderr] Checking miniz_oxide v0.7.2 [INFO] [stderr] Checking log v0.4.21 [INFO] [stderr] Compiling rustix v0.38.32 [INFO] [stderr] Compiling lock_api v0.4.11 [INFO] [stderr] Compiling num-traits v0.2.18 [INFO] [stderr] Compiling rayon-core v1.12.1 [INFO] [stderr] Checking flate2 v1.0.28 [INFO] [stderr] Checking linux-raw-sys v0.4.13 [INFO] [stderr] Compiling quote v1.0.35 [INFO] [stderr] Checking spin v0.9.8 [INFO] [stderr] Compiling syn v2.0.55 [INFO] [stderr] Compiling nix v0.28.0 [INFO] [stderr] Compiling slab v0.4.9 [INFO] [stderr] Checking bytemuck v1.15.0 [INFO] [stderr] Checking either v1.10.0 [INFO] [stderr] Checking utf8parse v0.2.1 [INFO] [stderr] Checking rayon v1.10.0 [INFO] [stderr] Checking weezl v0.1.8 [INFO] [stderr] Compiling memchr v2.7.2 [INFO] [stderr] Compiling ring v0.17.8 [INFO] [stderr] Checking parking_lot_core v0.9.9 [INFO] [stderr] Checking getrandom v0.2.12 [INFO] [stderr] Checking signal-hook-registry v1.4.1 [INFO] [stderr] Checking mio v0.8.11 [INFO] [stderr] Compiling ucd-trie v0.1.6 [INFO] [stderr] Checking parking_lot v0.12.1 [INFO] [stderr] Checking signal-hook v0.3.17 [INFO] [stderr] Checking flume v0.11.0 [INFO] [stderr] Checking zune-inflate v0.2.54 [INFO] [stderr] Checking fdeflate v0.3.4 [INFO] [stderr] Checking half v2.4.0 [INFO] [stderr] Compiling serde_json v1.0.115 [INFO] [stderr] Checking rustls-pki-types v1.4.1 [INFO] [stderr] Checking bit_field v0.10.2 [INFO] [stderr] Checking ryu v1.0.17 [INFO] [stderr] Compiling semver v1.0.23 [INFO] [stderr] Checking lebe v0.5.2 [INFO] [stderr] Checking gif v0.13.1 [INFO] [stderr] Checking png v0.17.13 [INFO] [stderr] Checking signal-hook-mio v0.2.3 [INFO] [stderr] Checking exr v1.72.0 [INFO] [stderr] Checking num-integer v0.1.46 [INFO] [stderr] Compiling libffi-sys v2.3.0 [INFO] [stderr] Compiling backtrace v0.3.71 [INFO] [stderr] Checking anstyle-parse v0.2.3 [INFO] [stderr] Checking qoi v0.4.1 [INFO] [stderr] Checking tracing-core v0.1.32 [INFO] [stderr] Checking encoding_rs v0.8.34 [INFO] [stderr] Checking anstyle-query v1.0.2 [INFO] [stderr] Compiling async-trait v0.1.79 [INFO] [stderr] Checking colorchoice v1.0.0 [INFO] [stderr] Checking anstyle v1.0.6 [INFO] [stderr] Checking gimli v0.28.1 [INFO] [stderr] Compiling rustfft v6.2.0 [INFO] [stderr] Checking anstream v0.6.13 [INFO] [stderr] Checking jpeg-decoder v0.3.1 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking tiff v0.9.1 [INFO] [stderr] Checking inotify-sys v0.1.5 [INFO] [stderr] Checking rgb v0.8.37 [INFO] [stderr] Checking tokio v1.37.0 [INFO] [stderr] Checking is-docker v0.2.0 [INFO] [stderr] Checking nibble_vec v0.1.0 [INFO] [stderr] Checking image v0.24.9 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Checking addr2line v0.21.0 [INFO] [stderr] Checking object v0.32.2 [INFO] [stderr] Checking strength_reduce v0.2.4 [INFO] [stderr] Checking termcolor v1.4.1 [INFO] [stderr] Checking clap_lex v0.7.0 [INFO] [stderr] Checking tower-layer v0.3.2 [INFO] [stderr] Checking regex-syntax v0.8.3 [INFO] [stderr] Checking endian-type v0.1.2 [INFO] [stderr] Checking iana-time-zone v0.1.60 [INFO] [stderr] Checking x11rb-protocol v0.13.0 [INFO] [stderr] Checking strsim v0.11.0 [INFO] [stderr] Compiling paste v1.0.14 [INFO] [stderr] Compiling rustls v0.23.4 [INFO] [stderr] Checking fastrand v2.0.2 [INFO] [stderr] Checking winnow v0.6.5 [INFO] [stderr] Compiling serde_derive v1.0.197 [INFO] [stderr] Compiling thiserror-impl v1.0.58 [INFO] [stderr] Compiling futures-macro v0.3.30 [INFO] [stderr] Compiling tracing-attributes v0.1.27 [INFO] [stderr] Checking futures-util v0.3.30 [INFO] [stderr] Compiling pin-project-internal v1.1.5 [INFO] [stderr] Compiling pest v2.7.10 [INFO] [stderr] Compiling serde_repr v0.1.18 [INFO] [stderr] Checking bytes v1.6.0 [INFO] [stderr] Checking rustc-demangle v0.1.23 [INFO] [stderr] Checking tracing v0.1.40 [INFO] [stderr] Checking tokio-util v0.7.10 [INFO] [stderr] Checking pin-project v1.1.5 [INFO] [stderr] Compiling serde_tuple_macros v0.5.0 [INFO] [stderr] Checking zip v0.5.13 [INFO] [stderr] Compiling pest_meta v2.7.10 [INFO] [stderr] Checking regex-automata v0.4.6 [INFO] [stderr] Compiling tower-lsp-macros v0.9.0 [INFO] [stderr] Compiling enum-iterator-derive v1.3.0 [INFO] [stderr] Compiling auto_impl v1.2.0 [INFO] [stderr] Compiling pest_generator v2.7.10 [INFO] [stderr] Checking tower v0.4.13 [INFO] [stderr] Checking futures v0.3.30 [INFO] [stderr] Compiling clap_derive v4.5.4 [INFO] [stderr] Compiling deprecate-until v0.1.1 [INFO] [stderr] Checking clap_builder v4.5.2 [INFO] [stderr] Checking chrono v0.4.37 [INFO] [stderr] Compiling pest_derive v2.7.10 [INFO] [stderr] Checking radix_trie v0.2.1 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking transpose v0.2.3 [INFO] [stderr] Checking rustls-webpki v0.102.2 [INFO] [stderr] Checking is-wsl v0.4.0 [INFO] [stderr] Checking ansi_colours v1.2.2 [INFO] [stderr] Checking inotify v0.9.6 [INFO] [stderr] Checking codepage v0.1.1 [INFO] [stderr] Checking quick-xml v0.31.0 [INFO] [stderr] Checking console v0.15.8 [INFO] [stderr] Checking primal-check v0.3.3 [INFO] [stderr] Checking bitflags v2.5.0 [INFO] [stderr] Checking tinyvec v1.6.0 [INFO] [stderr] Checking indexmap v2.2.6 [INFO] [stderr] Checking crossterm v0.27.0 [INFO] [stderr] Checking toml_datetime v0.6.5 [INFO] [stderr] Checking unicode-normalization v0.1.23 [INFO] [stderr] Checking serde_spanned v0.6.5 [INFO] [stderr] Checking dashmap v5.5.3 [INFO] [stderr] Checking num-complex v0.4.6 [INFO] [stderr] Checking toml_edit v0.22.9 [INFO] [stderr] Checking integer-sqrt v0.1.5 [INFO] [stderr] Checking filetime v0.2.23 [INFO] [stderr] Checking zip v0.6.6 [INFO] [stderr] Checking idna v0.5.0 [INFO] [stderr] Checking crossbeam-channel v0.5.12 [INFO] [stderr] Checking csv-core v0.1.11 [INFO] [stderr] Checking fixedbitset v0.4.2 [INFO] [stderr] Checking unicode-segmentation v1.11.0 [INFO] [stderr] Checking url v2.5.0 [INFO] [stderr] Checking unicode-width v0.1.11 [INFO] [stderr] Checking rustc-hash v1.1.0 [INFO] [stderr] Checking base64 v0.22.0 [INFO] [stderr] Checking pathdiff v0.2.1 [INFO] [stderr] Checking xterm-query v0.4.0 [INFO] [stderr] Checking base64 v0.21.7 [INFO] [stderr] Checking coolor v0.9.0 [INFO] [stderr] Checking home v0.5.9 [INFO] [stderr] Checking rustls-pemfile v2.1.2 [INFO] [stderr] Checking terminal-light v1.4.0 [INFO] [stderr] Checking time v0.3.36 [INFO] [stderr] Checking open v5.1.2 [INFO] [stderr] Checking ctrlc v3.4.4 [INFO] [stderr] Checking lsp-types v0.94.1 [INFO] [stderr] Checking trash v4.1.0 [INFO] [stderr] Checking pathfinding v4.9.1 [INFO] [stderr] Checking notify v6.1.1 [INFO] [stderr] Checking toml v0.8.12 [INFO] [stderr] Checking csv v1.3.0 [INFO] [stderr] Checking calamine v0.24.0 [INFO] [stderr] Checking clap v4.5.4 [INFO] [stderr] Checking json5 v0.4.1 [INFO] [stderr] Checking ecow v0.2.2 [INFO] [stderr] Checking fd-lock v4.0.2 [INFO] [stderr] Checking x11rb v0.13.0 [INFO] [stderr] Checking tempfile v3.10.1 [INFO] [stderr] Checking rustyline v14.0.0 [INFO] [stderr] Checking viuer v0.7.1 [INFO] [stderr] Checking terminal_size v0.3.0 [INFO] [stderr] Checking serde_tuple v0.5.0 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking regex v1.10.4 [INFO] [stderr] Checking arboard v3.3.2 [INFO] [stderr] Checking enum-iterator v2.0.0 [INFO] [stderr] Checking simple_excel_writer v0.2.0 [INFO] [stderr] Checking color-backtrace v0.6.1 [INFO] [stderr] Checking colored v2.1.0 [INFO] [stderr] Checking webpki-roots v0.26.1 [INFO] [stderr] Checking rawrrr v0.2.1 [INFO] [stderr] Checking num_cpus v1.16.0 [INFO] [stderr] Checking libloading v0.8.3 [INFO] [stderr] Checking bufreaderwriter v0.2.4 [INFO] [stderr] Checking hound v3.5.1 [INFO] [stderr] Checking libffi v3.2.0 [INFO] [stderr] Checking tower-lsp v0.20.0 [INFO] [stderr] Checking uiua v0.12.3 (/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 `uiua` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/algorithm/invert.rs [INFO] [stderr] * src/algorithm/pervade.rs [INFO] [stderr] * src/algorithm/table.rs [INFO] [stderr] * src/compile/modifier.rs [INFO] [stderr] * src/cowslice.rs [INFO] [stderr] * src/ffi.rs [INFO] [stderr] * src/format.rs [INFO] [stderr] * src/primitive/defs.rs [INFO] [stderr] * src/primitive/mod.rs [INFO] [stderr] * src/profile.rs [INFO] [stderr] * src/sys.rs [INFO] [stderr] * src/value.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/algorithm/invert.rs:163:9 [INFO] [stderr] | [INFO] [stderr] 163 | (($($matching:expr_2021),*), ($($before:expr_2021),*) $(,($($after: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/algorithm/invert.rs:163:37 [INFO] [stderr] | [INFO] [stderr] 163 | (($($matching:expr_2021),*), ($($before:expr_2021),*) $(,($($after: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/algorithm/invert.rs:163:65 [INFO] [stderr] | [INFO] [stderr] 163 | (($($matching:expr_2021),*), ($($before:expr_2021),*) $(,($($after: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/algorithm/invert.rs:170:6 [INFO] [stderr] | [INFO] [stderr] 170 | ($matching:expr_2021, ($($before:expr_2021),*) $(,($($after: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/algorithm/invert.rs:170:30 [INFO] [stderr] | [INFO] [stderr] 170 | ($matching:expr_2021, ($($before:expr_2021),*) $(,($($after: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/algorithm/invert.rs:170:58 [INFO] [stderr] | [INFO] [stderr] 170 | ($matching:expr_2021, ($($before:expr_2021),*) $(,($($after: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/algorithm/invert.rs:177:6 [INFO] [stderr] | [INFO] [stderr] 177 | ($matching:expr_2021, $before:expr_2021 $(,($($after: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/algorithm/invert.rs:177:27 [INFO] [stderr] | [INFO] [stderr] 177 | ($matching:expr_2021, $before:expr_2021 $(,($($after: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/algorithm/invert.rs:177:51 [INFO] [stderr] | [INFO] [stderr] 177 | ($matching:expr_2021, $before:expr_2021 $(,($($after: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/algorithm/invert.rs:358:13 [INFO] [stderr] | [INFO] [stderr] 358 | (($($before: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/algorithm/invert.rs:361:13 [INFO] [stderr] | [INFO] [stderr] 361 | (($($before:expr_2021),*), ($($after: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/algorithm/invert.rs:361:39 [INFO] [stderr] | [INFO] [stderr] 361 | (($($before:expr_2021),*), ($($after: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/algorithm/invert.rs:364:13 [INFO] [stderr] | [INFO] [stderr] 364 | (($($before:expr_2021),*), $after: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/algorithm/invert.rs:364:36 [INFO] [stderr] | [INFO] [stderr] 364 | (($($before:expr_2021),*), $after: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/algorithm/invert.rs:367:10 [INFO] [stderr] | [INFO] [stderr] 367 | ($before:expr_2021, ($($after: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/algorithm/invert.rs:367:32 [INFO] [stderr] | [INFO] [stderr] 367 | ($before:expr_2021, ($($after: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/algorithm/invert.rs:370:10 [INFO] [stderr] | [INFO] [stderr] 370 | ($before:expr_2021, $after: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/algorithm/invert.rs:370:29 [INFO] [stderr] | [INFO] [stderr] 370 | ($before:expr_2021, $after: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/algorithm/invert.rs:377:10 [INFO] [stderr] | [INFO] [stderr] 377 | ($before:expr_2021, $after: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/algorithm/invert.rs:377:29 [INFO] [stderr] | [INFO] [stderr] 377 | ($before:expr_2021, $after: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/algorithm/invert.rs:384:13 [INFO] [stderr] | [INFO] [stderr] 384 | (($($before: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/algorithm/invert.rs:387:13 [INFO] [stderr] | [INFO] [stderr] 387 | (($($before:expr_2021),*), ($($after: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/algorithm/invert.rs:387:39 [INFO] [stderr] | [INFO] [stderr] 387 | (($($before:expr_2021),*), ($($after: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/algorithm/invert.rs:390:13 [INFO] [stderr] | [INFO] [stderr] 390 | (($($before:expr_2021),*), $after: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/algorithm/invert.rs:390:36 [INFO] [stderr] | [INFO] [stderr] 390 | (($($before:expr_2021),*), $after: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/algorithm/invert.rs:393:10 [INFO] [stderr] | [INFO] [stderr] 393 | ($before:expr_2021, ($($after: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/algorithm/invert.rs:393:32 [INFO] [stderr] | [INFO] [stderr] 393 | ($before:expr_2021, ($($after: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/algorithm/invert.rs:396:10 [INFO] [stderr] | [INFO] [stderr] 396 | ($before:expr_2021, $after: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/algorithm/invert.rs:396:29 [INFO] [stderr] | [INFO] [stderr] 396 | ($before:expr_2021, $after: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/algorithm/invert.rs:403:16 [INFO] [stderr] | [INFO] [stderr] 403 | (Flip, $before:expr_2021, $after: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/algorithm/invert.rs:403:35 [INFO] [stderr] | [INFO] [stderr] 403 | (Flip, $before:expr_2021, $after: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/algorithm/invert.rs:406:16 [INFO] [stderr] | [INFO] [stderr] 406 | (Flip, $before: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/algorithm/invert.rs:409:10 [INFO] [stderr] | [INFO] [stderr] 409 | ($before:expr_2021, $after: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/algorithm/invert.rs:409:29 [INFO] [stderr] | [INFO] [stderr] 409 | ($before:expr_2021, $after: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/algorithm/invert.rs:416:10 [INFO] [stderr] | [INFO] [stderr] 416 | ($before: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/algorithm/invert.rs:427:10 [INFO] [stderr] | [INFO] [stderr] 427 | ($pat: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/algorithm/invert.rs:719:64 [INFO] [stderr] | [INFO] [stderr] 719 | ($name:ident, ($($pat:pat),*), |$input:ident, $comp:ident| $body: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/algorithm/invert.rs:730:52 [INFO] [stderr] | [INFO] [stderr] 730 | ($name:ident, ($($pat:pat),*), |$input:ident| $body: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/algorithm/pervade.rs:696:25 [INFO] [stderr] | [INFO] [stderr] 696 | ($name:ident $eq:tt $ordering: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/algorithm/pervade.rs:734:25 [INFO] [stderr] | [INFO] [stderr] 734 | ($name:ident $eq:tt $ordering: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/algorithm/pervade.rs:861:39 [INFO] [stderr] | [INFO] [stderr] 861 | ($name:ident, $a:ident, $b:ident, $byte_convert:expr_2021, $byte_ret:ty, $f:expr_2021, $err:literal) => { [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/algorithm/pervade.rs:861:78 [INFO] [stderr] | [INFO] [stderr] 861 | ($name:ident, $a:ident, $b:ident, $byte_convert:expr_2021, $byte_ret:ty, $f:expr_2021, $err:literal) => { [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/algorithm/table.rs:456:10 [INFO] [stderr] | [INFO] [stderr] 456 | ... ($xs:expr_2021, $ys:expr_2021, $ff:expr_2021, $ff_complex:expr_2021, $iden:expr_2021, $ciden:expr_2021, $fill:expr_2021, $arith:ide... [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/algorithm/table.rs:456:25 [INFO] [stderr] | [INFO] [stderr] 456 | ... ($xs:expr_2021, $ys:expr_2021, $ff:expr_2021, $ff_complex:expr_2021, $iden:expr_2021, $ciden:expr_2021, $fill:expr_2021, $arith:ide... [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/algorithm/table.rs:456:40 [INFO] [stderr] | [INFO] [stderr] 456 | ... ($xs:expr_2021, $ys:expr_2021, $ff:expr_2021, $ff_complex:expr_2021, $iden:expr_2021, $ciden:expr_2021, $fill:expr_2021, $arith:ide... [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/algorithm/table.rs:456:55 [INFO] [stderr] | [INFO] [stderr] 456 | ... ($xs:expr_2021, $ys:expr_2021, $ff:expr_2021, $ff_complex:expr_2021, $iden:expr_2021, $ciden:expr_2021, $fill:expr_2021, $arith:ide... [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/algorithm/table.rs:456:78 [INFO] [stderr] | [INFO] [stderr] 456 | ... ($xs:expr_2021, $ys:expr_2021, $ff:expr_2021, $ff_complex:expr_2021, $iden:expr_2021, $ciden:expr_2021, $fill:expr_2021, $arith:ide... [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/algorithm/table.rs:456:95 [INFO] [stderr] | [INFO] [stderr] 456 | ... ($xs:expr_2021, $ys:expr_2021, $ff:expr_2021, $ff_complex:expr_2021, $iden:expr_2021, $ciden:expr_2021, $fill:expr_2021, $arith:ide... [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/algorithm/table.rs:456:113 [INFO] [stderr] | [INFO] [stderr] 456 | ... ($xs:expr_2021, $ys:expr_2021, $ff:expr_2021, $ff_complex:expr_2021, $iden:expr_2021, $ciden:expr_2021, $fill:expr_2021, $arith:ide... [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/compile/modifier.rs:498:14 [INFO] [stderr] | [INFO] [stderr] 498 | ($instrs:expr_2021, $sig: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/compile/modifier.rs:498:33 [INFO] [stderr] | [INFO] [stderr] 498 | ($instrs:expr_2021, $sig: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/cowslice.rs:15:8 [INFO] [stderr] | [INFO] [stderr] 15 | ($($item: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/cowslice.rs:18:6 [INFO] [stderr] | [INFO] [stderr] 18 | ($item:expr_2021; $len: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/cowslice.rs:18:23 [INFO] [stderr] | [INFO] [stderr] 18 | ($item:expr_2021; $len: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/ffi.rs:347:28 [INFO] [stderr] | [INFO] [stderr] 347 | ($c_ty:ty, $len_index: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/ffi.rs:478:26 [INFO] [stderr] | [INFO] [stderr] 478 | ($ty:ty, $i:expr_2021, $numty:ty ) => { [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/ffi.rs:492:28 [INFO] [stderr] | [INFO] [stderr] 492 | ($c_ty:ty, $len_index:expr_2021, $i:expr_2021, $numty:ty $(,$numty2:ty)?) => { [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/ffi.rs:492:50 [INFO] [stderr] | [INFO] [stderr] 492 | ($c_ty:ty, $len_index:expr_2021, $i:expr_2021, $numty:ty $(,$numty2:ty)?) => { [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/ffi.rs:831:18 [INFO] [stderr] | [INFO] [stderr] 831 | ($arr:expr_2021, $ty:ty) => {{ [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/ffi.rs:837:18 [INFO] [stderr] | [INFO] [stderr] 837 | ($arr:expr_2021, $ty:ty) => { [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/ffi.rs:1020:22 [INFO] [stderr] | [INFO] [stderr] 1020 | ($arr:expr_2021, $ty:ty) => { [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] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/primitive/mod.rs:725:36 [INFO] [stdout] | [INFO] [stdout] 725 | let val: f64 = rng.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] = 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/primitive/mod.rs:726:52 [INFO] [stdout] | [INFO] [stdout] 726 | let next_seed = f64::from_bits(rng.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] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/primitive/mod.rs:1185:37 [INFO] [stdout] | [INFO] [stdout] 1185 | RNG.with(|rng| rng.borrow_mut().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] [stderr] --> src/format.rs:121:13 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:163:19 [INFO] [stdout] | [INFO] [stdout] 163 | (($($matching:expr),*), ($($before:expr),*) $(,($($after: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] 163 | (($($matching:expr_2021),*), ($($before:expr),*) $(,($($after:expr),*))? $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:163:40 [INFO] [stdout] | [INFO] [stdout] 163 | (($($matching:expr),*), ($($before:expr),*) $(,($($after: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] 163 | (($($matching:expr),*), ($($before:expr_2021),*) $(,($($after:expr),*))? $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 121 | $default:expr_2021 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:163:62 [INFO] [stdout] | [INFO] [stdout] 163 | (($($matching:expr),*), ($($before:expr),*) $(,($($after: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] 163 | (($($matching:expr),*), ($($before:expr),*) $(,($($after:expr_2021),*))? $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:170:16 [INFO] [stdout] | [INFO] [stdout] 170 | ($matching:expr, ($($before:expr),*) $(,($($after: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] 170 | ($matching:expr_2021, ($($before:expr),*) $(,($($after:expr),*))? $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:170:33 [INFO] [stdout] | [INFO] [stdout] 170 | ($matching:expr, ($($before:expr),*) $(,($($after: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] 170 | ($matching:expr, ($($before:expr_2021),*) $(,($($after:expr),*))? $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:170:55 [INFO] [stdout] | [INFO] [stdout] 170 | ($matching:expr, ($($before:expr),*) $(,($($after: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] 170 | ($matching:expr, ($($before:expr),*) $(,($($after:expr_2021),*))? $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:177:16 [INFO] [stdout] | [INFO] [stdout] 177 | ($matching:expr, $before:expr $(,($($after: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] 177 | ($matching:expr_2021, $before:expr $(,($($after:expr),*))? $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:177:30 [INFO] [stdout] | [INFO] [stdout] 177 | ($matching:expr, $before:expr $(,($($after: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] 177 | ($matching:expr, $before:expr_2021 $(,($($after:expr),*))? $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:177:48 [INFO] [stdout] | [INFO] [stdout] 177 | ($matching:expr, $before:expr $(,($($after: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] 177 | ($matching:expr, $before:expr $(,($($after:expr_2021),*))? $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:358:21 [INFO] [stdout] | [INFO] [stdout] 358 | (($($before: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] 358 | (($($before:expr_2021),*)) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/primitive/defs.rs:78:64 [INFO] [stderr] | [INFO] [stderr] 78 | ($(#[doc = $doc:literal] $(#[$attr:meta])* ($name:literal, $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/primitive/defs.rs:323:20 [INFO] [stderr] | [INFO] [stderr] 323 | $(($outputs: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/primitive/defs.rs:324:20 [INFO] [stderr] | [INFO] [stderr] 324 | $([$mod_args: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/primitive/defs.rs:326:43 [INFO] [stderr] | [INFO] [stderr] 326 | $variant:ident, $class:ident, $names:expr_2021 $(,$purity:ident)* [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/primitive/defs.rs:2945:16 [INFO] [stderr] | [INFO] [stderr] 2945 | $(($outputs: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/primitive/defs.rs:2946:16 [INFO] [stderr] | [INFO] [stderr] 2946 | $([$margs: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/primitive/mod.rs:274:19 [INFO] [stderr] | [INFO] [stderr] 274 | ($name: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/profile.rs:15:6 [INFO] [stderr] | [INFO] [stderr] 15 | ($label: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/sys.rs:58:29 [INFO] [stderr] | [INFO] [stderr] 58 | $args:literal$(($outputs:expr_2021))?$([$mod_args: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/sys.rs:58:53 [INFO] [stderr] | [INFO] [stderr] 58 | $args:literal$(($outputs:expr_2021))?$([$mod_args:expr_2021])?, [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:361:21 [INFO] [stdout] | [INFO] [stdout] 361 | (($($before:expr),*), ($($after: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] 361 | (($($before:expr_2021),*), ($($after:expr),*)) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:361:41 [INFO] [stdout] | [INFO] [stdout] 361 | (($($before:expr),*), ($($after: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] 361 | (($($before:expr),*), ($($after:expr_2021),*)) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:364:21 [INFO] [stdout] | [INFO] [stdout] 364 | (($($before:expr),*), $after: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] 364 | (($($before:expr_2021),*), $after:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:364:38 [INFO] [stdout] | [INFO] [stdout] 364 | (($($before:expr),*), $after: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] 364 | (($($before:expr),*), $after:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:367:18 [INFO] [stdout] | [INFO] [stdout] 367 | ($before:expr, ($($after: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] 367 | ($before:expr_2021, ($($after:expr),*)) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:367:34 [INFO] [stdout] | [INFO] [stdout] 367 | ($before:expr, ($($after: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] 367 | ($before:expr, ($($after:expr_2021),*)) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:370:18 [INFO] [stdout] | [INFO] [stdout] 370 | ($before:expr, $after: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] 370 | ($before:expr_2021, $after:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:370:31 [INFO] [stdout] | [INFO] [stdout] 370 | ($before:expr, $after: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] 370 | ($before:expr, $after:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/value.rs:1466:28 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:377:18 [INFO] [stdout] | [INFO] [stdout] 377 | ($before:expr, $after: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] 377 | ($before:expr_2021, $after:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:377:31 [INFO] [stdout] | [INFO] [stdout] 377 | ($before:expr, $after: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] 377 | ($before:expr, $after:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 1466 | $([$(|$meta:ident| $pred:expr_2021,)* $in_place:ident, $f:ident])? [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:384:21 [INFO] [stdout] | [INFO] [stdout] 384 | (($($before: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] 384 | (($($before:expr_2021),*)) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:387:21 [INFO] [stdout] | [INFO] [stdout] 387 | (($($before:expr),*), ($($after: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] 387 | (($($before:expr_2021),*), ($($after:expr),*)) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:387:41 [INFO] [stdout] | [INFO] [stdout] 387 | (($($before:expr),*), ($($after: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] 387 | (($($before:expr),*), ($($after:expr_2021),*)) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:390:21 [INFO] [stdout] | [INFO] [stdout] 390 | (($($before:expr),*), $after: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] 390 | (($($before:expr_2021),*), $after:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:390:38 [INFO] [stdout] | [INFO] [stdout] 390 | (($($before:expr),*), $after: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] 390 | (($($before:expr),*), $after:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:393:18 [INFO] [stdout] | [INFO] [stdout] 393 | ($before:expr, ($($after: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] 393 | ($before:expr_2021, ($($after:expr),*)) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:393:34 [INFO] [stdout] | [INFO] [stdout] 393 | ($before:expr, ($($after: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] 393 | ($before:expr, ($($after:expr_2021),*)) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:396:18 [INFO] [stdout] | [INFO] [stdout] 396 | ($before:expr, $after: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] 396 | ($before:expr_2021, $after:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/value.rs:1616:28 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:396:31 [INFO] [stdout] | [INFO] [stdout] 396 | ($before:expr, $after: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] 396 | ($before:expr, $after:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:403:24 [INFO] [stdout] | [INFO] [stdout] 403 | (Flip, $before:expr, $after: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] 403 | (Flip, $before:expr_2021, $after:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 1616 | $([$(|$meta:ident| $pred:expr_2021,)* $ip:ident, $f2:ident $(, $reset_meta:literal)?])* [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:403:37 [INFO] [stdout] | [INFO] [stdout] 403 | (Flip, $before:expr, $after: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] 403 | (Flip, $before:expr, $after:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:406:24 [INFO] [stdout] | [INFO] [stdout] 406 | (Flip, $before: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] 406 | (Flip, $before:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:409:18 [INFO] [stdout] | [INFO] [stdout] 409 | ($before:expr, $after: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] 409 | ($before:expr_2021, $after:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:409:31 [INFO] [stdout] | [INFO] [stdout] 409 | ($before:expr, $after: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] 409 | ($before:expr, $after:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:416:18 [INFO] [stdout] | [INFO] [stdout] 416 | ($before: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] 416 | ($before:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:427:15 [INFO] [stdout] | [INFO] [stdout] 427 | ($pat: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] 427 | ($pat:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:719:70 [INFO] [stdout] | [INFO] [stdout] 719 | ($name:ident, ($($pat:pat),*), |$input:ident, $comp:ident| $body: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] 719 | ($name:ident, ($($pat:pat),*), |$input:ident, $comp:ident| $body:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:730:58 [INFO] [stdout] | [INFO] [stdout] 730 | ($name:ident, ($($pat:pat),*), |$input:ident| $body: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] 730 | ($name:ident, ($($pat:pat),*), |$input:ident| $body:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/algorithm/table.rs:649:18 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/pervade.rs:696:35 [INFO] [stdout] | [INFO] [stdout] 696 | ($name:ident $eq:tt $ordering: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] 696 | ($name:ident $eq:tt $ordering:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/pervade.rs:734:35 [INFO] [stdout] | [INFO] [stdout] 734 | ($name:ident $eq:tt $ordering: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] 734 | ($name:ident $eq:tt $ordering:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 649 | ($ff:expr_2021, $ff_complex:expr_2021, $iden:expr_2021, $ciden:expr_2021) => { [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/pervade.rs:861:53 [INFO] [stdout] | [INFO] [stdout] 861 | ($name:ident, $a:ident, $b:ident, $byte_convert:expr, $byte_ret:ty, $f:expr, $err:literal) => { [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] 861 | ($name:ident, $a:ident, $b:ident, $byte_convert:expr_2021, $byte_ret:ty, $f:expr, $err:literal) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/pervade.rs:861:76 [INFO] [stdout] | [INFO] [stdout] 861 | ($name:ident, $a:ident, $b:ident, $byte_convert:expr, $byte_ret:ty, $f:expr, $err:literal) => { [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] 861 | ($name:ident, $a:ident, $b:ident, $byte_convert:expr, $byte_ret:ty, $f:expr_2021, $err:literal) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] ... [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:456:14 [INFO] [stdout] | [INFO] [stdout] 456 | ($xs:expr, $ys:expr, $ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr, $fill:expr, $arith:ident, $cmp:ident) => {{ [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] 456 | ($xs:expr_2021, $ys:expr, $ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr, $fill:expr, $arith:ident, $cmp:ident) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 710 | reduce_table_math!(reduce_table_nums, f64, num_num, num_scalar_fill); [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:456:24 [INFO] [stdout] | [INFO] [stdout] 456 | ($xs:expr, $ys:expr, $ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr, $fill:expr, $arith:ident, $cmp:ident) => {{ [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] 456 | ($xs:expr, $ys:expr_2021, $ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr, $fill:expr, $arith:ident, $cmp:ident) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:456:34 [INFO] [stdout] | [INFO] [stdout] 456 | ($xs:expr, $ys:expr, $ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr, $fill:expr, $arith:ident, $cmp:ident) => {{ [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] 456 | ($xs:expr, $ys:expr, $ff:expr_2021, $ff_complex:expr, $iden:expr, $ciden:expr, $fill:expr, $arith:ident, $cmp:ident) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:456:52 [INFO] [stdout] | [INFO] [stdout] 456 | ($xs:expr, $ys:expr, $ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr, $fill:expr, $arith:ident, $cmp:ident) => {{ [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] 456 | ($xs:expr, $ys:expr, $ff:expr, $ff_complex:expr_2021, $iden:expr, $ciden:expr, $fill:expr, $arith:ident, $cmp:ident) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:456:64 [INFO] [stdout] | [INFO] [stdout] 456 | ($xs:expr, $ys:expr, $ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr, $fill:expr, $arith:ident, $cmp:ident) => {{ [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] 456 | ($xs:expr, $ys:expr, $ff:expr, $ff_complex:expr, $iden:expr_2021, $ciden:expr, $fill:expr, $arith:ident, $cmp:ident) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:456:77 [INFO] [stdout] | [INFO] [stdout] 456 | ($xs:expr, $ys:expr, $ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr, $fill:expr, $arith:ident, $cmp:ident) => {{ [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] 456 | ($xs:expr, $ys:expr, $ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr_2021, $fill:expr, $arith:ident, $cmp:ident) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:456:89 [INFO] [stdout] | [INFO] [stdout] 456 | ($xs:expr, $ys:expr, $ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr, $fill:expr, $arith:ident, $cmp:ident) => {{ [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] 456 | ($xs:expr, $ys:expr, $ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr, $fill:expr_2021, $arith:ident, $cmp:ident) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this error originates in the macro `reduce_table_math` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:649:22 [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr, $ciden: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] 649 | ($ff:expr_2021, $ff_complex:expr, $iden:expr, $ciden:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:649:40 [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr, $ciden: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] 649 | ($ff:expr, $ff_complex:expr_2021, $iden:expr, $ciden:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:649:52 [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr, $ciden: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] 649 | ($ff:expr, $ff_complex:expr, $iden:expr_2021, $ciden:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/algorithm/table.rs:649:33 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:649:65 [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr, $ciden: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] 649 | ($ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:649:22 [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 710 | reduce_table_math!(reduce_table_nums, f64, num_num, num_scalar_fill); [INFO] [stdout] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: this warning originates in the macro `reduce_table_math` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr_2021, $ff_complex:expr, $iden:expr, $ciden:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 649 | ($ff:expr_2021, $ff_complex:expr_2021, $iden:expr_2021, $ciden:expr_2021) => { [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:649:40 [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 710 | reduce_table_math!(reduce_table_nums, f64, num_num, num_scalar_fill); [INFO] [stdout] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: this warning originates in the macro `reduce_table_math` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr_2021, $iden:expr, $ciden:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:649:52 [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 710 | reduce_table_math!(reduce_table_nums, f64, num_num, num_scalar_fill); [INFO] [stdout] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: this warning originates in the macro `reduce_table_math` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr_2021, $ciden:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] ... [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:649:65 [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 710 | reduce_table_math!(reduce_table_nums, f64, num_num, num_scalar_fill); [INFO] [stdout] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: this warning originates in the macro `reduce_table_math` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 710 | reduce_table_math!(reduce_table_nums, f64, num_num, num_scalar_fill); [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:649:22 [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 711 | reduce_table_math!(reduce_coms, Complex, com_x, complex_scalar_fill); [INFO] [stdout] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: this warning originates in the macro `reduce_table_math` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr_2021, $ff_complex:expr, $iden:expr, $ciden:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:649:40 [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 711 | reduce_table_math!(reduce_coms, Complex, com_x, complex_scalar_fill); [INFO] [stdout] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: this warning originates in the macro `reduce_table_math` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr_2021, $iden:expr, $ciden:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:649:52 [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 711 | reduce_table_math!(reduce_coms, Complex, com_x, complex_scalar_fill); [INFO] [stdout] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: this warning originates in the macro `reduce_table_math` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr_2021, $ciden:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:649:65 [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 711 | reduce_table_math!(reduce_coms, Complex, com_x, complex_scalar_fill); [INFO] [stdout] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: this warning originates in the macro `reduce_table_math` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/compile/modifier.rs:499:22 [INFO] [stdout] | [INFO] [stdout] 499 | ($instrs:expr, $sig: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] 499 | ($instrs:expr_2021, $sig:expr) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/compile/modifier.rs:499:33 [INFO] [stdout] | [INFO] [stdout] 499 | ($instrs:expr, $sig: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] 499 | ($instrs:expr, $sig:expr_2021) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this error originates in the macro `reduce_table_math` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/cowslice.rs:15:14 [INFO] [stdout] | [INFO] [stdout] 15 | ($($item: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] 15 | ($($item:expr_2021),* $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/cowslice.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | ($item:expr; $len: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] 18 | ($item:expr_2021; $len:expr) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/cowslice.rs:18:23 [INFO] [stdout] | [INFO] [stdout] 18 | ($item:expr; $len: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] 18 | ($item:expr; $len:expr_2021) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/algorithm/table.rs:649:56 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/ffi.rs:347:39 [INFO] [stdout] | [INFO] [stdout] 347 | ($c_ty:ty, $len_index: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] 347 | ($c_ty:ty, $len_index:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/ffi.rs:478:29 [INFO] [stdout] | [INFO] [stdout] 478 | ($ty:ty, $i:expr, $numty:ty ) => { [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] 478 | ($ty:ty, $i:expr_2021, $numty:ty ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 649 | ($ff:expr_2021, $ff_complex:expr_2021, $iden:expr_2021, $ciden:expr_2021) => { [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/ffi.rs:492:39 [INFO] [stdout] | [INFO] [stdout] 492 | ($c_ty:ty, $len_index:expr, $i:expr, $numty:ty $(,$numty2:ty)?) => { [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] 492 | ($c_ty:ty, $len_index:expr_2021, $i:expr, $numty:ty $(,$numty2:ty)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/ffi.rs:492:48 [INFO] [stdout] | [INFO] [stdout] 492 | ($c_ty:ty, $len_index:expr, $i:expr, $numty:ty $(,$numty2:ty)?) => { [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] 492 | ($c_ty:ty, $len_index:expr, $i:expr_2021, $numty:ty $(,$numty2:ty)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] ... [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/ffi.rs:831:23 [INFO] [stdout] | [INFO] [stdout] 831 | ($arr:expr, $ty:ty) => {{ [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] 831 | ($arr:expr_2021, $ty:ty) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 710 | reduce_table_math!(reduce_table_nums, f64, num_num, num_scalar_fill); [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/ffi.rs:837:23 [INFO] [stdout] | [INFO] [stdout] 837 | ($arr:expr, $ty:ty) => { [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] 837 | ($arr:expr_2021, $ty:ty) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/ffi.rs:1020:27 [INFO] [stdout] | [INFO] [stdout] 1020 | ($arr:expr, $ty:ty) => { [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] 1020 | ($arr:expr_2021, $ty:ty) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/format.rs:121:22 [INFO] [stdout] | [INFO] [stdout] 121 | $default: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] 121 | $default:expr_2021 [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/primitive/defs.rs:78:71 [INFO] [stdout] | [INFO] [stdout] 78 | ($(#[doc = $doc:literal] $(#[$attr:meta])* ($name:literal, $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] 78 | ($(#[doc = $doc:literal] $(#[$attr:meta])* ($name:literal, $value:expr_2021)),* $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/primitive/defs.rs:323:29 [INFO] [stdout] | [INFO] [stdout] 323 | $(($outputs: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] 323 | $(($outputs:expr_2021))? [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/primitive/defs.rs:324:30 [INFO] [stdout] | [INFO] [stdout] 324 | $([$mod_args: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] 324 | $([$mod_args:expr_2021])? [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this error originates in the macro `reduce_table_math` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/primitive/defs.rs:326:50 [INFO] [stdout] | [INFO] [stdout] 326 | $variant:ident, $class:ident, $names:expr $(,$purity:ident)* [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] 326 | $variant:ident, $class:ident, $names:expr_2021 $(,$purity:ident)* [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/primitive/defs.rs:2945:25 [INFO] [stdout] | [INFO] [stdout] 2945 | $(($outputs: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] 2945 | $(($outputs:expr_2021))? [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/primitive/defs.rs:2946:23 [INFO] [stdout] | [INFO] [stdout] 2946 | $([$margs: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] 2946 | $([$margs:expr_2021])?, [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/algorithm/table.rs:649:73 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/primitive/mod.rs:274:26 [INFO] [stdout] | [INFO] [stdout] 274 | ($name: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] 274 | ($name:ident, $value:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/profile.rs:15:13 [INFO] [stdout] | [INFO] [stdout] 15 | ($label: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] 15 | ($label:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 649 | ($ff:expr_2021, $ff_complex:expr_2021, $iden:expr_2021, $ciden:expr_2021) => { [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/sys.rs:58:38 [INFO] [stdout] | [INFO] [stdout] 58 | $args:literal$(($outputs:expr))?$([$mod_args: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] 58 | $args:literal$(($outputs:expr_2021))?$([$mod_args:expr])?, [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/sys.rs:58:58 [INFO] [stdout] | [INFO] [stdout] 58 | $args:literal$(($outputs:expr))?$([$mod_args: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] 58 | $args:literal$(($outputs:expr))?$([$mod_args:expr_2021])?, [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] ... [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/value.rs:1466:34 [INFO] [stdout] | [INFO] [stdout] 1466 | $([$(|$meta:ident| $pred:expr,)* $in_place:ident, $f:ident])? [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] 1466 | $([$(|$meta:ident| $pred:expr_2021,)* $in_place:ident, $f:ident])? [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 710 | reduce_table_math!(reduce_table_nums, f64, num_num, num_scalar_fill); [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/value.rs:1616:34 [INFO] [stdout] | [INFO] [stdout] 1616 | $([$(|$meta:ident| $pred:expr,)* $ip:ident, $f2:ident $(, $reset_meta:literal)?])* [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] 1616 | $([$(|$meta:ident| $pred:expr_2021,)* $ip:ident, $f2:ident $(, $reset_meta:literal)?])* [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] warning[E0133]: call to unsafe function `ecow::EcoVec::::extend_from_trusted` is unsafe and requires unsafe block [INFO] [stdout] --> src/cowslice.rs:248:32 [INFO] [stdout] | [INFO] [stdout] 248 | self.modify_end(|data| data.extend_from_trusted(iter)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: consult the function's documentation for information on how to avoid undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/cowslice.rs:243:5 [INFO] [stdout] | [INFO] [stdout] 243 | / pub unsafe fn extend_from_trusted(&mut self, iter: I) [INFO] [stdout] 244 | | where [INFO] [stdout] 245 | | I: IntoIterator, [INFO] [stdout] 246 | | I::IntoIter: ExactSizeIterator, [INFO] [stdout] | |_______________________________________^ [INFO] [stdout] = note: `--force-warn unsafe-op-in-unsafe-fn` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: call to deprecated safe function `std::env::set_var` is unsafe and requires unsafe block [INFO] [stdout] --> src/lsp.rs:631:17 [INFO] [stdout] | [INFO] [stdout] 631 | std::env::set_var("UIUA_NO_FORMAT", "1"); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function [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 #27970 [INFO] [stdout] = note: `--force-warn deprecated-safe-2024` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: you can wrap the call in an `unsafe` block if you can guarantee that the environment access only happens in single-threaded code [INFO] [stdout] | [INFO] [stdout] 631 + // TODO: Audit that the environment access only happens in single-threaded code. [INFO] [stdout] 632 ~ unsafe { std::env::set_var("UIUA_NO_FORMAT", "1") }; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/value.rs:338:10 [INFO] [stdout] | [INFO] [stdout] 338 | &*(self as *const Self as *const Repr) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/value.rs:337:5 [INFO] [stdout] | [INFO] [stdout] 337 | unsafe fn repr(&self) -> &Repr { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning[E0133]: dereference of raw pointer is unsafe and requires unsafe block [INFO] [stdout] --> src/value.rs:343:14 [INFO] [stdout] | [INFO] [stdout] 343 | &mut *(self as *mut Self as *mut Repr) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ dereference of raw pointer [INFO] [stdout] | [INFO] [stdout] = note: for more information, see issue #71668 [INFO] [stdout] = note: raw pointers may be null, dangling or unaligned; they can violate aliasing rules and cause data races: all of these are undefined behavior [INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default [INFO] [stdout] --> src/value.rs:342:5 [INFO] [stdout] | [INFO] [stdout] 342 | unsafe fn repr_mut(&mut self) -> &mut Repr { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/mod.rs:797:8 [INFO] [stdout] | [INFO] [stdout] 797 | if let Some(path) = solution.into_iter().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/algorithm/mod.rs:801:5 [INFO] [stdout] | [INFO] [stdout] 801 | } else { [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] 797 ~ match solution.into_iter().next() { Some(path) => { [INFO] [stdout] 798 | env.push(cost); [INFO] [stdout] 799 | env.push(Boxed(Value::from_row_values(path, env)?)); [INFO] [stdout] 800 | Ok(()) [INFO] [stdout] 801 ~ } _ => { [INFO] [stdout] 802 | Err(env.error("No path found")) [INFO] [stdout] 803 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this error originates in the macro `reduce_table_math` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/mod.rs:967:8 [INFO] [stdout] | [INFO] [stdout] 967 | if let Some((solution, cost)) = path { [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/algorithm/mod.rs:969:5 [INFO] [stdout] | [INFO] [stdout] 969 | } 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] 967 ~ match path { Some((solution, cost)) => { [INFO] [stdout] 968 | Ok((solution, cost as f64 / COST_MUL)) [INFO] [stdout] 969 ~ } _ => { [INFO] [stdout] 970 | Err(env.error("No path found")) [INFO] [stdout] 971 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/dyadic/mod.rs:1178:16 [INFO] [stdout] | [INFO] [stdout] 1178 | if let Some(fill) = &fill { [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/algorithm/dyadic/mod.rs:1181:13 [INFO] [stdout] | [INFO] [stdout] 1181 | } 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] 1178 ~ match &fill { Some(fill) => { [INFO] [stdout] 1179 | self.data [INFO] [stdout] 1180 | .extend_repeat(fill, new_shape.elements() - self.data.len()); [INFO] [stdout] 1181 ~ } _ => { [INFO] [stdout] 1182 | self.data.truncate(new_shape.elements()); [INFO] [stdout] 1183 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/dyadic/mod.rs:1207:20 [INFO] [stdout] | [INFO] [stdout] 1207 | if let Some(fill) = &fill { [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/algorithm/dyadic/mod.rs:1223:17 [INFO] [stdout] | [INFO] [stdout] 1223 | } 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] 1207 ~ match &fill { Some(fill) => { [INFO] [stdout] 1208 | let mut oob = false; [INFO] [stdout] ... [INFO] [stdout] 1222 | } [INFO] [stdout] 1223 ~ } _ => { [INFO] [stdout] 1224 | for ((c, i), s) in corner.iter().zip(&offset).zip(&self.shape).rev() { [INFO] [stdout] ... [INFO] [stdout] 1228 | new_data.extend_from_slice(&self.data[src_index..][..row_len]); [INFO] [stdout] 1229 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/algorithm/table.rs:649:18 [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/dyadic/mod.rs:1342:16 [INFO] [stdout] | [INFO] [stdout] 1342 | if let Some(first) = needle.data.first() { [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/algorithm/dyadic/mod.rs:1368:13 [INFO] [stdout] | [INFO] [stdout] 1368 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1342 ~ match needle.data.first() { Some(first) => { [INFO] [stdout] 1343 | // The jump is the number of elements to skip forward on a failed partial match [INFO] [stdout] ... [INFO] [stdout] 1367 | } [INFO] [stdout] 1368 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/dyadic/mod.rs:1397:39 [INFO] [stdout] | [INFO] [stdout] 1397 | let same = if let Some(searched_for) = needle.data.get(search_for_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/algorithm/dyadic/mod.rs:1399:25 [INFO] [stdout] | [INFO] [stdout] 1399 | } 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] 1397 ~ let same = match needle.data.get(search_for_index) { Some(searched_for) => { [INFO] [stdout] 1398 | haystack.data[searched_index].array_eq(searched_for) [INFO] [stdout] 1399 ~ } _ => { [INFO] [stdout] 1400 | false [INFO] [stdout] 1401 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 649 | ($ff:expr_2021, $ff_complex:expr_2021, $iden:expr_2021, $ciden:expr_2021) => { [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/dyadic/mod.rs:1757:32 [INFO] [stdout] | [INFO] [stdout] 1757 | let index = if let Some(raw_index) = (haystack.data.chunks_exact(haystack_item_len)) [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] | | [INFO] [stdout] 1758 | | .position(|ch| ch.iter().zip(&needle.data).all(|(a, b)| a.array_eq(b))) [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/algorithm/dyadic/mod.rs:1763:17 [INFO] [stdout] | [INFO] [stdout] 1763 | } 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] 1757 ~ let index = match (haystack.data.chunks_exact(haystack_item_len)) [INFO] [stdout] 1758 | .position(|ch| ch.iter().zip(&needle.data).all(|(a, b)| a.array_eq(b))) [INFO] [stdout] 1759 ~ { Some(raw_index) => { [INFO] [stdout] 1760 | let mut index = Vec::new(); [INFO] [stdout] 1761 | outer_hay_shape.flat_to_dims(raw_index, &mut index); [INFO] [stdout] 1762 | index [INFO] [stdout] 1763 ~ } _ => { [INFO] [stdout] 1764 | outer_hay_shape.to_vec() [INFO] [stdout] 1765 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^ [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/dyadic/combine.rs:815:12 [INFO] [stdout] | [INFO] [stdout] 815 | if let Some(row) = row_values.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/algorithm/dyadic/combine.rs:827:9 [INFO] [stdout] | [INFO] [stdout] 827 | } 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] 815 ~ match row_values.next() { Some(row) => { [INFO] [stdout] 816 | validate_size_impl( [INFO] [stdout] ... [INFO] [stdout] 826 | } [INFO] [stdout] 827 ~ } _ => { [INFO] [stdout] 828 | value.shape_mut().insert(0, 1); [INFO] [stdout] 829 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] ... [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/dyadic/combine.rs:868:12 [INFO] [stdout] | [INFO] [stdout] 868 | if let Some(row) = row_values.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/algorithm/dyadic/combine.rs:875:9 [INFO] [stdout] | [INFO] [stdout] 875 | } 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] 868 ~ match row_values.next() { Some(row) => { [INFO] [stdout] 869 | let total_elements = total_rows * arr.shape().iter().product::(); [INFO] [stdout] ... [INFO] [stdout] 874 | } [INFO] [stdout] 875 ~ } _ => { [INFO] [stdout] 876 | arr.shape.insert(0, 1); [INFO] [stdout] 877 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 711 | reduce_table_math!(reduce_coms, Complex, com_x, complex_scalar_fill); [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/dyadic/structure.rs:468:20 [INFO] [stdout] | [INFO] [stdout] 468 | if let Some(s) = self.shape.get_mut(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/algorithm/dyadic/structure.rs:474:17 [INFO] [stdout] | [INFO] [stdout] 474 | } else if filled { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 468 ~ match self.shape.get_mut(0) { Some(s) => { [INFO] [stdout] 469 | *s = if filled { [INFO] [stdout] ... [INFO] [stdout] 473 | }; [INFO] [stdout] 474 ~ } _ => if filled { [INFO] [stdout] 475 | self.shape.push(abs_taking); [INFO] [stdout] 476 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/encode.rs:599:11 [INFO] [stdout] | [INFO] [stdout] 599 | while let Some(frame) = decoder.read_next_frame()? { [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/algorithm/encode.rs:622:5 [INFO] [stdout] | [INFO] [stdout] 622 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/invert.rs:303:16 [INFO] [stdout] | [INFO] [stdout] 303 | if let Some((input, mut inv)) = pattern.invert_extract(curr_instrs, comp) { [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/algorithm/invert.rs:322:13 [INFO] [stdout] | [INFO] [stdout] 322 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 303 ~ match pattern.invert_extract(curr_instrs, comp) { Some((input, mut inv)) => { [INFO] [stdout] 304 | dbgln!( [INFO] [stdout] ... [INFO] [stdout] 321 | continue 'find_pattern; [INFO] [stdout] 322 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/invert.rs:622:16 [INFO] [stdout] | [INFO] [stdout] 622 | if let Some((input, (bef, aft))) = pattern.under_extract(curr_instrs, g_sig, comp) { [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/algorithm/invert.rs:640:13 [INFO] [stdout] | [INFO] [stdout] 640 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 622 ~ match pattern.under_extract(curr_instrs, g_sig, comp) { Some((input, (bef, aft))) => { [INFO] [stdout] 623 | dbgln!( [INFO] [stdout] ... [INFO] [stdout] 639 | continue 'find_pattern; [INFO] [stdout] 640 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/invert.rs:665:15 [INFO] [stdout] | [INFO] [stdout] 665 | while let Some(instr) = instrs.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/algorithm/invert.rs:695:9 [INFO] [stdout] | [INFO] [stdout] 695 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/invert.rs:764:12 [INFO] [stdout] | [INFO] [stdout] 764 | if let Some(under) = under_instrs(&befores, g_sig, comp) { [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/algorithm/invert.rs:766:9 [INFO] [stdout] | [INFO] [stdout] 766 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 764 ~ match under_instrs(&befores, g_sig, comp) { Some(under) => { [INFO] [stdout] 765 | return Some((input, under)); [INFO] [stdout] 766 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this error originates in the macro `reduce_table_math` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/invert.rs:806:16 [INFO] [stdout] | [INFO] [stdout] 806 | if let Some(inv) = prim_inverse(*prim, *span) { [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/algorithm/invert.rs:808:13 [INFO] [stdout] | [INFO] [stdout] 808 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 806 ~ match prim_inverse(*prim, *span) { Some(inv) => { [INFO] [stdout] 807 | return Some((input, eco_vec![inv])); [INFO] [stdout] 808 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/invert.rs:815:16 [INFO] [stdout] | [INFO] [stdout] 815 | if let Some(inv) = impl_prim_inverse(*prim, *span).map(|instr| eco_vec![instr]) { [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/algorithm/invert.rs:817:13 [INFO] [stdout] | [INFO] [stdout] 817 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 815 ~ match impl_prim_inverse(*prim, *span).map(|instr| eco_vec![instr]) { Some(inv) => { [INFO] [stdout] 816 | return Some((input, inv)); [INFO] [stdout] 817 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/invert.rs:851:16 [INFO] [stdout] | [INFO] [stdout] 851 | if let Some((temp_inp, inv)) = pattern.invert_extract(&temp_input, comp) { [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/algorithm/invert.rs:854:13 [INFO] [stdout] | [INFO] [stdout] 854 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 851 ~ match pattern.invert_extract(&temp_input, comp) { Some((temp_inp, inv)) => { [INFO] [stdout] 852 | instrs.extend(inv); [INFO] [stdout] 853 | return Some((&input[temp_input.len() - 1 - temp_inp.len()..], instrs)); [INFO] [stdout] 854 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/algorithm/table.rs:649:33 [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/invert.rs:860:12 [INFO] [stdout] | [INFO] [stdout] 860 | if let Some((input, inv)) = pattern.invert_extract(input, comp) { [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/algorithm/invert.rs:863:9 [INFO] [stdout] | [INFO] [stdout] 863 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 860 ~ match pattern.invert_extract(input, comp) { Some((input, inv)) => { [INFO] [stdout] 861 | instrs.extend(inv); [INFO] [stdout] 862 | return Some((input, instrs)); [INFO] [stdout] 863 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/invert.rs:1112:12 [INFO] [stdout] | [INFO] [stdout] 1112 | if let &Instr::Prim(Primitive::Join, span) = &input[i] { [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/algorithm/invert.rs:1129:9 [INFO] [stdout] | [INFO] [stdout] 1129 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1112 ~ match &input[i] { &Instr::Prim(Primitive::Join, span) => { [INFO] [stdout] 1113 | let Some(mut inverse) = invert_instrs(&input[..i], comp) else { [INFO] [stdout] ... [INFO] [stdout] 1128 | return Some((input, inverse)); [INFO] [stdout] 1129 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 649 | ($ff:expr_2021, $ff_complex:expr_2021, $iden:expr_2021, $ciden:expr_2021) => { [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/invert.rs:1139:12 [INFO] [stdout] | [INFO] [stdout] 1139 | if let &Instr::Prim(Primitive::Join, span) = &input[i] { [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/algorithm/invert.rs:1160:9 [INFO] [stdout] | [INFO] [stdout] 1160 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1139 ~ match &input[i] { &Instr::Prim(Primitive::Join, span) => { [INFO] [stdout] 1140 | let Some((input, before)) = Val.invert_extract(&input[..i], comp) else { [INFO] [stdout] ... [INFO] [stdout] 1159 | return Some((input, instrs)); [INFO] [stdout] 1160 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/invert.rs:1174:34 [INFO] [stdout] | [INFO] [stdout] 1174 | let (input, key, value) = if let Some((input, key)) = second { [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/algorithm/invert.rs:1176:5 [INFO] [stdout] | [INFO] [stdout] 1176 | } 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] 1174 ~ let (input, key, value) = match second { Some((input, key)) => { [INFO] [stdout] 1175 | (input, key, Some(first)) [INFO] [stdout] 1176 ~ } _ => { [INFO] [stdout] 1177 | (input, first, None) [INFO] [stdout] 1178 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] ... [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/invert.rs:1293:16 [INFO] [stdout] | [INFO] [stdout] 1293 | if let Some((inp, after)) = pattern.invert_extract(&input[..end], comp) { [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/algorithm/invert.rs:1312:13 [INFO] [stdout] | [INFO] [stdout] 1312 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1293 ~ match pattern.invert_extract(&input[..end], comp) { Some((inp, after)) => { [INFO] [stdout] 1294 | let input_pattern_match_count = input[..end] [INFO] [stdout] ... [INFO] [stdout] 1311 | return Some((inp, (before, after))); [INFO] [stdout] 1312 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 711 | reduce_table_math!(reduce_coms, Complex, com_x, complex_scalar_fill); [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/invert.rs:1483:24 [INFO] [stdout] | [INFO] [stdout] 1483 | if let Some((after, by_inv)) = pat.invert_extract(instrs, comp) { [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/algorithm/invert.rs:1494:21 [INFO] [stdout] | [INFO] [stdout] 1494 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1483 ~ match pat.invert_extract(instrs, comp) { Some((after, by_inv)) => { [INFO] [stdout] 1484 | if after.is_empty() { [INFO] [stdout] ... [INFO] [stdout] 1493 | } [INFO] [stdout] 1494 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/invert.rs:1525:16 [INFO] [stdout] | [INFO] [stdout] 1525 | if let Some((after, on_inv)) = pat.invert_extract(after, comp) { [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/algorithm/invert.rs:1546:13 [INFO] [stdout] | [INFO] [stdout] 1546 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1525 ~ match pat.invert_extract(after, comp) { Some((after, on_inv)) => { [INFO] [stdout] 1526 | if let Some(after_inv) = invert_instrs(after, comp) { [INFO] [stdout] ... [INFO] [stdout] 1545 | } [INFO] [stdout] 1546 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/invert.rs:1526:20 [INFO] [stdout] | [INFO] [stdout] 1526 | if let Some(after_inv) = invert_instrs(after, comp) { [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/algorithm/invert.rs:1545:17 [INFO] [stdout] | [INFO] [stdout] 1545 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1526 ~ match invert_instrs(after, comp) { Some(after_inv) => { [INFO] [stdout] 1527 | let mut instrs = eco_vec![start_instr.clone()]; [INFO] [stdout] ... [INFO] [stdout] 1544 | return Some((input, instrs)); [INFO] [stdout] 1545 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/invert.rs:2468:15 [INFO] [stdout] | [INFO] [stdout] 2468 | while let Some((inp, _)) = self.0.invert_extract(input, comp) { [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/algorithm/invert.rs:2470:9 [INFO] [stdout] | [INFO] [stdout] 2470 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/invert.rs:2791:12 [INFO] [stdout] | [INFO] [stdout] 2791 | if let Some((input, inverted)) = self.invert_extract(input, comp) { [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/algorithm/invert.rs:2793:9 [INFO] [stdout] | [INFO] [stdout] 2793 | } 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] 2791 ~ match self.invert_extract(input, comp) { Some((input, inverted)) => { [INFO] [stdout] 2792 | Some((input, (inverted, EcoVec::new()))) [INFO] [stdout] 2793 ~ } _ => { [INFO] [stdout] 2794 | None [INFO] [stdout] 2795 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: `impl Iterator)>` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/algorithm/map.rs:24:29 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn map_kv(&self) -> impl Iterator)> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, this lifetime is in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/algorithm/map.rs:24:19 [INFO] [stdout] | [INFO] [stdout] 24 | pub fn map_kv(&self) -> impl Iterator)> { [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] = note: `--force-warn impl-trait-overcaptures` implied by `--force-warn rust-2024-compatibility` [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 24 | pub fn map_kv(&self) -> impl Iterator)> + use { [INFO] [stdout] | ++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this error originates in the macro `reduce_table_math` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/map.rs:245:12 [INFO] [stdout] | [INFO] [stdout] 245 | if let Some(index) = orig_keys.get(&key) { [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/algorithm/map.rs:247:9 [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] 245 ~ match orig_keys.get(&key) { Some(index) => { [INFO] [stdout] 246 | self.insert_at(index.into(), key, original.row(index), env)?; [INFO] [stdout] 247 ~ } _ => { [INFO] [stdout] 248 | self.remove(key, env)?; [INFO] [stdout] 249 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/map.rs:318:16 [INFO] [stdout] | [INFO] [stdout] 318 | if let Value::Byte(keys) = &self.keys { [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/algorithm/map.rs:320:13 [INFO] [stdout] | [INFO] [stdout] 320 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 318 ~ match &self.keys { Value::Byte(keys) => { [INFO] [stdout] 319 | self.keys = Value::Num(keys.convert_ref()); [INFO] [stdout] 320 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/map.rs:626:16 [INFO] [stdout] | [INFO] [stdout] 626 | if let Some(replaced) = self.insert(key, index, ctx)? { [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/algorithm/map.rs:628:13 [INFO] [stdout] | [INFO] [stdout] 628 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 626 ~ match self.insert(key, index, ctx)? { Some(replaced) => { [INFO] [stdout] 627 | to_remove.push(replaced); [INFO] [stdout] 628 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/algorithm/table.rs:649:56 [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/map.rs:718:12 [INFO] [stdout] | [INFO] [stdout] 718 | if let Value::Byte(values) = b { [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/algorithm/map.rs:720:9 [INFO] [stdout] | [INFO] [stdout] 720 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 718 ~ match b { Value::Byte(values) => { [INFO] [stdout] 719 | b = Value::Num(values.convert_ref()); [INFO] [stdout] 720 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/monadic.rs:632:20 [INFO] [stdout] | [INFO] [stdout] 632 | if let Some(keys) = &mut meta.map_keys { [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/algorithm/monadic.rs:634:17 [INFO] [stdout] | [INFO] [stdout] 634 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 632 ~ match &mut meta.map_keys { Some(keys) => { [INFO] [stdout] 633 | keys.reverse(); [INFO] [stdout] 634 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 649 | ($ff:expr_2021, $ff_complex:expr_2021, $iden:expr_2021, $ciden:expr_2021) => { [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/reduce.rs:51:16 [INFO] [stdout] | [INFO] [stdout] 51 | if let Err(nums) = reduce_nums(prim, flipped, nums, depth, env) { [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/algorithm/reduce.rs:53:13 [INFO] [stdout] | [INFO] [stdout] 53 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 51 ~ match reduce_nums(prim, flipped, nums, depth, env) { Err(nums) => { [INFO] [stdout] 52 | return generic_reduce(f, Value::Num(nums), depth, env); [INFO] [stdout] 53 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/reduce.rs:57:16 [INFO] [stdout] | [INFO] [stdout] 57 | if let Err(nums) = reduce_coms(prim, flipped, nums, depth, env) { [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/algorithm/reduce.rs:59:13 [INFO] [stdout] | [INFO] [stdout] 59 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 57 ~ match reduce_coms(prim, flipped, nums, depth, env) { Err(nums) => { [INFO] [stdout] 58 | return generic_reduce(f, Value::Complex(nums), depth, env); [INFO] [stdout] 59 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] ... [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/reduce.rs:892:16 [INFO] [stdout] | [INFO] [stdout] 892 | if let (Ok(a), Ok(b)) = (&arrays[i], &arrays[j]) { [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/algorithm/reduce.rs:901:13 [INFO] [stdout] | [INFO] [stdout] 901 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 892 ~ match (&arrays[i], &arrays[j]) { (Ok(a), Ok(b)) => { [INFO] [stdout] 893 | if a.len() != b.len() { [INFO] [stdout] ... [INFO] [stdout] 900 | } [INFO] [stdout] 901 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 711 | reduce_table_math!(reduce_coms, Complex, com_x, complex_scalar_fill); [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/table.rs:35:24 [INFO] [stdout] | [INFO] [stdout] 35 | if let Some((Primitive::Add, _)) = f.as_flipped_primitive(&env.asm) { [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/algorithm/table.rs:54:21 [INFO] [stdout] | [INFO] [stdout] 54 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 35 ~ match f.as_flipped_primitive(&env.asm) { Some((Primitive::Add, _)) => { [INFO] [stdout] 36 | match (&xs, &ys) { [INFO] [stdout] ... [INFO] [stdout] 53 | } [INFO] [stdout] 54 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/table.rs:162:16 [INFO] [stdout] | [INFO] [stdout] 162 | if let Err((xs, ys)) = table_nums(prim, flipped, xs, ys, env)? { [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/algorithm/table.rs:164:13 [INFO] [stdout] | [INFO] [stdout] 164 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 162 ~ match table_nums(prim, flipped, xs, ys, env)? { Err((xs, ys)) => { [INFO] [stdout] 163 | return generic_table(f, Value::Num(xs), Value::Num(ys), env); [INFO] [stdout] 164 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/table.rs:224:16 [INFO] [stdout] | [INFO] [stdout] 224 | if let Err((xs, ys)) = table_coms(prim, flipped, xs, ys, env)? { [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/algorithm/table.rs:226:13 [INFO] [stdout] | [INFO] [stdout] 226 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 224 ~ match table_coms(prim, flipped, xs, ys, env)? { Err((xs, ys)) => { [INFO] [stdout] 225 | return generic_table(f, Value::Complex(xs), Value::Complex(ys), env); [INFO] [stdout] 226 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/table.rs:230:16 [INFO] [stdout] | [INFO] [stdout] 230 | if let Err((xs, ys)) = table_nums(prim, flipped, xs, ys, env)? { [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/algorithm/table.rs:232:13 [INFO] [stdout] | [INFO] [stdout] 232 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 230 ~ match table_nums(prim, flipped, xs, ys, env)? { Err((xs, ys)) => { [INFO] [stdout] 231 | return generic_table(f, Value::Num(xs), Value::Num(ys), env); [INFO] [stdout] 232 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/table.rs:236:16 [INFO] [stdout] | [INFO] [stdout] 236 | if let Err((xs, ys)) = table_nums(prim, flipped, xs, ys, env)? { [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/algorithm/table.rs:238:13 [INFO] [stdout] | [INFO] [stdout] 238 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 236 ~ match table_nums(prim, flipped, xs, ys, env)? { Err((xs, ys)) => { [INFO] [stdout] 237 | return generic_table(f, Value::Num(xs), Value::Num(ys), env); [INFO] [stdout] 238 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/table.rs:243:16 [INFO] [stdout] | [INFO] [stdout] 243 | if let Err((xs, ys)) = table_coms(prim, flipped, xs, ys, env)? { [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/algorithm/table.rs:245:13 [INFO] [stdout] | [INFO] [stdout] 245 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 243 ~ match table_coms(prim, flipped, xs, ys, env)? { Err((xs, ys)) => { [INFO] [stdout] 244 | return generic_table(f, Value::Complex(xs), Value::Complex(ys), env); [INFO] [stdout] 245 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this error originates in the macro `reduce_table_math` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/table.rs:250:16 [INFO] [stdout] | [INFO] [stdout] 250 | if let Err((xs, ys)) = table_coms(prim, flipped, xs, ys, env)? { [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/algorithm/table.rs:252:13 [INFO] [stdout] | [INFO] [stdout] 252 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 250 ~ match table_coms(prim, flipped, xs, ys, env)? { Err((xs, ys)) => { [INFO] [stdout] 251 | return generic_table(f, Value::Complex(xs), Value::Complex(ys), env); [INFO] [stdout] 252 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/table.rs:414:20 [INFO] [stdout] | [INFO] [stdout] 414 | if let Err((xs, ys)) = reduce_table_nums(fp, gp, f_flip, g_flip, xs, ys, env)? { [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/algorithm/table.rs:416:17 [INFO] [stdout] | [INFO] [stdout] 416 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 414 ~ match reduce_table_nums(fp, gp, f_flip, g_flip, xs, ys, env)? { Err((xs, ys)) => { [INFO] [stdout] 415 | return generic_reduce_table(f, g, Value::Num(xs), Value::Num(ys), env); [INFO] [stdout] 416 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/table.rs:419:20 [INFO] [stdout] | [INFO] [stdout] 419 | if let Err((xs, ys)) = reduce_coms(fp, gp, f_flip, g_flip, xs, ys, env)? { [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/algorithm/table.rs:421:17 [INFO] [stdout] | [INFO] [stdout] 421 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 419 ~ match reduce_coms(fp, gp, f_flip, g_flip, xs, ys, env)? { Err((xs, ys)) => { [INFO] [stdout] 420 | return generic_reduce_table(f, g, Value::Complex(xs), Value::Complex(ys), env); [INFO] [stdout] 421 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/algorithm/table.rs:649:73 [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/table.rs:425:20 [INFO] [stdout] | [INFO] [stdout] 425 | if let Err((xs, ys)) = reduce_table_nums(fp, gp, f_flip, g_flip, xs, ys, env)? { [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/algorithm/table.rs:427:17 [INFO] [stdout] | [INFO] [stdout] 427 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 425 ~ match reduce_table_nums(fp, gp, f_flip, g_flip, xs, ys, env)? { Err((xs, ys)) => { [INFO] [stdout] 426 | return generic_reduce_table(f, g, Value::Num(xs), Value::Num(ys), env); [INFO] [stdout] 427 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/table.rs:431:20 [INFO] [stdout] | [INFO] [stdout] 431 | if let Err((xs, ys)) = reduce_table_nums(fp, gp, f_flip, g_flip, xs, ys, env)? { [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/algorithm/table.rs:433:17 [INFO] [stdout] | [INFO] [stdout] 433 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 431 ~ match reduce_table_nums(fp, gp, f_flip, g_flip, xs, ys, env)? { Err((xs, ys)) => { [INFO] [stdout] 432 | return generic_reduce_table(f, g, Value::Num(xs), Value::Num(ys), env); [INFO] [stdout] 433 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 649 | ($ff:expr_2021, $ff_complex:expr_2021, $iden:expr_2021, $ciden:expr_2021) => { [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/table.rs:436:20 [INFO] [stdout] | [INFO] [stdout] 436 | if let Err((xs, ys)) = reduce_table_bytes(fp, gp, xs, ys, env) { [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/algorithm/table.rs:438:17 [INFO] [stdout] | [INFO] [stdout] 438 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 436 ~ match reduce_table_bytes(fp, gp, xs, ys, env) { Err((xs, ys)) => { [INFO] [stdout] 437 | return generic_reduce_table(f, g, Value::Byte(xs), Value::Byte(ys), env); [INFO] [stdout] 438 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/zip.rs:379:8 [INFO] [stdout] | [INFO] [stdout] 379 | if let Some((f, ..)) = f_dy_fast_fn(f.instrs(&env.asm), env) { [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/algorithm/zip.rs:384:5 [INFO] [stdout] | [INFO] [stdout] 384 | } 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] 379 ~ match f_dy_fast_fn(f.instrs(&env.asm), env) { Some((f, ..)) => { [INFO] [stdout] 380 | let xrank = xs.rank(); [INFO] [stdout] ... [INFO] [stdout] 383 | env.push(val); [INFO] [stdout] 384 ~ } _ => { [INFO] [stdout] 385 | let outputs = f.signature().outputs; [INFO] [stdout] ... [INFO] [stdout] 455 | } [INFO] [stdout] 456 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] ... [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/zip.rs:571:12 [INFO] [stdout] | [INFO] [stdout] 571 | if let Some((f, d)) = f_mon2_fast_fn(&f, env) { [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/algorithm/zip.rs:579:9 [INFO] [stdout] | [INFO] [stdout] 579 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 571 ~ match f_mon2_fast_fn(&f, env) { Some((f, d)) => { [INFO] [stdout] 572 | let maybe_through_boxes = matches!(&xs, Value::Box(arr) if arr.rank() <= d + 1); [INFO] [stdout] ... [INFO] [stdout] 578 | } [INFO] [stdout] 579 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 711 | reduce_table_math!(reduce_coms, Complex, com_x, complex_scalar_fill); [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/algorithm/zip.rs:688:20 [INFO] [stdout] | [INFO] [stdout] 688 | if let Some((f, a, b)) = f_dy_fast_fn(f.instrs(&env.asm), env) { [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/algorithm/zip.rs:692:17 [INFO] [stdout] | [INFO] [stdout] 692 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 688 ~ match f_dy_fast_fn(f.instrs(&env.asm), env) { Some((f, a, b)) => { [INFO] [stdout] 689 | let val = f(xs, ys, a + 1, b + 1, env)?; [INFO] [stdout] 690 | env.push(val); [INFO] [stdout] 691 | return Ok(()); [INFO] [stdout] 692 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/array.rs:159:16 [INFO] [stdout] | [INFO] [stdout] 159 | if let Some(keys) = meta.map_keys { [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/array.rs:166:13 [INFO] [stdout] | [INFO] [stdout] 166 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 159 ~ match meta.map_keys { Some(keys) => { [INFO] [stdout] 160 | if set_map_keys { [INFO] [stdout] ... [INFO] [stdout] 165 | } [INFO] [stdout] 166 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/array.rs:313:12 [INFO] [stdout] | [INFO] [stdout] 313 | if let Some(keys) = per_meta.map_keys { [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/array.rs:315:9 [INFO] [stdout] | [INFO] [stdout] 315 | } else if let Some(meta) = self.get_meta_mut() { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 313 ~ match per_meta.map_keys { Some(keys) => { [INFO] [stdout] 314 | self.meta_mut().map_keys = Some(keys); [INFO] [stdout] 315 ~ } _ => if let Some(meta) = self.get_meta_mut() { [INFO] [stdout] 316 | meta.map_keys = None; [INFO] [stdout] 317 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/array.rs:318:12 [INFO] [stdout] | [INFO] [stdout] 318 | if let Some(label) = per_meta.label { [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/array.rs:320:9 [INFO] [stdout] | [INFO] [stdout] 320 | } else if let Some(meta) = self.get_meta_mut() { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 318 ~ match per_meta.label { Some(label) => { [INFO] [stdout] 319 | self.meta_mut().label = Some(label); [INFO] [stdout] 320 ~ } _ => if let Some(meta) = self.get_meta_mut() { [INFO] [stdout] 321 | meta.label = None; [INFO] [stdout] 322 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/array.rs:1086:20 [INFO] [stdout] | [INFO] [stdout] 1086 | if let Some(map_keys) = map_keys { [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/array.rs:1089:17 [INFO] [stdout] | [INFO] [stdout] 1089 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1086 ~ match map_keys { Some(map_keys) => { [INFO] [stdout] 1087 | let keys = map_keys.normalized(); [INFO] [stdout] 1088 | return ArrayRep::Map(arr.shape, keys, T::make_collection(arr.data)); [INFO] [stdout] 1089 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/assembly.rs:121:16 [INFO] [stdout] | [INFO] [stdout] 121 | if let BindingKind::ArrayMacro(mut slice) = binding.kind { [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/assembly.rs:136:13 [INFO] [stdout] | [INFO] [stdout] 136 | } 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] 121 ~ match binding.kind { BindingKind::ArrayMacro(mut slice) => { [INFO] [stdout] 122 | if slice.start > 0 { [INFO] [stdout] ... [INFO] [stdout] 135 | false [INFO] [stdout] 136 ~ } _ => { [INFO] [stdout] 137 | true [INFO] [stdout] 138 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this error originates in the macro `reduce_table_math` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/assembly.rs:123:24 [INFO] [stdout] | [INFO] [stdout] 123 | if let Some((Instr::Comment(before), Instr::Comment(after))) = self [INFO] [stdout] | _________________________^ - [INFO] [stdout] | | ____________________________________________________________________________________| [INFO] [stdout] 124 | || .instrs [INFO] [stdout] | ||_______________________________- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 125 | | .get(slice.start - 1) [INFO] [stdout] 126 | | .zip(self.instrs.get(slice.end())) [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/assembly.rs:132:21 [INFO] [stdout] | [INFO] [stdout] 132 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 123 ~ match self [INFO] [stdout] 124 | .instrs [INFO] [stdout] 125 | .get(slice.start - 1) [INFO] [stdout] 126 | .zip(self.instrs.get(slice.end())) [INFO] [stdout] 127 ~ { Some((Instr::Comment(before), Instr::Comment(after))) => { [INFO] [stdout] 128 | if before.starts_with('(') && after.ends_with(')') { [INFO] [stdout] ... [INFO] [stdout] 131 | } [INFO] [stdout] 132 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/assembly.rs:474:12 [INFO] [stdout] | [INFO] [stdout] 474 | if let Some(outputs) = &self.outputs { [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/assembly.rs:479:9 [INFO] [stdout] | [INFO] [stdout] 479 | } 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] 474 ~ match &self.outputs { Some(outputs) => { [INFO] [stdout] 475 | format!( [INFO] [stdout] ... [INFO] [stdout] 478 | ) [INFO] [stdout] 479 ~ } _ => { [INFO] [stdout] 480 | format!("{} args", self.args.len()) [INFO] [stdout] 481 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: aborting due to 82 previous errors [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/assembly.rs:490:20 [INFO] [stdout] | [INFO] [stdout] 490 | if let Some(ty) = &output.ty { [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/assembly.rs:492:17 [INFO] [stdout] | [INFO] [stdout] 492 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 490 ~ match &output.ty { Some(ty) => { [INFO] [stdout] 491 | write!(f, ":{}", ty)?; [INFO] [stdout] 492 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/assembly.rs:502:16 [INFO] [stdout] | [INFO] [stdout] 502 | if let Some(ty) = &arg.ty { [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/assembly.rs:504:13 [INFO] [stdout] | [INFO] [stdout] 504 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 502 ~ match &arg.ty { Some(ty) => { [INFO] [stdout] 503 | write!(f, ":{}", ty)?; [INFO] [stdout] 504 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] For more information about this error, try `rustc --explain E0658`. [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/assembly.rs:567:20 [INFO] [stdout] | [INFO] [stdout] 567 | if let Some(curr) = curr_arg_name.take() { [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/assembly.rs:572:17 [INFO] [stdout] | [INFO] [stdout] 572 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 567 ~ match curr_arg_name.take() { Some(curr) => { [INFO] [stdout] 568 | args.push(DocCommentArg { [INFO] [stdout] ... [INFO] [stdout] 571 | }); [INFO] [stdout] 572 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Original diagnostics will follow. [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/assembly.rs:668:20 [INFO] [stdout] | [INFO] [stdout] 668 | if let Some(src) = self.files.get(&**path) { [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/assembly.rs:670:17 [INFO] [stdout] | [INFO] [stdout] 670 | } 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] 668 ~ match self.files.get(&**path) { Some(src) => { [INFO] [stdout] 669 | f(&src) [INFO] [stdout] 670 ~ } _ => { [INFO] [stdout] 671 | panic!("File {:?} not found", path) [INFO] [stdout] 672 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/assembly.rs:675:20 [INFO] [stdout] | [INFO] [stdout] 675 | if let Some(src) = self.strings.get(*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/assembly.rs:677:17 [INFO] [stdout] | [INFO] [stdout] 677 | } 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] 675 ~ match self.strings.get(*index) { Some(src) => { [INFO] [stdout] 676 | f(src) [INFO] [stdout] 677 ~ } _ => { [INFO] [stdout] 678 | panic!("String {} not found", index) [INFO] [stdout] 679 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/assembly.rs:682:20 [INFO] [stdout] | [INFO] [stdout] 682 | if let Some(src) = self.macros.get(span) { [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/assembly.rs:684:17 [INFO] [stdout] | [INFO] [stdout] 684 | } 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] 682 ~ match self.macros.get(span) { Some(src) => { [INFO] [stdout] 683 | f(src.value()) [INFO] [stdout] 684 ~ } _ => { [INFO] [stdout] 685 | panic!("Macro at {} not found", span) [INFO] [stdout] 686 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ast.rs:46:43 [INFO] [stdout] | [INFO] [stdout] 46 | (self.name.span.clone()).merge(if let Some(last_word) = self.words.last() { [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/ast.rs:48:9 [INFO] [stdout] | [INFO] [stdout] 48 | } 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] 46 ~ (self.name.span.clone()).merge(match self.words.last() { Some(last_word) => { [INFO] [stdout] 47 | last_word.span.clone() [INFO] [stdout] 48 ~ } _ => { [INFO] [stdout] 49 | self.arrow_span.clone() [INFO] [stdout] 50 ~ }}) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/mod.rs:530:16 [INFO] [stdout] | [INFO] [stdout] 530 | if let Err(e) = self.item(item, &mut prelude) { [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/compile/mod.rs:535:13 [INFO] [stdout] | [INFO] [stdout] 535 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 530 ~ match self.item(item, &mut prelude) { Err(e) => { [INFO] [stdout] 531 | if !item_errored { [INFO] [stdout] ... [INFO] [stdout] 534 | item_errored = true; [INFO] [stdout] 535 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/mod.rs:576:28 [INFO] [stdout] | [INFO] [stdout] 576 | if let Some(curr_com) = &mut prelude.comment { [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/compile/mod.rs:579:25 [INFO] [stdout] | [INFO] [stdout] 579 | } 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] 576 ~ match &mut prelude.comment { Some(curr_com) => { [INFO] [stdout] 577 | curr_com.push('\n'); [INFO] [stdout] 578 | curr_com.push_str(c); [INFO] [stdout] 579 ~ } _ => { [INFO] [stdout] 580 | prelude.comment = Some(c.as_str().into()); [INFO] [stdout] 581 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/mod.rs:659:39 [INFO] [stdout] | [INFO] [stdout] 659 | ... while let Some(slice) = self.asm.top_slices.last_mut() { [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/compile/mod.rs:669:33 [INFO] [stdout] | [INFO] [stdout] 669 | ... } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/mod.rs:884:12 [INFO] [stdout] | [INFO] [stdout] 884 | if let (Ok(canon_target), Ok(canon_base)) = (target.canonicalize(), base.canonicalize()) { [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/compile/mod.rs:886:9 [INFO] [stdout] | [INFO] [stdout] 886 | } 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] 884 ~ match (target.canonicalize(), base.canonicalize()) { (Ok(canon_target), Ok(canon_base)) => { [INFO] [stdout] 885 | pathdiff::diff_paths(canon_target, canon_base).unwrap_or(target) [INFO] [stdout] 886 ~ } _ => { [INFO] [stdout] 887 | pathdiff::diff_paths(&target, base).unwrap_or(target) [INFO] [stdout] 888 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/mod.rs:1151:20 [INFO] [stdout] | [INFO] [stdout] 1151 | if let Some((_, locals)) = self.ref_path(&path, in_macro_arg)? { [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/compile/mod.rs:1165:17 [INFO] [stdout] | [INFO] [stdout] 1165 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1151 ~ match self.ref_path(&path, in_macro_arg)? { Some((_, locals)) => { [INFO] [stdout] 1152 | self.add_error( [INFO] [stdout] ... [INFO] [stdout] 1164 | .insert(word.span.clone(), locals.last().unwrap().index); [INFO] [stdout] 1165 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/mod.rs:1405:24 [INFO] [stdout] | [INFO] [stdout] 1405 | if let Some(first) = pack.branches.into_iter().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/compile/mod.rs:1407:21 [INFO] [stdout] | [INFO] [stdout] 1407 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1405 ~ match pack.branches.into_iter().next() { Some(first) => { [INFO] [stdout] 1406 | self.word(first.map(Word::Func), call)?; [INFO] [stdout] 1407 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/mod.rs:1432:24 [INFO] [stdout] | [INFO] [stdout] 1432 | if let Some(new_func) = self.new_functions.last_mut() { [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/compile/mod.rs:1434:21 [INFO] [stdout] | [INFO] [stdout] 1434 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1432 ~ match self.new_functions.last_mut() { Some(new_func) => { [INFO] [stdout] 1433 | new_func.flags |= FunctionFlags::NO_INLINE; [INFO] [stdout] 1434 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/mod.rs:1437:24 [INFO] [stdout] | [INFO] [stdout] 1437 | if let Some(new_func) = self.new_functions.last_mut() { [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/compile/mod.rs:1439:21 [INFO] [stdout] | [INFO] [stdout] 1439 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1437 ~ match self.new_functions.last_mut() { Some(new_func) => { [INFO] [stdout] 1438 | new_func.flags |= FunctionFlags::TRACK_CALLER; [INFO] [stdout] 1439 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/mod.rs:1472:20 [INFO] [stdout] | [INFO] [stdout] 1472 | if let Instr::PushFunc(f) = &instrs[i - 1] { [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/compile/mod.rs:1494:17 [INFO] [stdout] | [INFO] [stdout] 1494 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1472 ~ match &instrs[i - 1] { Instr::PushFunc(f) => { [INFO] [stdout] 1473 | let body_sig = f.signature(); [INFO] [stdout] ... [INFO] [stdout] 1493 | } [INFO] [stdout] 1494 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/mod.rs:1557:12 [INFO] [stdout] | [INFO] [stdout] 1557 | if let Some((module, path_locals)) = self.ref_path(&r.path, r.in_macro_arg)? { [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] 1572 | } else if let Some(local) = self.find_name(&r.name.value, r.in_macro_arg) { [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/compile/mod.rs:1572:9 [INFO] [stdout] | [INFO] [stdout] 1572 | } else if let Some(local) = self.find_name(&r.name.value, r.in_macro_arg) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/compile/mod.rs:1574:9 [INFO] [stdout] | [INFO] [stdout] 1574 | } 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] 1557 ~ match self.ref_path(&r.path, r.in_macro_arg)? { Some((module, path_locals)) => { [INFO] [stdout] 1558 | if let Some(local) = module.names.get(&r.name.value).copied().or_else(|| { [INFO] [stdout] ... [INFO] [stdout] 1571 | } [INFO] [stdout] 1572 ~ } _ => { match self.find_name(&r.name.value, r.in_macro_arg) { Some(local) => { [INFO] [stdout] 1573 | Ok((Vec::new(), local)) [INFO] [stdout] 1574 ~ } _ => { [INFO] [stdout] 1575 | Err(self.fatal_error( [INFO] [stdout] ... [INFO] [stdout] 1578 | )) [INFO] [stdout] 1579 ~ }}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/mod.rs:1558:16 [INFO] [stdout] | [INFO] [stdout] 1558 | if let Some(local) = module.names.get(&r.name.value).copied().or_else(|| { [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] | | [INFO] [stdout] 1559 | | (r.name.value.strip_suffix('!')).and_then(|name| { [INFO] [stdout] 1560 | | module.names.get(name).copied().filter(|local| { [INFO] [stdout] 1561 | | matches!(&self.asm.bindings[local.index].kind, BindingKind::Module(_)) [INFO] [stdout] 1562 | | }) [INFO] [stdout] 1563 | | }) [INFO] [stdout] 1564 | | }) { [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/compile/mod.rs:1566:13 [INFO] [stdout] | [INFO] [stdout] 1566 | } 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] 1558 ~ match module.names.get(&r.name.value).copied().or_else(|| { [INFO] [stdout] 1559 | (r.name.value.strip_suffix('!')).and_then(|name| { [INFO] [stdout] ... [INFO] [stdout] 1563 | }) [INFO] [stdout] 1564 ~ }) { Some(local) => { [INFO] [stdout] 1565 | Ok((path_locals, local)) [INFO] [stdout] 1566 ~ } _ => { [INFO] [stdout] 1567 | Err(self.fatal_error( [INFO] [stdout] ... [INFO] [stdout] 1570 | )) [INFO] [stdout] 1571 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/mod.rs:1583:16 [INFO] [stdout] | [INFO] [stdout] 1583 | if let Some(local) = self.scope.names.get(name).copied() { [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/compile/mod.rs:1585:13 [INFO] [stdout] | [INFO] [stdout] 1585 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1583 ~ match self.scope.names.get(name).copied() { Some(local) => { [INFO] [stdout] 1584 | return Some(local); [INFO] [stdout] 1585 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/mod.rs:1595:16 [INFO] [stdout] | [INFO] [stdout] 1595 | if let Some(local) = scope.names.get(name).copied() { [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/compile/mod.rs:1597:13 [INFO] [stdout] | [INFO] [stdout] 1597 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1595 ~ match scope.names.get(name).copied() { Some(local) => { [INFO] [stdout] 1596 | return Some(local); [INFO] [stdout] 1597 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/mod.rs:1711:12 [INFO] [stdout] | [INFO] [stdout] 1711 | if let Some(curr) = (self.current_bindings.last_mut()).filter(|curr| curr.name == ident) { [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] 1732 | } else if let Some(local) = self.find_name(&ident, skip_local) { [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] 1736 | } else if let Some(constant) = CONSTANTS.iter().find(|c| c.name == ident) { [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/compile/mod.rs:1732:9 [INFO] [stdout] | [INFO] [stdout] 1732 | } else if let Some(local) = self.find_name(&ident, skip_local) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/compile/mod.rs:1736:9 [INFO] [stdout] | [INFO] [stdout] 1736 | } else if let Some(constant) = CONSTANTS.iter().find(|c| c.name == ident) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/compile/mod.rs:1756:9 [INFO] [stdout] | [INFO] [stdout] 1756 | } 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] 1711 ~ match (self.current_bindings.last_mut()).filter(|curr| curr.name == ident) { Some(curr) => { [INFO] [stdout] 1712 | // Name is a recursive call [INFO] [stdout] ... [INFO] [stdout] 1731 | } [INFO] [stdout] 1732 ~ } _ => { match self.find_name(&ident, skip_local) { Some(local) => { [INFO] [stdout] 1733 | // Name exists in scope [INFO] [stdout] 1734 | (self.code_meta.global_references).insert(span.clone(), local.index); [INFO] [stdout] 1735 | self.global_index(local.index, span, call); [INFO] [stdout] 1736 ~ } _ => { match CONSTANTS.iter().find(|c| c.name == ident) { Some(constant) => { [INFO] [stdout] 1737 | // Name is a built-in constant [INFO] [stdout] ... [INFO] [stdout] 1755 | } [INFO] [stdout] 1756 ~ } _ => { [INFO] [stdout] 1757 | return Err(self.fatal_error(span, format!("Unknown identifier `{ident}`"))); [INFO] [stdout] 1758 ~ }}}}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/mod.rs:1812:20 [INFO] [stdout] | [INFO] [stdout] 1812 | if let Some(local) = m.names.get("Call").or_else(|| m.names.get("New")) { [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/compile/mod.rs:1818:17 [INFO] [stdout] | [INFO] [stdout] 1818 | } 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] 1812 ~ match m.names.get("Call").or_else(|| m.names.get("New")) { Some(local) => { [INFO] [stdout] 1813 | self.code_meta.global_references.remove(&span); [INFO] [stdout] ... [INFO] [stdout] 1817 | self.global_index(local.index, span, call); [INFO] [stdout] 1818 ~ } _ => { [INFO] [stdout] 1819 | self.add_error(span, "Cannot import module item here."); [INFO] [stdout] 1820 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/mod.rs:1830:16 [INFO] [stdout] | [INFO] [stdout] 1830 | if let Some( [INFO] [stdout] | ________________^ [INFO] [stdout] 1831 | | word @ Sp { [INFO] [stdout] 1832 | | value: Word::Ref(_), [INFO] [stdout] 1833 | | .. [INFO] [stdout] 1834 | | }, [INFO] [stdout] 1835 | | ) = func.lines.iter().flatten().find(|w| w.value.is_code()) [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/compile/mod.rs:1838:13 [INFO] [stdout] | [INFO] [stdout] 1838 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1830 ~ match func.lines.iter().flatten().find(|w| w.value.is_code()) [INFO] [stdout] 1831 ~ { Some( [INFO] [stdout] 1832 + word @ Sp { [INFO] [stdout] 1833 + value: Word::Ref(_), [INFO] [stdout] 1834 + .. [INFO] [stdout] 1835 + }, [INFO] [stdout] 1836 ~ ) => { [INFO] [stdout] 1837 | return self.word(word.clone(), call); [INFO] [stdout] 1838 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/mod.rs:1892:20 [INFO] [stdout] | [INFO] [stdout] 1892 | if let Some(declared_sig) = &func.signature { [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/compile/mod.rs:1905:17 [INFO] [stdout] | [INFO] [stdout] 1905 | } else if require_valid_sig { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1892 ~ match &func.signature { Some(declared_sig) => { [INFO] [stdout] 1893 | if e.kind == SigCheckErrorKind::Ambiguous { [INFO] [stdout] ... [INFO] [stdout] 1904 | } [INFO] [stdout] 1905 ~ } _ => if require_valid_sig { [INFO] [stdout] 1906 | return Err(self.fatal_error( [INFO] [stdout] ... [INFO] [stdout] 1918 | None [INFO] [stdout] 1919 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/mod.rs:2411:28 [INFO] [stdout] | [INFO] [stdout] 2411 | if let Some(new_instrs) = &mut new_instrs { [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/compile/mod.rs:2413:25 [INFO] [stdout] | [INFO] [stdout] 2413 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 2411 ~ match &mut new_instrs { Some(new_instrs) => { [INFO] [stdout] 2412 | new_instrs.extend(section.iter().cloned()); [INFO] [stdout] 2413 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/binding.rs:13:16 [INFO] [stdout] | [INFO] [stdout] 13 | if let Some(r) = binding.words.iter().find_map(|w| match &w.value { [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] | | [INFO] [stdout] 14 | | Word::Ref(r) if ident_modifier_args(&r.name.value) == 0 => Some(r), [INFO] [stdout] 15 | | _ => None, [INFO] [stdout] 16 | | }) { [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/compile/binding.rs:30:13 [INFO] [stdout] | [INFO] [stdout] 30 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 13 ~ match binding.words.iter().find_map(|w| match &w.value { [INFO] [stdout] 14 | Word::Ref(r) if ident_modifier_args(&r.name.value) == 0 => Some(r), [INFO] [stdout] 15 | _ => None, [INFO] [stdout] 16 ~ }) { Some(r) => { [INFO] [stdout] 17 | if let Ok((path_locals, local)) = self.ref_local(r) { [INFO] [stdout] ... [INFO] [stdout] 29 | } [INFO] [stdout] 30 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/binding.rs:17:20 [INFO] [stdout] | [INFO] [stdout] 17 | if let Ok((path_locals, local)) = self.ref_local(r) { [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/compile/binding.rs:29:17 [INFO] [stdout] | [INFO] [stdout] 29 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 17 ~ match self.ref_local(r) { Ok((path_locals, local)) => { [INFO] [stdout] 18 | self.validate_local(&r.name.value, local, &r.name.span); [INFO] [stdout] ... [INFO] [stdout] 28 | return Ok(()); [INFO] [stdout] 29 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/binding.rs:73:24 [INFO] [stdout] | [INFO] [stdout] 73 | if let Some(sig) = binding.signature { [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/compile/binding.rs:75:21 [INFO] [stdout] | [INFO] [stdout] 75 | } 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] 73 ~ match binding.signature { Some(sig) => { [INFO] [stdout] 74 | sig.value [INFO] [stdout] 75 ~ } _ => { [INFO] [stdout] 76 | self.add_error( [INFO] [stdout] ... [INFO] [stdout] 80 | Signature::new(1, 1) [INFO] [stdout] 81 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/binding.rs:150:24 [INFO] [stdout] | [INFO] [stdout] 150 | if let Ok((path_locals, local)) = self.ref_local(r) { [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/compile/binding.rs:157:21 [INFO] [stdout] | [INFO] [stdout] 157 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 150 ~ match self.ref_local(r) { Ok((path_locals, local)) => { [INFO] [stdout] 151 | self.validate_local(&r.name.value, local, &r.name.span); [INFO] [stdout] ... [INFO] [stdout] 156 | } [INFO] [stdout] 157 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/binding.rs:160:24 [INFO] [stdout] | [INFO] [stdout] 160 | if let Ok(Some((_, path_locals))) = self.ref_path(path, *in_macro_arg) { [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/compile/binding.rs:165:21 [INFO] [stdout] | [INFO] [stdout] 165 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 160 ~ match self.ref_path(path, *in_macro_arg) { Ok(Some((_, path_locals))) => { [INFO] [stdout] 161 | for (local, comp) in path_locals.into_iter().zip(path) { [INFO] [stdout] ... [INFO] [stdout] 164 | } [INFO] [stdout] 165 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/binding.rs:185:28 [INFO] [stdout] | [INFO] [stdout] 185 | if let Span::Code(dup_span) = comp.get_span(*span) { [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/compile/binding.rs:197:25 [INFO] [stdout] | [INFO] [stdout] 197 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 185 ~ match comp.get_span(*span) { Span::Code(dup_span) => { [INFO] [stdout] 186 | if let Ok(rest_sig) = instrs_signature(rest) { [INFO] [stdout] ... [INFO] [stdout] 196 | } [INFO] [stdout] 197 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/binding.rs:254:20 [INFO] [stdout] | [INFO] [stdout] 254 | if let [Instr::PushFunc(f)] = new_func.instrs.as_slice() { [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/compile/binding.rs:265:17 [INFO] [stdout] | [INFO] [stdout] 265 | } else if sig == (0, 1) && !is_setinv && !is_setund { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 254 ~ match new_func.instrs.as_slice() { [Instr::PushFunc(f)] => { [INFO] [stdout] 255 | // Binding is a single inline function [INFO] [stdout] ... [INFO] [stdout] 264 | self.compile_bind_function(name, local, func, spandex, comment.as_deref())?; [INFO] [stdout] 265 ~ } _ => if sig == (0, 1) && !is_setinv && !is_setund { [INFO] [stdout] 266 | if let &[Instr::Prim(Primitive::Tag, span)] = new_func.instrs.as_slice() { [INFO] [stdout] ... [INFO] [stdout] 365 | self.compile_bind_function(name, local, func, spandex, comment.as_deref())?; [INFO] [stdout] 366 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/binding.rs:274:34 [INFO] [stdout] | [INFO] [stdout] 274 | let val = if let [Instr::Push(v)] = new_func.instrs.as_slice() { [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/compile/binding.rs:276:21 [INFO] [stdout] | [INFO] [stdout] 276 | } 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] 274 ~ let val = match new_func.instrs.as_slice() { [Instr::Push(v)] => { [INFO] [stdout] 275 | Some(v.clone()) [INFO] [stdout] 276 ~ } _ => { [INFO] [stdout] 277 | match self.comptime_instrs(new_func.instrs.clone()) { [INFO] [stdout] ... [INFO] [stdout] 284 | } [INFO] [stdout] 285 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/binding.rs:332:24 [INFO] [stdout] | [INFO] [stdout] 332 | if let Some(Instr::Push(val)) = self.asm.instrs.last().filter(|_| { [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] | | [INFO] [stdout] 333 | | (self.asm.top_slices.last()) [INFO] [stdout] 334 | | .is_some_and(|slice| slice.end() == self.asm.instrs.len()) [INFO] [stdout] 335 | | }) { [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/compile/binding.rs:350:21 [INFO] [stdout] | [INFO] [stdout] 350 | } else if sig == (0, 0) { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 332 ~ match self.asm.instrs.last().filter(|_| { [INFO] [stdout] 333 | (self.asm.top_slices.last()) [INFO] [stdout] 334 | .is_some_and(|slice| slice.end() == self.asm.instrs.len()) [INFO] [stdout] 335 ~ }) { Some(Instr::Push(val)) => { [INFO] [stdout] 336 | let val = val.clone(); [INFO] [stdout] ... [INFO] [stdout] 349 | } [INFO] [stdout] 350 ~ } _ => if sig == (0, 0) { [INFO] [stdout] 351 | let func = make_fn(new_func, sig, self); [INFO] [stdout] ... [INFO] [stdout] 360 | self.asm.top_slices.push(FuncSlice { start, len: 1 }); [INFO] [stdout] 361 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/binding.rs:391:20 [INFO] [stdout] | [INFO] [stdout] 391 | if let Some(sig) = binding.signature { [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/compile/binding.rs:407:17 [INFO] [stdout] | [INFO] [stdout] 407 | } 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] 391 ~ match binding.signature { Some(sig) => { [INFO] [stdout] 392 | // Binding is a normal function [INFO] [stdout] ... [INFO] [stdout] 406 | } [INFO] [stdout] 407 ~ } _ => { [INFO] [stdout] 408 | self.add_error( [INFO] [stdout] ... [INFO] [stdout] 411 | ); [INFO] [stdout] 412 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/binding.rs:435:28 [INFO] [stdout] | [INFO] [stdout] 435 | if let Some(mut local) = module.names.get(&item.value).copied() { [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/compile/binding.rs:440:25 [INFO] [stdout] | [INFO] [stdout] 440 | } 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] 435 ~ match module.names.get(&item.value).copied() { Some(mut local) => { [INFO] [stdout] 436 | local.public = false; [INFO] [stdout] ... [INFO] [stdout] 439 | self.scope.names.insert(item.value, local); [INFO] [stdout] 440 ~ } _ => { [INFO] [stdout] 441 | self.add_error( [INFO] [stdout] ... [INFO] [stdout] 444 | ); [INFO] [stdout] 445 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/binding.rs:469:20 [INFO] [stdout] | [INFO] [stdout] 469 | if let Some(line) = &m.imports { [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/compile/binding.rs:474:17 [INFO] [stdout] | [INFO] [stdout] 474 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 469 ~ match &m.imports { Some(line) => { [INFO] [stdout] 470 | self.add_error( [INFO] [stdout] ... [INFO] [stdout] 473 | ); [INFO] [stdout] 474 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/binding.rs:507:16 [INFO] [stdout] | [INFO] [stdout] 507 | if let Some(local) = self [INFO] [stdout] | _________________^ - [INFO] [stdout] | | __________________________________| [INFO] [stdout] 508 | || .imports [INFO] [stdout] | ||________________________- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 509 | | .get(&module_path) [INFO] [stdout] 510 | | .and_then(|i| i.names.get(item.value.as_str())) [INFO] [stdout] 511 | | .copied() [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/compile/binding.rs:522:13 [INFO] [stdout] | [INFO] [stdout] 522 | } 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] 507 ~ match self [INFO] [stdout] 508 | .imports [INFO] [stdout] ... [INFO] [stdout] 511 | .copied() [INFO] [stdout] 512 ~ { Some(local) => { [INFO] [stdout] 513 | self.validate_local(&item.value, local, &item.span); [INFO] [stdout] ... [INFO] [stdout] 521 | ); [INFO] [stdout] 522 ~ } _ => { [INFO] [stdout] 523 | self.add_error( [INFO] [stdout] ... [INFO] [stdout] 530 | ); [INFO] [stdout] 531 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/modifier.rs:102:12 [INFO] [stdout] | [INFO] [stdout] 102 | if let Some(modified) = self.desugar_function_pack_inner(modifier, operand)? { [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] 105 | } else if let Word::Pack(pack @ FunctionPack { angled: false, .. }) = &operand.value { [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/compile/modifier.rs:105:9 [INFO] [stdout] | [INFO] [stdout] 105 | } else if let Word::Pack(pack @ FunctionPack { angled: false, .. }) = &operand.value { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/compile/modifier.rs:146:9 [INFO] [stdout] | [INFO] [stdout] 146 | } 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] 102 ~ match self.desugar_function_pack_inner(modifier, operand)? { Some(modified) => { [INFO] [stdout] 103 | self.modified(modified, call)?; [INFO] [stdout] 104 | Ok(true) [INFO] [stdout] 105 ~ } _ => { match &operand.value { Word::Pack(pack @ FunctionPack { angled: false, .. }) => { [INFO] [stdout] 106 | match &modifier.value { [INFO] [stdout] ... [INFO] [stdout] 145 | } [INFO] [stdout] 146 ~ } _ => { [INFO] [stdout] 147 | Ok(false) [INFO] [stdout] 148 ~ }}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/modifier.rs:134:28 [INFO] [stdout] | [INFO] [stdout] 134 | if let Ok((_, local)) = self.ref_local(name) { [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/compile/modifier.rs:138:25 [INFO] [stdout] | [INFO] [stdout] 138 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 134 ~ match self.ref_local(name) { Ok((_, local)) => { [INFO] [stdout] 135 | if self.array_macros.contains_key(&local.index) { [INFO] [stdout] 136 | return Ok(false); [INFO] [stdout] 137 | } [INFO] [stdout] 138 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/modifier.rs:229:20 [INFO] [stdout] | [INFO] [stdout] 229 | if let Some(mut mac) = self.stack_macros.get(&local.index).cloned() { [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] 250 | } else if let Some(mac) = self.array_macros.get(&local.index).cloned() { [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] 375 | (self.asm.bindings.get(local.index)).and_then(|binfo| match &binfo.kind { [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/compile/modifier.rs:250:17 [INFO] [stdout] | [INFO] [stdout] 250 | } else if let Some(mac) = self.array_macros.get(&local.index).cloned() { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/compile/modifier.rs:374:17 [INFO] [stdout] | [INFO] [stdout] 374 | } else if let Some(m) = [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/compile/modifier.rs:386:17 [INFO] [stdout] | [INFO] [stdout] 386 | } 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] 229 ~ match self.stack_macros.get(&local.index).cloned() { Some(mut mac) => { [INFO] [stdout] 230 | // Stack macros [INFO] [stdout] ... [INFO] [stdout] 249 | } [INFO] [stdout] 250 ~ } _ => { match self.array_macros.get(&local.index).cloned() { Some(mac) => { [INFO] [stdout] 251 | // Array macros [INFO] [stdout] ... [INFO] [stdout] 373 | })?; [INFO] [stdout] 374 ~ } _ => { match (self.asm.bindings.get(local.index)).and_then(|binfo| match &binfo.kind { [INFO] [stdout] 375 | BindingKind::Module(m) => Some(m), [INFO] [stdout] 376 | _ => None, [INFO] [stdout] 377 | }) [INFO] [stdout] 378 ~ { Some(m) => { [INFO] [stdout] 379 | // Module import macro [INFO] [stdout] ... [INFO] [stdout] 384 | })?; [INFO] [stdout] 385 ~ } _ => { [INFO] [stdout] 386 | return Err(self.fatal_error( [INFO] [stdout] ... [INFO] [stdout] 392 | )); [INFO] [stdout] 393 ~ }}}}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/modifier.rs:350:28 [INFO] [stdout] | [INFO] [stdout] 350 | if let Ok(s) = val.as_string(env, "") { [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/compile/modifier.rs:352:25 [INFO] [stdout] | [INFO] [stdout] 352 | } 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] 350 ~ match val.as_string(env, "") { Ok(s) => { [INFO] [stdout] 351 | code = s; [INFO] [stdout] 352 ~ } _ => { [INFO] [stdout] 353 | for row in val.into_rows() { [INFO] [stdout] ... [INFO] [stdout] 359 | } [INFO] [stdout] 360 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/modifier.rs:415:16 [INFO] [stdout] | [INFO] [stdout] 415 | if let Word::Modified(m) = &op.value { [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/compile/modifier.rs:436:13 [INFO] [stdout] | [INFO] [stdout] 436 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 415 ~ match &op.value { Word::Modified(m) => { [INFO] [stdout] 416 | if (matches!(m.modifier.value, Modifier::Primitive(Primitive::Fork)) [INFO] [stdout] ... [INFO] [stdout] 435 | } [INFO] [stdout] 436 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/modifier.rs:466:20 [INFO] [stdout] | [INFO] [stdout] 466 | if let Ok((_, local)) = self.ref_local(r) { [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/compile/modifier.rs:476:17 [INFO] [stdout] | [INFO] [stdout] 476 | } 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] 466 ~ match self.ref_local(r) { Ok((_, local)) => { [INFO] [stdout] 467 | match &self.asm.bindings[local.index].kind { [INFO] [stdout] ... [INFO] [stdout] 475 | } [INFO] [stdout] 476 ~ } _ => { [INFO] [stdout] 477 | true [INFO] [stdout] 478 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/modifier.rs:522:32 [INFO] [stdout] | [INFO] [stdout] 522 | ... if let Some(Instr::Prim(Dup, dup_span)) = [INFO] [stdout] | __________________________^ [INFO] [stdout] 523 | | ... self.new_functions.last().and_then(|nf| nf.instrs.last()) [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/compile/modifier.rs:533:29 [INFO] [stdout] | [INFO] [stdout] 533 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 522 ~ match self.new_functions.last().and_then(|nf| nf.instrs.last()) [INFO] [stdout] 523 ~ { Some(Instr::Prim(Dup, dup_span)) => { [INFO] [stdout] 524 | if let Span::Code(dup_span) = self.get_span(*dup_span) { [INFO] [stdout] ... [INFO] [stdout] 531 | } [INFO] [stdout] 532 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/modifier.rs:525:36 [INFO] [stdout] | [INFO] [stdout] 525 | ... if let Span::Code(dup_span) = self.get_span(*dup_span) { [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/compile/modifier.rs:532:33 [INFO] [stdout] | [INFO] [stdout] 532 | ... } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 525 ~ match self.get_span(*dup_span) { Span::Code(dup_span) => { [INFO] [stdout] 526 | let span = modified.modifier.span.clone().merge(dup_span); [INFO] [stdout] ... [INFO] [stdout] 531 | ); [INFO] [stdout] 532 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/modifier.rs:836:28 [INFO] [stdout] | [INFO] [stdout] 836 | if let [.., Instr::Push(val)] = curr.instrs.as_slice() { [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/compile/modifier.rs:847:25 [INFO] [stdout] | [INFO] [stdout] 847 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 836 ~ match curr.instrs.as_slice() { [.., Instr::Push(val)] => { [INFO] [stdout] 837 | if let Ok(n) = val.as_int(&IgnoreError, "") { [INFO] [stdout] ... [INFO] [stdout] 846 | } [INFO] [stdout] 847 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/modifier.rs:849:24 [INFO] [stdout] | [INFO] [stdout] 849 | if let Some((inverse, inv_sig)) = invert_instrs(&new_func.instrs, self) [INFO] [stdout] | ________________________^ - [INFO] [stdout] | |_______________________________________________________| [INFO] [stdout] 850 | || .and_then(|inv| instrs_signature(&inv).ok().map(|sig| (inv, sig))) [INFO] [stdout] 851 | || .filter(|(_, inv_sig)| sig.is_compatible_with(*inv_sig)) [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] | [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/compile/modifier.rs:868:21 [INFO] [stdout] | [INFO] [stdout] 868 | } 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] 849 ~ match invert_instrs(&new_func.instrs, self) [INFO] [stdout] 850 | .and_then(|inv| instrs_signature(&inv).ok().map(|sig| (inv, sig))) [INFO] [stdout] 851 | .filter(|(_, inv_sig)| sig.is_compatible_with(*inv_sig)) [INFO] [stdout] 852 ~ { Some((inverse, inv_sig)) => { [INFO] [stdout] 853 | // If an inverse for repeat's function exists we use a special [INFO] [stdout] ... [INFO] [stdout] 867 | ] [INFO] [stdout] 868 ~ } _ => { [INFO] [stdout] 869 | let id = FunctionId::Anonymous(modified.modifier.span.clone()); [INFO] [stdout] 870 | let func = self.make_function(id, sig, new_func); [INFO] [stdout] 871 | eco_vec![Instr::PushFunc(func), Instr::Prim(Repeat, spandex)] [INFO] [stdout] 872 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/modifier.rs:895:20 [INFO] [stdout] | [INFO] [stdout] 895 | if let Some(inverted) = invert_instrs(&new_func.instrs, 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/compile/modifier.rs:898:17 [INFO] [stdout] | [INFO] [stdout] 898 | } 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] 895 ~ match invert_instrs(&new_func.instrs, self) { Some(inverted) => { [INFO] [stdout] 896 | let sig = self.sig_of(&inverted, &span)?; [INFO] [stdout] 897 | finish!(inverted, sig); [INFO] [stdout] 898 ~ } _ => { [INFO] [stdout] 899 | return Err(self.fatal_error(span, "No inverse found")); [INFO] [stdout] 900 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/modifier.rs:926:20 [INFO] [stdout] | [INFO] [stdout] 926 | if let Some((f_before, f_after)) = under_instrs(&f_new_func.instrs, g_sig, 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/compile/modifier.rs:945:17 [INFO] [stdout] | [INFO] [stdout] 945 | } 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] 926 ~ match under_instrs(&f_new_func.instrs, g_sig, self) { Some((f_before, f_after)) => { [INFO] [stdout] 927 | let mut instrs = f_before; [INFO] [stdout] ... [INFO] [stdout] 944 | } [INFO] [stdout] 945 ~ } _ => { [INFO] [stdout] 946 | return Err(self.fatal_error(f_span, "No inverse found")); [INFO] [stdout] 947 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/modifier.rs:1055:20 [INFO] [stdout] | [INFO] [stdout] 1055 | if let [Instr::Prim(Trace, span)] = new_func.instrs.as_slice() { [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/compile/modifier.rs:1060:17 [INFO] [stdout] | [INFO] [stdout] 1060 | } 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] 1055 ~ match new_func.instrs.as_slice() { [Instr::Prim(Trace, span)] => { [INFO] [stdout] 1056 | finish!( [INFO] [stdout] ... [INFO] [stdout] 1059 | ) [INFO] [stdout] 1060 ~ } _ => { [INFO] [stdout] 1061 | let span = self.add_span(modified.modifier.span.clone()); [INFO] [stdout] ... [INFO] [stdout] 1088 | } [INFO] [stdout] 1089 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/modifier.rs:1174:24 [INFO] [stdout] | [INFO] [stdout] 1174 | if let Some((prim, _)) = [INFO] [stdout] | ________________________^ [INFO] [stdout] 1175 | | instrs_as_flipped_primitive(&new_func.instrs, &self.asm) [INFO] [stdout] | | --------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 1176 | | .filter(|(prim, _)| prim.class().is_pervasive()) [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/compile/modifier.rs:1183:21 [INFO] [stdout] | [INFO] [stdout] 1183 | } 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] 1174 ~ match instrs_as_flipped_primitive(&new_func.instrs, &self.asm) [INFO] [stdout] 1175 | .filter(|(prim, _)| prim.class().is_pervasive()) [INFO] [stdout] 1176 ~ { Some((prim, _)) => { [INFO] [stdout] 1177 | format!( [INFO] [stdout] ... [INFO] [stdout] 1181 | ) [INFO] [stdout] 1182 ~ } _ => { [INFO] [stdout] 1183 | format!( [INFO] [stdout] ... [INFO] [stdout] 1187 | ) [INFO] [stdout] 1188 ~ }}, [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/modifier.rs:1329:38 [INFO] [stdout] | [INFO] [stdout] 1329 | let module_name = if let ScopeKind::Module(name) = &self.scope.kind { [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/compile/modifier.rs:1331:17 [INFO] [stdout] | [INFO] [stdout] 1331 | } 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] 1329 ~ let module_name = match &self.scope.kind { ScopeKind::Module(name) => { [INFO] [stdout] 1330 | Some(name.clone()) [INFO] [stdout] 1331 ~ } _ => { [INFO] [stdout] 1332 | None [INFO] [stdout] 1333 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/modifier.rs:1453:38 [INFO] [stdout] | [INFO] [stdout] 1453 | let comment = if let Some(module_name) = &module_name { [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/compile/modifier.rs:1455:21 [INFO] [stdout] | [INFO] [stdout] 1455 | } 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] 1453 ~ let comment = match &module_name { Some(module_name) => { [INFO] [stdout] 1454 | format!("Get `{module_name}`'s `{name}`") [INFO] [stdout] 1455 ~ } _ => { [INFO] [stdout] 1456 | format!("Get `{name}`") [INFO] [stdout] 1457 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/modifier.rs:1495:32 [INFO] [stdout] | [INFO] [stdout] 1495 | ... if let Some((_, sig)) = field.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/compile/modifier.rs:1503:29 [INFO] [stdout] | [INFO] [stdout] 1503 | ... } 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] 1495 ~ match field.init { Some((_, sig)) => { [INFO] [stdout] 1496 | if sig.args > 0 { [INFO] [stdout] ... [INFO] [stdout] 1502 | } [INFO] [stdout] 1503 ~ } _ => { [INFO] [stdout] 1504 | instrs.push(Instr::PushTemp { [INFO] [stdout] ... [INFO] [stdout] 1508 | }); [INFO] [stdout] 1509 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/compile/modifier.rs:1521:28 [INFO] [stdout] | [INFO] [stdout] 1521 | if let Some((init, sig)) = &field.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/compile/modifier.rs:1530:25 [INFO] [stdout] | [INFO] [stdout] 1530 | } else if i > 0 || has_inits { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1521 ~ match &field.init { Some((init, sig)) => { [INFO] [stdout] 1522 | if sig.args > 0 { [INFO] [stdout] ... [INFO] [stdout] 1529 | instrs.extend_from_slice(init); [INFO] [stdout] 1530 ~ } _ => if i > 0 || has_inits { [INFO] [stdout] 1531 | instrs.push(Instr::PopTemp { [INFO] [stdout] ... [INFO] [stdout] 1538 | .insert(field.name_span.clone(), field.global_index); [INFO] [stdout] 1539 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/error.rs:441:16 [INFO] [stdout] | [INFO] [stdout] 441 | if let Span::Code(mut span) = span { [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/error.rs:487:13 [INFO] [stdout] | [INFO] [stdout] 487 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 441 ~ match span { Span::Code(mut span) => { [INFO] [stdout] 442 | while let InputSrc::Macro(inner) = span.src { [INFO] [stdout] ... [INFO] [stdout] 486 | )); [INFO] [stdout] 487 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/error.rs:442:23 [INFO] [stdout] | [INFO] [stdout] 442 | while let InputSrc::Macro(inner) = span.src { [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/error.rs:444:17 [INFO] [stdout] | [INFO] [stdout] 444 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ffi.rs:281:31 [INFO] [stdout] | [INFO] [stdout] 281 | *len = if let FfiType::Struct { .. } = &**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] = 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/ffi.rs:283:21 [INFO] [stdout] | [INFO] [stdout] 283 | } 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] 281 ~ *len = match &**inner { FfiType::Struct { .. } => { [INFO] [stdout] 282 | arg.map(Value::row_count) [INFO] [stdout] 283 ~ } _ => { [INFO] [stdout] 284 | arg.map(Value::element_count) [INFO] [stdout] 285 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/ffi.rs:1071:28 [INFO] [stdout] | [INFO] [stdout] 1071 | if let Some(ptr_u) = value.meta().pointer { [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/ffi.rs:1073:25 [INFO] [stdout] | [INFO] [stdout] 1073 | } 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] 1071 ~ match value.meta().pointer { Some(ptr_u) => { [INFO] [stdout] 1072 | repr[range].copy_from_slice(&ptr_u.ptr.to_ne_bytes()); [INFO] [stdout] 1073 ~ } _ => { [INFO] [stdout] 1074 | match (&**inner, value) { [INFO] [stdout] ... [INFO] [stdout] 1085 | } [INFO] [stdout] 1086 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/format.rs:175:32 [INFO] [stdout] | [INFO] [stdout] 175 | if let Some(binding) = bindings.remove(function_name) { [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] 242 | / create_config!( [INFO] [stdout] 243 | | /// Whether to add a trailing newline to the output. [INFO] [stdout] 244 | | (trailing_newline, bool, true), [INFO] [stdout] 245 | | /// Whether to add a space after the `#` in comments. [INFO] [stdout] ... | [INFO] [stdout] 264 | | (indent_item_imports, bool, true), [INFO] [stdout] 265 | | ); [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/format.rs:177:29 [INFO] [stdout] | [INFO] [stdout] 177 | } else { [INFO] [stdout] | ^ [INFO] [stdout] ... [INFO] [stdout] 242 | / create_config!( [INFO] [stdout] 243 | | /// Whether to add a trailing newline to the output. [INFO] [stdout] 244 | | (trailing_newline, bool, true), [INFO] [stdout] 245 | | /// Whether to add a space after the `#` in comments. [INFO] [stdout] ... | [INFO] [stdout] 264 | | (indent_item_imports, bool, true), [INFO] [stdout] 265 | | ); [INFO] [stdout] | |_- in this macro invocation [INFO] [stdout] = note: this warning originates in the macro `create_config` (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/format.rs:985:24 [INFO] [stdout] | [INFO] [stdout] 985 | if let Word::Pack(_) = &word.value { [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/format.rs:990:21 [INFO] [stdout] | [INFO] [stdout] 990 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 985 ~ match &word.value { Word::Pack(_) => { [INFO] [stdout] 986 | if word.span.as_str(self.inputs, |s| s.starts_with('(')) { [INFO] [stdout] ... [INFO] [stdout] 989 | } [INFO] [stdout] 990 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/function.rs:470:20 [INFO] [stdout] | [INFO] [stdout] 470 | if let Some(binding) = asm.bindings.get(*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/function.rs:480:17 [INFO] [stdout] | [INFO] [stdout] 480 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 470 ~ match asm.bindings.get(*index) { Some(binding) => { [INFO] [stdout] 471 | match &binding.kind { [INFO] [stdout] ... [INFO] [stdout] 479 | } [INFO] [stdout] 480 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/function.rs:523:20 [INFO] [stdout] | [INFO] [stdout] 523 | if let Some(binding) = asm.bindings.get(*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/function.rs:533:17 [INFO] [stdout] | [INFO] [stdout] 533 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 523 ~ match asm.bindings.get(*index) { Some(binding) => { [INFO] [stdout] 524 | match &binding.kind { [INFO] [stdout] ... [INFO] [stdout] 532 | } [INFO] [stdout] 533 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/grid_fmt.rs:399:16 [INFO] [stdout] | [INFO] [stdout] 399 | if let Some(label) = &self.meta().label { [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/grid_fmt.rs:412:13 [INFO] [stdout] | [INFO] [stdout] 412 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 399 ~ match &self.meta().label { Some(label) => { [INFO] [stdout] 400 | if grid.len() == 1 { [INFO] [stdout] ... [INFO] [stdout] 411 | } [INFO] [stdout] 412 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/grid_fmt.rs:446:12 [INFO] [stdout] | [INFO] [stdout] 446 | if let Some(keys) = &self.meta().map_keys { [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/grid_fmt.rs:461:9 [INFO] [stdout] | [INFO] [stdout] 461 | } 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] 446 ~ match &self.meta().map_keys { Some(keys) => { [INFO] [stdout] 447 | let mut keys_shape = keys.keys.shape().clone(); [INFO] [stdout] ... [INFO] [stdout] 460 | s [INFO] [stdout] 461 ~ } _ => { [INFO] [stdout] 462 | base [INFO] [stdout] 463 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lex.rs:848:24 [INFO] [stdout] | [INFO] [stdout] 848 | if let Some(swiz) = self.array_swizzle() { [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/lex.rs:850:21 [INFO] [stdout] | [INFO] [stdout] 850 | } 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] 848 ~ match self.array_swizzle() { Some(swiz) => { [INFO] [stdout] 849 | self.end(ArraySwizzle(swiz), start) [INFO] [stdout] 850 ~ } _ => { [INFO] [stdout] 851 | self.end(Quote2, start) [INFO] [stdout] 852 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lex.rs:855:24 [INFO] [stdout] | [INFO] [stdout] 855 | if let Some(swiz) = self.stack_swizzle() { [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/lex.rs:857:21 [INFO] [stdout] | [INFO] [stdout] 857 | } 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] 855 ~ match self.stack_swizzle() { Some(swiz) => { [INFO] [stdout] 856 | self.end(StackSwizzle(swiz), start) [INFO] [stdout] 857 ~ } _ => { [INFO] [stdout] 858 | self.end(Quote, start) [INFO] [stdout] 859 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lex.rs:900:24 [INFO] [stdout] | [INFO] [stdout] 900 | if let Some(x) = self.next_char_if(|c| c.chars().all(|c| c.is_ascii_digit())) { [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/lex.rs:902:21 [INFO] [stdout] | [INFO] [stdout] 902 | } 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] 900 ~ match self.next_char_if(|c| c.chars().all(|c| c.is_ascii_digit())) { Some(x) => { [INFO] [stdout] 901 | self.end(Placeholder(PlaceholderOp::Nth(x.parse().unwrap())), start) [INFO] [stdout] 902 ~ } _ => { [INFO] [stdout] 903 | self.end(Caret, start) [INFO] [stdout] 904 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lex.rs:936:31 [INFO] [stdout] | [INFO] [stdout] 936 | while let Some(c) = self.next_char_if(|c| !c.ends_with('\n')) { [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/lex.rs:938:25 [INFO] [stdout] | [INFO] [stdout] 938 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lex.rs:1180:15 [INFO] [stdout] | [INFO] [stdout] 1180 | while let Some(token) = post.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/lex.rs:1205:9 [INFO] [stdout] | [INFO] [stdout] 1205 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lsp.rs:219:24 [INFO] [stdout] | [INFO] [stdout] 219 | if let Some(close_span) = &m.value.close_span { [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/lsp.rs:221:21 [INFO] [stdout] | [INFO] [stdout] 221 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 219 ~ match &m.value.close_span { Some(close_span) => { [INFO] [stdout] 220 | spans.push(close_span.clone().sp(SpanKind::Delimiter)); [INFO] [stdout] 221 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lsp.rs:298:27 [INFO] [stdout] | [INFO] [stdout] 298 | let path = if let InputSrc::File(path) = &self.src { [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/lsp.rs:300:13 [INFO] [stdout] | [INFO] [stdout] 300 | } 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] 298 ~ let path = match &self.src { InputSrc::File(path) => { [INFO] [stdout] 299 | Some(&**path) [INFO] [stdout] 300 ~ } _ => { [INFO] [stdout] 301 | None [INFO] [stdout] 302 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lsp.rs:364:30 [INFO] [stdout] | [INFO] [stdout] 364 | let sig = if let Some(local) = m.names.get("Call").or_else(|| m.names.get("New")) { [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/lsp.rs:366:17 [INFO] [stdout] | [INFO] [stdout] 366 | } 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] 364 ~ let sig = match m.names.get("Call").or_else(|| m.names.get("New")) { Some(local) => { [INFO] [stdout] 365 | self.asm.bindings[local.index].kind.signature() [INFO] [stdout] 366 ~ } _ => { [INFO] [stdout] 367 | None [INFO] [stdout] 368 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lsp.rs:438:35 [INFO] [stdout] | [INFO] [stdout] 438 | let kind = if let Some(inline) = self.code_meta.function_sigs.get(&word.span) { [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/lsp.rs:440:21 [INFO] [stdout] | [INFO] [stdout] 440 | } 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] 438 ~ let kind = match self.code_meta.function_sigs.get(&word.span) { Some(inline) => { [INFO] [stdout] 439 | SpanKind::FuncDelim(inline.sig) [INFO] [stdout] 440 ~ } _ => { [INFO] [stdout] 441 | SpanKind::Delimiter [INFO] [stdout] 442 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lsp.rs:458:35 [INFO] [stdout] | [INFO] [stdout] 458 | let kind = if let Some(inline) = pack [INFO] [stdout] | ____________________________________^ - [INFO] [stdout] | | ______________________________________________________| [INFO] [stdout] 459 | || .branches [INFO] [stdout] | ||_________________________________- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 460 | | .first() [INFO] [stdout] 461 | | .and_then(|br| self.code_meta.function_sigs.get(&br.span)) [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/lsp.rs:464:21 [INFO] [stdout] | [INFO] [stdout] 464 | } 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] 458 ~ let kind = match pack [INFO] [stdout] 459 | .branches [INFO] [stdout] 460 | .first() [INFO] [stdout] 461 | .and_then(|br| self.code_meta.function_sigs.get(&br.span)) [INFO] [stdout] 462 ~ { Some(inline) => { [INFO] [stdout] 463 | SpanKind::FuncDelim(inline.sig) [INFO] [stdout] 464 ~ } _ => { [INFO] [stdout] 465 | SpanKind::Delimiter [INFO] [stdout] 466 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lsp.rs:471:43 [INFO] [stdout] | [INFO] [stdout] 471 | ... let kind = if let Some(SigDecl { [INFO] [stdout] | _____________________________________^ [INFO] [stdout] 472 | | ... sig, [INFO] [stdout] 473 | | ... explicit: false, [INFO] [stdout] 474 | | ... .. [INFO] [stdout] 475 | | ... }) = self.code_meta.function_sigs.get(&branch.span) [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/lsp.rs:478:29 [INFO] [stdout] | [INFO] [stdout] 478 | ... } 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] 471 ~ let kind = match self.code_meta.function_sigs.get(&branch.span) [INFO] [stdout] 472 ~ { Some(SigDecl { [INFO] [stdout] 473 + sig, [INFO] [stdout] 474 + explicit: false, [INFO] [stdout] 475 + .. [INFO] [stdout] 476 ~ }) => { [INFO] [stdout] 477 | SpanKind::FuncDelim(*sig) [INFO] [stdout] 478 ~ } _ => { [INFO] [stdout] 479 | SpanKind::Delimiter [INFO] [stdout] 480 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lsp.rs:803:24 [INFO] [stdout] | [INFO] [stdout] 803 | if let SpanKind::Ident { [INFO] [stdout] | ________________________^ [INFO] [stdout] 804 | | docs: Some(docs), .. [INFO] [stdout] 805 | | } = &span_kind.value [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/lsp.rs:812:21 [INFO] [stdout] | [INFO] [stdout] 812 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 803 ~ match &span_kind.value [INFO] [stdout] 804 ~ { SpanKind::Ident { [INFO] [stdout] 805 + docs: Some(docs), .. [INFO] [stdout] 806 ~ } => { [INFO] [stdout] 807 | if span_kind.span.contains_line_col(line, col) && span_kind.span.src == path [INFO] [stdout] ... [INFO] [stdout] 811 | } [INFO] [stdout] 812 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lsp.rs:827:20 [INFO] [stdout] | [INFO] [stdout] 827 | if let SpanKind::StackSwizzle(s) = &span_kind.value { [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/lsp.rs:832:17 [INFO] [stdout] | [INFO] [stdout] 832 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 827 ~ match &span_kind.value { SpanKind::StackSwizzle(s) => { [INFO] [stdout] 828 | if span_kind.span.contains_line_col(line, col) && span_kind.span.src == path { [INFO] [stdout] ... [INFO] [stdout] 831 | } [INFO] [stdout] 832 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lsp.rs:837:20 [INFO] [stdout] | [INFO] [stdout] 837 | if let SpanKind::ArraySwizzle(s) = &span_kind.value { [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/lsp.rs:842:17 [INFO] [stdout] | [INFO] [stdout] 842 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 837 ~ match &span_kind.value { SpanKind::ArraySwizzle(s) => { [INFO] [stdout] 838 | if span_kind.span.contains_line_col(line, col) && span_kind.span.src == path { [INFO] [stdout] ... [INFO] [stdout] 841 | } [INFO] [stdout] 842 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lsp.rs:878:23 [INFO] [stdout] | [INFO] [stdout] 878 | } else if let Some(docs) = binding_docs { [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] 949 | } else if let Some(sig) = inline_function_sig { [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] 957 | } else if let Some(sw) = stack_swizzle { [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] 965 | } else if let Some(sw) = array_swizzle { [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] 973 | } else if let Some(shape) = array_shape { [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/lsp.rs:949:13 [INFO] [stdout] | [INFO] [stdout] 949 | } else if let Some(sig) = inline_function_sig { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lsp.rs:957:13 [INFO] [stdout] | [INFO] [stdout] 957 | } else if let Some(sw) = stack_swizzle { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lsp.rs:965:13 [INFO] [stdout] | [INFO] [stdout] 965 | } else if let Some(sw) = array_swizzle { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lsp.rs:973:13 [INFO] [stdout] | [INFO] [stdout] 973 | } else if let Some(shape) = array_shape { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/lsp.rs:981:13 [INFO] [stdout] | [INFO] [stdout] 981 | } 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] 878 ~ } else { match binding_docs { Some(docs) => { [INFO] [stdout] 879 | let span = docs.span; [INFO] [stdout] ... [INFO] [stdout] 948 | } [INFO] [stdout] 949 ~ } _ => { match inline_function_sig { Some(sig) => { [INFO] [stdout] 950 | Hover { [INFO] [stdout] ... [INFO] [stdout] 956 | } [INFO] [stdout] 957 ~ } _ => { match stack_swizzle { Some(sw) => { [INFO] [stdout] 958 | Hover { [INFO] [stdout] ... [INFO] [stdout] 964 | } [INFO] [stdout] 965 ~ } _ => { match array_swizzle { Some(sw) => { [INFO] [stdout] 966 | Hover { [INFO] [stdout] ... [INFO] [stdout] 972 | } [INFO] [stdout] 973 ~ } _ => { match array_shape { Some(shape) => { [INFO] [stdout] 974 | Hover { [INFO] [stdout] ... [INFO] [stdout] 980 | } [INFO] [stdout] 981 ~ } _ => { [INFO] [stdout] 982 | return Ok(None); [INFO] [stdout] 983 ~ }}}}}}}}}}})) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lsp.rs:1026:26 [INFO] [stdout] | [INFO] [stdout] 1026 | let doc = if let Some(doc) = self.doc(doc_uri) { [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/lsp.rs:1028:13 [INFO] [stdout] | [INFO] [stdout] 1028 | } 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] 1026 ~ let doc = match self.doc(doc_uri) { Some(doc) => { [INFO] [stdout] 1027 | doc [INFO] [stdout] 1028 ~ } _ => { [INFO] [stdout] 1029 | return Ok(None); [INFO] [stdout] 1030 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lsp.rs:1039:20 [INFO] [stdout] | [INFO] [stdout] 1039 | if let BindingKind::Import(module) = &doc.asm.bindings[*index].kind { [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/lsp.rs:1051:17 [INFO] [stdout] | [INFO] [stdout] 1051 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1039 ~ match &doc.asm.bindings[*index].kind { BindingKind::Import(module) => { [INFO] [stdout] 1040 | let mut completions = Vec::new(); [INFO] [stdout] ... [INFO] [stdout] 1050 | return Ok(Some(CompletionResponse::Array(completions))); [INFO] [stdout] 1051 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lsp.rs:1180:26 [INFO] [stdout] | [INFO] [stdout] 1180 | let doc = if let Some(doc) = self.doc(¶ms.text_document.uri) { [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/lsp.rs:1182:13 [INFO] [stdout] | [INFO] [stdout] 1182 | } 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] 1180 ~ let doc = match self.doc(¶ms.text_document.uri) { Some(doc) => { [INFO] [stdout] 1181 | doc [INFO] [stdout] 1182 ~ } _ => { [INFO] [stdout] 1183 | return Ok(None); [INFO] [stdout] 1184 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/lsp.rs:1503:20 [INFO] [stdout] | [INFO] [stdout] 1503 | if let SpanKind::OutputComment = &span.value { [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/lsp.rs:1522:17 [INFO] [stdout] | [INFO] [stdout] 1522 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1503 ~ match &span.value { SpanKind::OutputComment => { [INFO] [stdout] 1504 | actions.push(CodeActionOrCommand::CodeAction(CodeAction { [INFO] [stdout] ... [INFO] [stdout] 1521 | })); [INFO] [stdout] 1522 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `impl Iterator + '_` will capture more lifetimes than possibly intended in edition 2024 [INFO] [stdout] --> src/lsp.rs:2091:14 [INFO] [stdout] | [INFO] [stdout] 2091 | ) -> impl Iterator + '_ { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see [INFO] [stdout] note: specifically, these lifetimes are in scope but not mentioned in the type's bounds [INFO] [stdout] --> src/lsp.rs:2089:22 [INFO] [stdout] | [INFO] [stdout] 2089 | doc_uri: &Url, [INFO] [stdout] | ^ [INFO] [stdout] 2090 | path: &Path, [INFO] [stdout] | ^ [INFO] [stdout] = note: all lifetimes in scope will be captured by `impl Trait`s in edition 2024 [INFO] [stdout] help: use the precise capturing `use<...>` syntax to make the captures explicit [INFO] [stdout] | [INFO] [stdout] 2091 | ) -> impl Iterator + '_ + use<'_> { [INFO] [stdout] | +++++++++ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:245:12 [INFO] [stdout] | [INFO] [stdout] 245 | if let Some(value) = f(&token.value) { [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/parse.rs:248:9 [INFO] [stdout] | [INFO] [stdout] 248 | } 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] 245 ~ match f(&token.value) { Some(value) => { [INFO] [stdout] 246 | self.index += 1; [INFO] [stdout] 247 | Some(token.span.clone().sp(value)) [INFO] [stdout] 248 ~ } _ => { [INFO] [stdout] 249 | None [INFO] [stdout] 250 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:257:12 [INFO] [stdout] | [INFO] [stdout] 257 | if let Some(token) = self.tokens.get(self.index.saturating_sub(1)) { [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/parse.rs:259:9 [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] 257 ~ match self.tokens.get(self.index.saturating_sub(1)) { Some(token) => { [INFO] [stdout] 258 | token.span.clone() [INFO] [stdout] 259 ~ } _ => { [INFO] [stdout] 260 | self.tokens.last().unwrap().span.clone() [INFO] [stdout] 261 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:313:17 [INFO] [stdout] | [INFO] [stdout] 313 | Some(if let Some(binding) = self.try_binding() { [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] 314 | Item::Binding(binding) [INFO] [stdout] 315 | } else if let Some(import) = self.try_import() { [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/parse.rs:315:9 [INFO] [stdout] | [INFO] [stdout] 315 | } else if let Some(import) = self.try_import() { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parse.rs:317:9 [INFO] [stdout] | [INFO] [stdout] 317 | } 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] 313 ~ Some(match self.try_binding() { Some(binding) => { [INFO] [stdout] 314 | Item::Binding(binding) [INFO] [stdout] 315 ~ } _ => { match self.try_import() { Some(import) => { [INFO] [stdout] 316 | Item::Import(import) [INFO] [stdout] 317 ~ } _ => { [INFO] [stdout] 318 | let lines = self.multiline_words(true); [INFO] [stdout] ... [INFO] [stdout] 374 | } [INFO] [stdout] 375 ~ }}}}) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:338:34 [INFO] [stdout] | [INFO] [stdout] 338 | let imports = if let Some(tilde_span) = self.try_exact(Tilde.into()) { [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/parse.rs:354:17 [INFO] [stdout] | [INFO] [stdout] 354 | } 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] 338 ~ let imports = match self.try_exact(Tilde.into()) { Some(tilde_span) => { [INFO] [stdout] 339 | let mut items = Vec::new(); [INFO] [stdout] ... [INFO] [stdout] 353 | } [INFO] [stdout] 354 ~ } _ => { [INFO] [stdout] 355 | None [INFO] [stdout] 356 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:341:28 [INFO] [stdout] | [INFO] [stdout] 341 | if let Some(ident) = self.try_ident() { [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/parse.rs:343:25 [INFO] [stdout] | [INFO] [stdout] 343 | } else if self.try_spaces().is_some() { [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 341 ~ match self.try_ident() { Some(ident) => { [INFO] [stdout] 342 | items.push(ident); [INFO] [stdout] 343 ~ } _ => if self.try_spaces().is_some() { [INFO] [stdout] 344 | continue; [INFO] [stdout] 345 | } else { [INFO] [stdout] 346 | break; [INFO] [stdout] 347 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:360:31 [INFO] [stdout] | [INFO] [stdout] 360 | let span = if let Some(end) = close_span.clone() { [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/parse.rs:362:17 [INFO] [stdout] | [INFO] [stdout] 362 | } 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] 360 ~ let span = match close_span.clone() { Some(end) => { [INFO] [stdout] 361 | open_span.clone().merge(end) [INFO] [stdout] 362 ~ } _ => { [INFO] [stdout] 363 | self.errors.push(self.expected([TripleMinus])); [INFO] [stdout] 364 | open_span.clone() [INFO] [stdout] 365 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:394:39 [INFO] [stdout] | [INFO] [stdout] 394 | let (glyph_span, public) = if let Some(span) = self [INFO] [stdout] | _______________________________________^ - [INFO] [stdout] | |________________________________________________________| [INFO] [stdout] 395 | || .try_exact(Equal.into()) [INFO] [stdout] 396 | || .or_else(|| self.try_exact(LeftArrow)) [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] | [INFO] [stdout] ... [INFO] [stdout] 399 | } else if let Some(span) = self [INFO] [stdout] | ____________________________________- [INFO] [stdout] 400 | | .try_exact(EqualTilde.into()) [INFO] [stdout] 401 | | .or_else(|| self.try_exact(LeftArrowTilde)) [INFO] [stdout] 402 | | .or_else(|| self.try_exact(LeftStrokeArrow)) [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/parse.rs:399:9 [INFO] [stdout] | [INFO] [stdout] 399 | } else if let Some(span) = self [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parse.rs:405:9 [INFO] [stdout] | [INFO] [stdout] 405 | } 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] 394 ~ let (glyph_span, public) = match self [INFO] [stdout] 395 | .try_exact(Equal.into()) [INFO] [stdout] 396 | .or_else(|| self.try_exact(LeftArrow)) [INFO] [stdout] 397 ~ { Some(span) => { [INFO] [stdout] 398 | (span, true) [INFO] [stdout] 399 ~ } _ => { match self [INFO] [stdout] 400 | .try_exact(EqualTilde.into()) [INFO] [stdout] 401 | .or_else(|| self.try_exact(LeftArrowTilde)) [INFO] [stdout] 402 | .or_else(|| self.try_exact(LeftStrokeArrow)) [INFO] [stdout] 403 ~ { Some(span) => { [INFO] [stdout] 404 | (span, false) [INFO] [stdout] 405 ~ } _ => { [INFO] [stdout] 406 | self.index = start; [INFO] [stdout] 407 | return None; [INFO] [stdout] 408 ~ }}}}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:409:33 [INFO] [stdout] | [INFO] [stdout] 409 | let mut arrow_span = if let Some(arrow_span) = arrow_span { [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/parse.rs:411:9 [INFO] [stdout] | [INFO] [stdout] 411 | } 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] 409 ~ let mut arrow_span = match arrow_span { Some(arrow_span) => { [INFO] [stdout] 410 | arrow_span.merge(glyph_span) [INFO] [stdout] 411 ~ } _ => { [INFO] [stdout] 412 | glyph_span [INFO] [stdout] 413 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:414:30 [INFO] [stdout] | [INFO] [stdout] 414 | let array_macro = if let Some(span) = self.try_exact(Caret.into()) { [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/parse.rs:417:9 [INFO] [stdout] | [INFO] [stdout] 417 | } 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] 414 ~ let array_macro = match self.try_exact(Caret.into()) { Some(span) => { [INFO] [stdout] 415 | arrow_span = arrow_span.merge(span); [INFO] [stdout] 416 | true [INFO] [stdout] 417 ~ } _ => { [INFO] [stdout] 418 | false [INFO] [stdout] 419 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:509:15 [INFO] [stdout] | [INFO] [stdout] 509 | while let Some(token) = self.tokens.get(self.index).cloned() { [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/parse.rs:535:9 [INFO] [stdout] | [INFO] [stdout] 535 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:565:15 [INFO] [stdout] | [INFO] [stdout] 565 | while let Some(tilde_span) = self.try_exact(Tilde.into()) { [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/parse.rs:590:9 [INFO] [stdout] | [INFO] [stdout] 590 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:609:12 [INFO] [stdout] | [INFO] [stdout] 609 | if let Some(sn) = self.try_num() { [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/parse.rs:639:9 [INFO] [stdout] | [INFO] [stdout] 639 | } 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] 609 ~ match self.try_num() { Some(sn) => { [INFO] [stdout] 610 | if let Some((a, o)) = sn.value.0.split_once('.') { [INFO] [stdout] ... [INFO] [stdout] 638 | } [INFO] [stdout] 639 ~ } _ => { [INFO] [stdout] 640 | self.errors.push(self.expected([Expectation::ArgsOutputs])); [INFO] [stdout] 641 | (1usize, 1usize) [INFO] [stdout] 642 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:610:16 [INFO] [stdout] | [INFO] [stdout] 610 | if let Some((a, o)) = sn.value.0.split_once('.') { [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/parse.rs:628:13 [INFO] [stdout] | [INFO] [stdout] 628 | } 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] 610 ~ match sn.value.0.split_once('.') { Some((a, o)) => { [INFO] [stdout] 611 | let a = match a.parse() { [INFO] [stdout] ... [INFO] [stdout] 627 | (a, o) [INFO] [stdout] 628 ~ } _ => { [INFO] [stdout] 629 | let a = match sn.value.0.parse() { [INFO] [stdout] ... [INFO] [stdout] 637 | (a, 1) [INFO] [stdout] 638 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:646:15 [INFO] [stdout] | [INFO] [stdout] 646 | while let Some(word) = self.try_word() { [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/parse.rs:688:9 [INFO] [stdout] | [INFO] [stdout] 688 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:706:16 [INFO] [stdout] | [INFO] [stdout] 706 | if let Some(words) = self.try_words() { [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/parse.rs:716:13 [INFO] [stdout] | [INFO] [stdout] 716 | } 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] 706 ~ match self.try_words() { Some(words) => { [INFO] [stdout] 707 | lines.push(words); [INFO] [stdout] ... [INFO] [stdout] 715 | } [INFO] [stdout] 716 ~ } _ => { [INFO] [stdout] 717 | break; [INFO] [stdout] 718 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:789:39 [INFO] [stdout] | [INFO] [stdout] 789 | let (modifier, mod_span) = if let Some(prim) = Primitive::all() [INFO] [stdout] | _______________________________________^ - [INFO] [stdout] | |________________________________________________________| [INFO] [stdout] 790 | || .filter(|prim| prim.is_modifier()) [INFO] [stdout] 791 | || .find_map(|prim| { [INFO] [stdout] 792 | || self.try_exact(prim.into()) [INFO] [stdout] ... || [INFO] [stdout] 797 | || .map(|span| span.sp(prim)) [INFO] [stdout] 798 | || }) { [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] | [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/parse.rs:800:9 [INFO] [stdout] | [INFO] [stdout] 800 | } 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] 789 ~ let (modifier, mod_span) = match Primitive::all() [INFO] [stdout] 790 | .filter(|prim| prim.is_modifier()) [INFO] [stdout] ... [INFO] [stdout] 797 | .map(|span| span.sp(prim)) [INFO] [stdout] 798 ~ }) { Some(prim) => { [INFO] [stdout] 799 | (Modifier::Primitive(prim.value), prim.span) [INFO] [stdout] 800 ~ } _ => { [INFO] [stdout] 801 | let term = self.try_term()?; [INFO] [stdout] ... [INFO] [stdout] 809 | } [INFO] [stdout] 810 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:802:16 [INFO] [stdout] | [INFO] [stdout] 802 | if let Word::Ref(item) = term.value { [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/parse.rs:807:13 [INFO] [stdout] | [INFO] [stdout] 807 | } 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] 802 ~ match term.value { Word::Ref(item) => { [INFO] [stdout] 803 | if item.modifier_args() == 0 { [INFO] [stdout] ... [INFO] [stdout] 806 | (Modifier::Ref(item), term.span) [INFO] [stdout] 807 ~ } _ => { [INFO] [stdout] 808 | return Some(term); [INFO] [stdout] 809 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:827:16 [INFO] [stdout] | [INFO] [stdout] 827 | if let Some(arg) = self.try_func().or_else(|| self.try_undertied()) { [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/parse.rs:836:13 [INFO] [stdout] | [INFO] [stdout] 836 | } 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] 827 ~ match self.try_func().or_else(|| self.try_undertied()) { Some(arg) => { [INFO] [stdout] 828 | // Parse pack syntax [INFO] [stdout] ... [INFO] [stdout] 835 | args.push(arg); [INFO] [stdout] 836 ~ } _ => { [INFO] [stdout] 837 | break; [INFO] [stdout] 838 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:842:23 [INFO] [stdout] | [INFO] [stdout] 842 | let span = if let Some(last) = args.last() { [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/parse.rs:844:9 [INFO] [stdout] | [INFO] [stdout] 844 | } 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] 842 ~ let span = match args.last() { Some(last) => { [INFO] [stdout] 843 | mod_span.clone().merge(last.span.clone()) [INFO] [stdout] 844 ~ } _ => { [INFO] [stdout] 845 | mod_span.clone() [INFO] [stdout] 846 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:851:24 [INFO] [stdout] | [INFO] [stdout] 851 | if let Word::Array(arr) = &inverted.value { [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/parse.rs:870:21 [INFO] [stdout] | [INFO] [stdout] 870 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 851 ~ match &inverted.value { Word::Array(arr) => { [INFO] [stdout] 852 | if arr_is_normal_di(arr) { [INFO] [stdout] ... [INFO] [stdout] 869 | } [INFO] [stdout] 870 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:875:20 [INFO] [stdout] | [INFO] [stdout] 875 | if let Some(Sp { [INFO] [stdout] | ____________________^ [INFO] [stdout] 876 | | value: Word::Pack(pack), [INFO] [stdout] 877 | | .. [INFO] [stdout] 878 | | }) = args.first() [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/parse.rs:885:17 [INFO] [stdout] | [INFO] [stdout] 885 | } 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] 875 ~ match args.first() [INFO] [stdout] 876 ~ { Some(Sp { [INFO] [stdout] 877 + value: Word::Pack(pack), [INFO] [stdout] 878 + .. [INFO] [stdout] 879 ~ }) => { [INFO] [stdout] 880 | operands.extend( [INFO] [stdout] ... [INFO] [stdout] 884 | ); [INFO] [stdout] 885 ~ } _ => { [INFO] [stdout] 886 | operands.extend( [INFO] [stdout] ... [INFO] [stdout] 891 | ); [INFO] [stdout] 892 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:903:17 [INFO] [stdout] | [INFO] [stdout] 903 | Some(if let Some(prim) = self.try_prim() { [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] 904 | prim.map(Word::Primitive) [INFO] [stdout] 905 | } else if let Some(refer) = self.try_ref() { [INFO] [stdout] | -------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 906 | refer [INFO] [stdout] 907 | } else if let Some(sn) = self.try_num() { [INFO] [stdout] | -------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 908 | sn.map(|(s, n)| Word::Number(s, n)) [INFO] [stdout] 909 | } else if let Some(c) = self.next_token_map(Token::as_char) { [INFO] [stdout] | ----------------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 910 | c.map(Into::into).map(Word::Char) [INFO] [stdout] 911 | } else if let Some(s) = self.next_token_map(Token::as_string) { [INFO] [stdout] | ------------------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 912 | s.map(Into::into).map(Word::String) [INFO] [stdout] 913 | } else if let Some(op) = self.next_token_map(Token::as_placeholder) { [INFO] [stdout] | ------------------------------------------ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 914 | op.map(Word::Placeholder) [INFO] [stdout] 915 | } else if let Some(label) = self.next_token_map(Token::as_label) { [INFO] [stdout] | ------------------------------------ this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 916 | label.map(Into::into).map(Word::Label) [INFO] [stdout] 917 | } else if let Some(frags) = self.next_token_map(Token::as_format_string) { [INFO] [stdout] | -------------------------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 918 | frags.map(Word::FormatString) [INFO] [stdout] 919 | } else if let Some(line) = self.next_token_map(Token::as_multiline_string) { [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] 927 | } else if let Some(line) = self.next_token_map(Token::as_multiline_format_string) { [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] 937 | } else if let Some(start) = self.try_exact(OpenBracket.into()) { [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] 965 | } else if let Some(start) = self.try_exact(OpenCurly.into()) { [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] 978 | } else if let Some(spaces) = self.try_spaces() { [INFO] [stdout] | ----------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 979 | spaces [INFO] [stdout] 980 | } else if let Some(word) = self.try_func() { [INFO] [stdout] | --------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 981 | word [INFO] [stdout] 982 | } else if let Some(span) = self.try_exact(Semicolon.into()) { [INFO] [stdout] | -------------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 983 | span.sp(Word::BreakLine) [INFO] [stdout] 984 | } else if let Some(span) = self.try_exact(DoubleSemicolon.into()) { [INFO] [stdout] | -------------------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 985 | span.sp(Word::UnbreakLine) [INFO] [stdout] 986 | } else if let Some(span) = self.try_exact(Semicolon.into()) { [INFO] [stdout] | -------------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 987 | span.sp(Word::SemicolonPop) [INFO] [stdout] 988 | } else if let Some(sc) = self.next_token_map(Token::as_semantic_comment) { [INFO] [stdout] | ----------------------------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 989 | sc.map(Word::SemanticComment) [INFO] [stdout] 990 | } else if let Some(pack) = self.next_token_map(Token::as_stack_swizzle) { [INFO] [stdout] | -------------------------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 991 | pack.cloned().map(Word::StackSwizzle) [INFO] [stdout] 992 | } else if let Some(pack) = self.next_token_map(Token::as_array_swizzle) { [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/parse.rs:905:9 [INFO] [stdout] | [INFO] [stdout] 905 | } else if let Some(refer) = self.try_ref() { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parse.rs:907:9 [INFO] [stdout] | [INFO] [stdout] 907 | } else if let Some(sn) = self.try_num() { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parse.rs:909:9 [INFO] [stdout] | [INFO] [stdout] 909 | } else if let Some(c) = self.next_token_map(Token::as_char) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parse.rs:911:9 [INFO] [stdout] | [INFO] [stdout] 911 | } else if let Some(s) = self.next_token_map(Token::as_string) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parse.rs:913:9 [INFO] [stdout] | [INFO] [stdout] 913 | } else if let Some(op) = self.next_token_map(Token::as_placeholder) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parse.rs:915:9 [INFO] [stdout] | [INFO] [stdout] 915 | } else if let Some(label) = self.next_token_map(Token::as_label) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parse.rs:917:9 [INFO] [stdout] | [INFO] [stdout] 917 | } else if let Some(frags) = self.next_token_map(Token::as_format_string) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parse.rs:919:9 [INFO] [stdout] | [INFO] [stdout] 919 | } else if let Some(line) = self.next_token_map(Token::as_multiline_string) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parse.rs:927:9 [INFO] [stdout] | [INFO] [stdout] 927 | } else if let Some(line) = self.next_token_map(Token::as_multiline_format_string) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parse.rs:937:9 [INFO] [stdout] | [INFO] [stdout] 937 | } else if let Some(start) = self.try_exact(OpenBracket.into()) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parse.rs:965:9 [INFO] [stdout] | [INFO] [stdout] 965 | } else if let Some(start) = self.try_exact(OpenCurly.into()) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parse.rs:978:9 [INFO] [stdout] | [INFO] [stdout] 978 | } else if let Some(spaces) = self.try_spaces() { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parse.rs:980:9 [INFO] [stdout] | [INFO] [stdout] 980 | } else if let Some(word) = self.try_func() { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parse.rs:982:9 [INFO] [stdout] | [INFO] [stdout] 982 | } else if let Some(span) = self.try_exact(Semicolon.into()) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parse.rs:984:9 [INFO] [stdout] | [INFO] [stdout] 984 | } else if let Some(span) = self.try_exact(DoubleSemicolon.into()) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parse.rs:986:9 [INFO] [stdout] | [INFO] [stdout] 986 | } else if let Some(span) = self.try_exact(Semicolon.into()) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parse.rs:988:9 [INFO] [stdout] | [INFO] [stdout] 988 | } else if let Some(sc) = self.next_token_map(Token::as_semantic_comment) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parse.rs:990:9 [INFO] [stdout] | [INFO] [stdout] 990 | } else if let Some(pack) = self.next_token_map(Token::as_stack_swizzle) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parse.rs:992:9 [INFO] [stdout] | [INFO] [stdout] 992 | } else if let Some(pack) = self.next_token_map(Token::as_array_swizzle) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parse.rs:994:9 [INFO] [stdout] | [INFO] [stdout] 994 | } 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] 903 ~ Some(match self.try_prim() { Some(prim) => { [INFO] [stdout] 904 | prim.map(Word::Primitive) [INFO] [stdout] 905 ~ } _ => { match self.try_ref() { Some(refer) => { [INFO] [stdout] 906 | refer [INFO] [stdout] 907 ~ } _ => { match self.try_num() { Some(sn) => { [INFO] [stdout] 908 | sn.map(|(s, n)| Word::Number(s, n)) [INFO] [stdout] 909 ~ } _ => { match self.next_token_map(Token::as_char) { Some(c) => { [INFO] [stdout] 910 | c.map(Into::into).map(Word::Char) [INFO] [stdout] 911 ~ } _ => { match self.next_token_map(Token::as_string) { Some(s) => { [INFO] [stdout] 912 | s.map(Into::into).map(Word::String) [INFO] [stdout] 913 ~ } _ => { match self.next_token_map(Token::as_placeholder) { Some(op) => { [INFO] [stdout] 914 | op.map(Word::Placeholder) [INFO] [stdout] 915 ~ } _ => { match self.next_token_map(Token::as_label) { Some(label) => { [INFO] [stdout] 916 | label.map(Into::into).map(Word::Label) [INFO] [stdout] 917 ~ } _ => { match self.next_token_map(Token::as_format_string) { Some(frags) => { [INFO] [stdout] 918 | frags.map(Word::FormatString) [INFO] [stdout] 919 ~ } _ => { match self.next_token_map(Token::as_multiline_string) { Some(line) => { [INFO] [stdout] 920 | let mut span = line.span.clone(); [INFO] [stdout] ... [INFO] [stdout] 926 | span.sp(Word::MultilineString(lines)) [INFO] [stdout] 927 ~ } _ => { match self.next_token_map(Token::as_multiline_format_string) { Some(line) => { [INFO] [stdout] 928 | let start = line.span.clone(); [INFO] [stdout] ... [INFO] [stdout] 936 | span.sp(Word::MultilineFormatString(lines)) [INFO] [stdout] 937 ~ } _ => { match self.try_exact(OpenBracket.into()) { Some(start) => { [INFO] [stdout] 938 | while self.try_exact(Newline).is_some() || self.try_exact(Spaces).is_some() {} [INFO] [stdout] ... [INFO] [stdout] 964 | span.sp(Word::Array(arr)) [INFO] [stdout] 965 ~ } _ => { match self.try_exact(OpenCurly.into()) { Some(start) => { [INFO] [stdout] 966 | while self.try_exact(Newline).is_some() || self.try_exact(Spaces).is_some() {} [INFO] [stdout] ... [INFO] [stdout] 977 | })) [INFO] [stdout] 978 ~ } _ => { match self.try_spaces() { Some(spaces) => { [INFO] [stdout] 979 | spaces [INFO] [stdout] 980 ~ } _ => { match self.try_func() { Some(word) => { [INFO] [stdout] 981 | word [INFO] [stdout] 982 ~ } _ => { match self.try_exact(Semicolon.into()) { Some(span) => { [INFO] [stdout] 983 | span.sp(Word::BreakLine) [INFO] [stdout] 984 ~ } _ => { match self.try_exact(DoubleSemicolon.into()) { Some(span) => { [INFO] [stdout] 985 | span.sp(Word::UnbreakLine) [INFO] [stdout] 986 ~ } _ => { match self.try_exact(Semicolon.into()) { Some(span) => { [INFO] [stdout] 987 | span.sp(Word::SemicolonPop) [INFO] [stdout] 988 ~ } _ => { match self.next_token_map(Token::as_semantic_comment) { Some(sc) => { [INFO] [stdout] 989 | sc.map(Word::SemanticComment) [INFO] [stdout] 990 ~ } _ => { match self.next_token_map(Token::as_stack_swizzle) { Some(pack) => { [INFO] [stdout] 991 | pack.cloned().map(Word::StackSwizzle) [INFO] [stdout] 992 ~ } _ => { match self.next_token_map(Token::as_array_swizzle) { Some(pack) => { [INFO] [stdout] 993 | pack.cloned().map(Word::ArraySwizzle) [INFO] [stdout] 994 ~ } _ => { [INFO] [stdout] 995 | return None; [INFO] [stdout] 996 ~ }}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}}) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:922:19 [INFO] [stdout] | [INFO] [stdout] 922 | while let Some(line) = self.next_token_map(Token::as_multiline_string) { [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/parse.rs:925:13 [INFO] [stdout] | [INFO] [stdout] 925 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:931:19 [INFO] [stdout] | [INFO] [stdout] 931 | while let Some(line) = self.next_token_map(Token::as_multiline_format_string) { [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/parse.rs:934:13 [INFO] [stdout] | [INFO] [stdout] 934 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:1044:16 [INFO] [stdout] | [INFO] [stdout] 1044 | if let Some(span) = op_span { [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/parse.rs:1046:13 [INFO] [stdout] | [INFO] [stdout] 1046 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1044 ~ match op_span { Some(span) => { [INFO] [stdout] 1045 | return Some(span.sp(prim)); [INFO] [stdout] 1046 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:1051:17 [INFO] [stdout] | [INFO] [stdout] 1051 | Some(if let Some(mut start) = self.try_exact(OpenParen.into()) { [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] 1114 | } else if let Some(start) = self.try_exact(OpenAngle) { [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/parse.rs:1114:9 [INFO] [stdout] | [INFO] [stdout] 1114 | } else if let Some(start) = self.try_exact(OpenAngle) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/parse.rs:1156:9 [INFO] [stdout] | [INFO] [stdout] 1156 | } 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] 1051 ~ Some(match self.try_exact(OpenParen.into()) { Some(mut start) => { [INFO] [stdout] 1052 | // Match initial function contents [INFO] [stdout] ... [INFO] [stdout] 1113 | } [INFO] [stdout] 1114 ~ } _ => { match self.try_exact(OpenAngle) { Some(start) => { [INFO] [stdout] 1115 | let first = self.func_contents(); [INFO] [stdout] ... [INFO] [stdout] 1155 | })) [INFO] [stdout] 1156 ~ } _ => { [INFO] [stdout] 1157 | return None; [INFO] [stdout] 1158 ~ }}}}) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:1056:19 [INFO] [stdout] | [INFO] [stdout] 1056 | while let Some(start) = self.try_exact(Bar.into()) { [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/parse.rs:1070:13 [INFO] [stdout] | [INFO] [stdout] 1070 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:1058:31 [INFO] [stdout] | [INFO] [stdout] 1058 | let span = if let Some(span) = span { [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/parse.rs:1060:17 [INFO] [stdout] | [INFO] [stdout] 1060 | } 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] 1058 ~ let span = match span { Some(span) => { [INFO] [stdout] 1059 | start.merge(span) [INFO] [stdout] 1060 ~ } _ => { [INFO] [stdout] 1061 | start [INFO] [stdout] 1062 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:1117:19 [INFO] [stdout] | [INFO] [stdout] 1117 | while let Some(start) = self.try_exact(Bar.into()) { [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/parse.rs:1131:13 [INFO] [stdout] | [INFO] [stdout] 1131 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:1119:31 [INFO] [stdout] | [INFO] [stdout] 1119 | let span = if let Some(span) = span { [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/parse.rs:1121:17 [INFO] [stdout] | [INFO] [stdout] 1121 | } 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] 1119 ~ let span = match span { Some(span) => { [INFO] [stdout] 1120 | start.merge(span) [INFO] [stdout] 1121 ~ } _ => { [INFO] [stdout] 1122 | start [INFO] [stdout] 1123 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:1138:33 [INFO] [stdout] | [INFO] [stdout] 1138 | let first_span = if let Some(span) = first_span { [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/parse.rs:1140:13 [INFO] [stdout] | [INFO] [stdout] 1140 | } 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] 1138 ~ let first_span = match first_span { Some(span) => { [INFO] [stdout] 1139 | start.merge(span) [INFO] [stdout] 1140 ~ } _ => { [INFO] [stdout] 1141 | start [INFO] [stdout] 1142 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:1205:12 [INFO] [stdout] | [INFO] [stdout] 1205 | if let Some(span) = self.try_exact(token.clone()) { [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/parse.rs:1207:9 [INFO] [stdout] | [INFO] [stdout] 1207 | } 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] 1205 ~ match self.try_exact(token.clone()) { Some(span) => { [INFO] [stdout] 1206 | span.sp(true) [INFO] [stdout] 1207 ~ } _ => { [INFO] [stdout] 1208 | self.errors [INFO] [stdout] 1209 | .push(self.expected([Expectation::Term, Expectation::Token(token)])); [INFO] [stdout] 1210 | self.prev_span().sp(false) [INFO] [stdout] 1211 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:1385:12 [INFO] [stdout] | [INFO] [stdout] 1385 | if let Word::Spaces = word.value { [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/parse.rs:1387:9 [INFO] [stdout] | [INFO] [stdout] 1387 | } 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] 1385 ~ match word.value { Word::Spaces => { [INFO] [stdout] 1386 | start += 1; [INFO] [stdout] 1387 ~ } _ => { [INFO] [stdout] 1388 | break; [INFO] [stdout] 1389 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:1394:16 [INFO] [stdout] | [INFO] [stdout] 1394 | if let Word::Spaces = word.value { [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/parse.rs:1396:13 [INFO] [stdout] | [INFO] [stdout] 1396 | } 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] 1394 ~ match word.value { Word::Spaces => { [INFO] [stdout] 1395 | end -= 1; [INFO] [stdout] 1396 ~ } _ => { [INFO] [stdout] 1397 | break; [INFO] [stdout] 1398 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:1424:12 [INFO] [stdout] | [INFO] [stdout] 1424 | if let Word::Modified(m) = &m.value { [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/parse.rs:1431:9 [INFO] [stdout] | [INFO] [stdout] 1431 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1424 ~ match &m.value { Word::Modified(m) => { [INFO] [stdout] 1425 | let Modified { modifier, operands } = &**m; [INFO] [stdout] ... [INFO] [stdout] 1430 | } [INFO] [stdout] 1431 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/parse.rs:1426:16 [INFO] [stdout] | [INFO] [stdout] 1426 | if let Modifier::Primitive(Primitive::Dip) = modifier.value { [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/parse.rs:1430:13 [INFO] [stdout] | [INFO] [stdout] 1430 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1426 ~ match modifier.value { Modifier::Primitive(Primitive::Dip) => { [INFO] [stdout] 1427 | single_word_and(operands, |f| { [INFO] [stdout] 1428 | is_di = matches!(f.value, Word::Primitive(Primitive::Identity)); [INFO] [stdout] 1429 | }) [INFO] [stdout] 1430 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/primitive/mod.rs:755:24 [INFO] [stdout] | [INFO] [stdout] 755 | if let Some(outputs) = f_memo.get(&args) { [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/primitive/mod.rs:762:21 [INFO] [stdout] | [INFO] [stdout] 762 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 755 ~ match f_memo.get(&args) { Some(outputs) => { [INFO] [stdout] 756 | let outputs = outputs.clone(); [INFO] [stdout] ... [INFO] [stdout] 761 | return Ok(()); [INFO] [stdout] 762 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/primitive/mod.rs:1152:24 [INFO] [stdout] | [INFO] [stdout] 1152 | let regex = if let Some(regex) = cache.get(&pattern) { [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/primitive/mod.rs:1154:9 [INFO] [stdout] | [INFO] [stdout] 1154 | } 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] 1152 ~ let regex = match cache.get(&pattern) { Some(regex) => { [INFO] [stdout] 1153 | regex [INFO] [stdout] 1154 ~ } _ => { [INFO] [stdout] 1155 | let regex = [INFO] [stdout] 1156 | Regex::new(&pattern).map_err(|e| env.error(format!("Invalid pattern: {}", e)))?; [INFO] [stdout] 1157 | cache.entry(pattern.clone()).or_insert(regex.clone()) [INFO] [stdout] 1158 ~ }}; [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/primitive/mod.rs:1450:20 [INFO] [stdout] | [INFO] [stdout] 1450 | if let Some(PrimDocLine::Example(example)) = lines.last_mut() { [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/primitive/mod.rs:1453:17 [INFO] [stdout] | [INFO] [stdout] 1453 | } 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] 1450 ~ match lines.last_mut() { Some(PrimDocLine::Example(example)) => { [INFO] [stdout] 1451 | example.input.push('\n'); [INFO] [stdout] 1452 | example.input.push_str(ex); [INFO] [stdout] 1453 ~ } _ => { [INFO] [stdout] 1454 | lines.push(PrimDocLine::Text(parse_doc_line_fragments(line))); [INFO] [stdout] 1455 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/primitive/mod.rs:1464:15 [INFO] [stdout] | [INFO] [stdout] 1464 | while let Some(PrimDocLine::Text(frags)) = lines.first() { [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/primitive/mod.rs:1470:9 [INFO] [stdout] | [INFO] [stdout] 1470 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/primitive/mod.rs:1471:15 [INFO] [stdout] | [INFO] [stdout] 1471 | while let Some(PrimDocLine::Text(frags)) = lines.last() { [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/primitive/mod.rs:1477:9 [INFO] [stdout] | [INFO] [stdout] 1477 | } [INFO] [stdout] | ^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/run.rs:481:24 [INFO] [stdout] | [INFO] [stdout] 481 | if let Some(f) = self.rt.function_stack.pop() { [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] 484 | } else if let Some(mut value) = self.rt.stack.pop() { [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/run.rs:484:21 [INFO] [stdout] | [INFO] [stdout] 484 | } else if let Some(mut value) = self.rt.stack.pop() { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/run.rs:488:21 [INFO] [stdout] | [INFO] [stdout] 488 | } 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] 481 ~ match self.rt.function_stack.pop() { Some(f) => { [INFO] [stdout] 482 | // Binding is an imported function [INFO] [stdout] 483 | self.asm.bind_function(local, f, span, None); [INFO] [stdout] 484 ~ } _ => { match self.rt.stack.pop() { Some(mut value) => { [INFO] [stdout] 485 | value.compress(); [INFO] [stdout] 486 | // Binding is a constant [INFO] [stdout] 487 | self.asm.bind_const(local, Some(value), span, None); [INFO] [stdout] 488 ~ } _ => { [INFO] [stdout] 489 | // Binding is an empty function [INFO] [stdout] ... [INFO] [stdout] 495 | self.asm.bind_function(local, func, span, None); [INFO] [stdout] 496 ~ }}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/run.rs:1065:16 [INFO] [stdout] | [INFO] [stdout] 1065 | if let BindingKind::Const(Some(val)) = &binding.kind { [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/run.rs:1068:13 [INFO] [stdout] | [INFO] [stdout] 1068 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1065 ~ match &binding.kind { BindingKind::Const(Some(val)) => { [INFO] [stdout] 1066 | let name = binding.span.as_str(self.inputs(), |s| s.into()); [INFO] [stdout] 1067 | bindings.insert(name, val.clone()); [INFO] [stdout] 1068 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/run.rs:1076:16 [INFO] [stdout] | [INFO] [stdout] 1076 | if let BindingKind::Func(f) = &binding.kind { [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/run.rs:1079:13 [INFO] [stdout] | [INFO] [stdout] 1079 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1076 ~ match &binding.kind { BindingKind::Func(f) => { [INFO] [stdout] 1077 | let name = binding.span.as_str(self.inputs(), |s| s.into()); [INFO] [stdout] 1078 | bindings.insert(name, f.clone()); [INFO] [stdout] 1079 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/run.rs:1556:20 [INFO] [stdout] | [INFO] [stdout] 1556 | if let Err(e) = self.wait(id.into()) { [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/run.rs:1558:17 [INFO] [stdout] | [INFO] [stdout] 1558 | } 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] 1556 ~ match self.wait(id.into()) { Err(e) => { [INFO] [stdout] 1557 | e [INFO] [stdout] 1558 ~ } _ => { [INFO] [stdout] 1559 | self.error("Thread channel closed") [INFO] [stdout] 1560 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/run.rs:1579:31 [INFO] [stdout] | [INFO] [stdout] 1579 | return Err(if let Err(e) = self.wait(id.into()) { [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/run.rs:1581:17 [INFO] [stdout] | [INFO] [stdout] 1581 | } 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] 1579 ~ return Err(match self.wait(id.into()) { Err(e) => { [INFO] [stdout] 1580 | e [INFO] [stdout] 1581 ~ } _ => { [INFO] [stdout] 1582 | self.error("Thread channel closed") [INFO] [stdout] 1583 ~ }}) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sys.rs:1068:20 [INFO] [stdout] | [INFO] [stdout] 1068 | if let Some(line) = env.rt.backend.scan_line_stdin().map_err(|e| env.error(e))? { [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/sys.rs:1070:17 [INFO] [stdout] | [INFO] [stdout] 1070 | } 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] 1068 ~ match env.rt.backend.scan_line_stdin().map_err(|e| env.error(e))? { Some(line) => { [INFO] [stdout] 1069 | env.push(line); [INFO] [stdout] 1070 ~ } _ => { [INFO] [stdout] 1071 | env.push(0u8); [INFO] [stdout] 1072 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sys.rs:1450:20 [INFO] [stdout] | [INFO] [stdout] 1450 | if let Err(e) = env.rt.backend.stream_audio(Box::new(move |time_array| { [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] | | [INFO] [stdout] 1451 | | let time_array = Array::::from(time_array); [INFO] [stdout] 1452 | | stream_env.push(time_array); [INFO] [stdout] 1453 | | stream_env.call(f.clone())?; [INFO] [stdout] ... | [INFO] [stdout] 1473 | | } [INFO] [stdout] 1474 | | })) { [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/sys.rs:1476:17 [INFO] [stdout] | [INFO] [stdout] 1476 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 1450 ~ match env.rt.backend.stream_audio(Box::new(move |time_array| { [INFO] [stdout] 1451 | let time_array = Array::::from(time_array); [INFO] [stdout] ... [INFO] [stdout] 1473 | } [INFO] [stdout] 1474 ~ })) { Err(e) => { [INFO] [stdout] 1475 | return Err(env.error(e)); [INFO] [stdout] 1476 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sys_native.rs:68:12 [INFO] [stdout] | [INFO] [stdout] 68 | if let Some(child) = Arc::get_mut(&mut self.child) { [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/sys_native.rs:70:9 [INFO] [stdout] | [INFO] [stdout] 70 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 68 ~ match Arc::get_mut(&mut self.child) { Some(child) => { [INFO] [stdout] 69 | _ = child.kill(); [INFO] [stdout] 70 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sys_native.rs:247:15 [INFO] [stdout] | [INFO] [stdout] 247 | Ok(if let Some(file) = self.files.get_mut(&handle) { [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] 248 | SysStream::File(file) [INFO] [stdout] 249 | } else if let Some(child) = self.child_stdins.get_mut(&handle) { [INFO] [stdout] | ---------------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 250 | SysStream::ChildStdin(child) [INFO] [stdout] 251 | } else if let Some(child) = self.child_stdouts.get_mut(&handle) { [INFO] [stdout] | ----------------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 252 | SysStream::ChildStdout(child) [INFO] [stdout] 253 | } else if let Some(child) = self.child_stderrs.get_mut(&handle) { [INFO] [stdout] | ----------------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 254 | SysStream::ChildStderr(child) [INFO] [stdout] 255 | } else if let Some(socket) = self.tcp_sockets.get(&handle) { [INFO] [stdout] | ----------------------------- this value has a significant drop implementation which may observe a major change in drop order and requires your discretion [INFO] [stdout] 256 | SysStream::TcpSocket(socket) [INFO] [stdout] 257 | } else if let Some(tls_socket) = self.tls_sockets.get(&handle) { [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/sys_native.rs:249:9 [INFO] [stdout] | [INFO] [stdout] 249 | } else if let Some(child) = self.child_stdins.get_mut(&handle) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/sys_native.rs:251:9 [INFO] [stdout] | [INFO] [stdout] 251 | } else if let Some(child) = self.child_stdouts.get_mut(&handle) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/sys_native.rs:253:9 [INFO] [stdout] | [INFO] [stdout] 253 | } else if let Some(child) = self.child_stderrs.get_mut(&handle) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/sys_native.rs:255:9 [INFO] [stdout] | [INFO] [stdout] 255 | } else if let Some(socket) = self.tcp_sockets.get(&handle) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/sys_native.rs:257:9 [INFO] [stdout] | [INFO] [stdout] 257 | } else if let Some(tls_socket) = self.tls_sockets.get(&handle) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/sys_native.rs:259:9 [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] 247 ~ Ok(match self.files.get_mut(&handle) { Some(file) => { [INFO] [stdout] 248 | SysStream::File(file) [INFO] [stdout] 249 ~ } _ => { match self.child_stdins.get_mut(&handle) { Some(child) => { [INFO] [stdout] 250 | SysStream::ChildStdin(child) [INFO] [stdout] 251 ~ } _ => { match self.child_stdouts.get_mut(&handle) { Some(child) => { [INFO] [stdout] 252 | SysStream::ChildStdout(child) [INFO] [stdout] 253 ~ } _ => { match self.child_stderrs.get_mut(&handle) { Some(child) => { [INFO] [stdout] 254 | SysStream::ChildStderr(child) [INFO] [stdout] 255 ~ } _ => { match self.tcp_sockets.get(&handle) { Some(socket) => { [INFO] [stdout] 256 | SysStream::TcpSocket(socket) [INFO] [stdout] 257 ~ } _ => { match self.tls_sockets.get(&handle) { Some(tls_socket) => { [INFO] [stdout] 258 | SysStream::TlsSocket(tls_socket) [INFO] [stdout] 259 ~ } _ => { [INFO] [stdout] 260 | return Err("Invalid file handle".to_string()); [INFO] [stdout] 261 ~ }}}}}}}}}}}}) [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sys_native.rs:264:12 [INFO] [stdout] | [INFO] [stdout] 264 | if let Some(listener) = self.tcp_listeners.get(&handle) { [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/sys_native.rs:266:9 [INFO] [stdout] | [INFO] [stdout] 266 | } 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] 264 ~ match self.tcp_listeners.get(&handle) { Some(listener) => { [INFO] [stdout] 265 | Some(f(&listener)) [INFO] [stdout] 266 ~ } _ => { [INFO] [stdout] 267 | (self.tls_listeners.get(&handle)).map(|listener| f(&listener.listener)) [INFO] [stdout] 268 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sys_native.rs:271:12 [INFO] [stdout] | [INFO] [stdout] 271 | if let Some(sock) = self.tcp_sockets.get(&handle) { [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/sys_native.rs:273:9 [INFO] [stdout] | [INFO] [stdout] 273 | } 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] 271 ~ match self.tcp_sockets.get(&handle) { Some(sock) => { [INFO] [stdout] 272 | Some(f(&sock)) [INFO] [stdout] 273 ~ } _ => { [INFO] [stdout] 274 | (self.tls_sockets.get(&handle)).map(|sock| f(&sock.stream)) [INFO] [stdout] 275 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sys_native.rs:600:20 [INFO] [stdout] | [INFO] [stdout] 600 | if let Some(mut child) = NATIVE_SYS [INFO] [stdout] | ____________________^ - [INFO] [stdout] | |__________________________________________| [INFO] [stdout] 601 | || .gifs_child [INFO] [stdout] 602 | || .lock() [INFO] [stdout] 603 | || .replace(command.arg(&temp_path).spawn()?) [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] | [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/sys_native.rs:606:17 [INFO] [stdout] | [INFO] [stdout] 606 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 600 ~ match NATIVE_SYS [INFO] [stdout] 601 | .gifs_child [INFO] [stdout] 602 | .lock() [INFO] [stdout] 603 | .replace(command.arg(&temp_path).spawn()?) [INFO] [stdout] 604 ~ { Some(mut child) => { [INFO] [stdout] 605 | child.kill()?; [INFO] [stdout] 606 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sys_native.rs:715:12 [INFO] [stdout] | [INFO] [stdout] 715 | if let Some(listener) = NATIVE_SYS.tcp_listeners.get_mut(&handle) { [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/sys_native.rs:721:9 [INFO] [stdout] | [INFO] [stdout] 721 | } 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] 715 ~ match NATIVE_SYS.tcp_listeners.get_mut(&handle) { Some(listener) => { [INFO] [stdout] 716 | let (stream, _) = listener.accept().map_err(|e| e.to_string())?; [INFO] [stdout] ... [INFO] [stdout] 720 | Ok(handle) [INFO] [stdout] 721 ~ } _ => { [INFO] [stdout] 722 | #[cfg(feature = "tls")] [INFO] [stdout] ... [INFO] [stdout] 741 | Err("Invalid tcp listener handle".to_string()) [INFO] [stdout] 742 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sys_native.rs:822:19 [INFO] [stdout] | [INFO] [stdout] 822 | } else if let Some((_, mut file)) = NATIVE_SYS.files.remove(&handle) { [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] 823 | file.get_mut().flush().map_err(|e| e.to_string()) [INFO] [stdout] 824 | } else if let Some((_, socket)) = NATIVE_SYS.tcp_sockets.remove(&handle) { [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] 827 | } else if let Some((_, socket)) = NATIVE_SYS.tls_sockets.remove(&handle) { [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/sys_native.rs:824:9 [INFO] [stdout] | [INFO] [stdout] 824 | } else if let Some((_, socket)) = NATIVE_SYS.tcp_sockets.remove(&handle) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/sys_native.rs:827:9 [INFO] [stdout] | [INFO] [stdout] 827 | } else if let Some((_, socket)) = NATIVE_SYS.tls_sockets.remove(&handle) { [INFO] [stdout] | ^ [INFO] [stdout] help: the value is now dropped here in Edition 2024 [INFO] [stdout] --> src/sys_native.rs:830:9 [INFO] [stdout] | [INFO] [stdout] 830 | } else if NATIVE_SYS.tcp_listeners.remove(&handle).is_some() [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 822 ~ } else { match NATIVE_SYS.files.remove(&handle) { Some((_, mut file)) => { [INFO] [stdout] 823 | file.get_mut().flush().map_err(|e| e.to_string()) [INFO] [stdout] 824 ~ } _ => { match NATIVE_SYS.tcp_sockets.remove(&handle) { Some((_, socket)) => { [INFO] [stdout] 825 | NATIVE_SYS.hostnames.remove(&handle); [INFO] [stdout] 826 | (&mut &socket).flush().map_err(|e| e.to_string()) [INFO] [stdout] 827 ~ } _ => { match NATIVE_SYS.tls_sockets.remove(&handle) { Some((_, socket)) => { [INFO] [stdout] 828 | NATIVE_SYS.hostnames.remove(&handle); [INFO] [stdout] 829 | (&mut &socket).flush().map_err(|e| e.to_string()) [INFO] [stdout] 830 ~ } _ => if NATIVE_SYS.tcp_listeners.remove(&handle).is_some() [INFO] [stdout] 831 | || NATIVE_SYS.tls_listeners.remove(&handle).is_some() [INFO] [stdout] ... [INFO] [stdout] 836 | Err("Invalid stream handle".to_string()) [INFO] [stdout] 837 ~ }}}}}}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/sys_native.rs:923:12 [INFO] [stdout] | [INFO] [stdout] 923 | if let Ok(443) = 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/sys_native.rs:945:9 [INFO] [stdout] | [INFO] [stdout] 945 | } 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] 923 ~ match port { Ok(443) => { [INFO] [stdout] 924 | static CLIENT_CONFIG: Lazy> = Lazy::new(|| { [INFO] [stdout] ... [INFO] [stdout] 944 | } [INFO] [stdout] 945 ~ } _ => { [INFO] [stdout] 946 | (stream.write_all(request.as_bytes())).map_err(|e| e.to_string())?; [INFO] [stdout] 947 | stream.read_to_end(&mut buffer).map_err(|e| e.to_string())?; [INFO] [stdout] 948 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/types.rs:281:28 [INFO] [stdout] | [INFO] [stdout] 281 | if let ScalarType::Box(ty) = x.scalar { [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/types.rs:288:25 [INFO] [stdout] | [INFO] [stdout] 288 | } [INFO] [stdout] | ^ [INFO] [stdout] help: a `match` with a single arm can preserve the drop order up to Edition 2021 [INFO] [stdout] | [INFO] [stdout] 281 ~ match x.scalar { ScalarType::Box(ty) => { [INFO] [stdout] 282 | self.stack.push(if let Some(ty) = ty { [INFO] [stdout] ... [INFO] [stdout] 287 | return Ok(()); [INFO] [stdout] 288 ~ } _ => {}} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/types.rs:282:48 [INFO] [stdout] | [INFO] [stdout] 282 | ... self.stack.push(if let Some(ty) = ty { [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/types.rs:284:29 [INFO] [stdout] | [INFO] [stdout] 284 | ... } 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] 282 ~ self.stack.push(match ty { Some(ty) => { [INFO] [stdout] 283 | *ty [INFO] [stdout] 284 ~ } _ => { [INFO] [stdout] 285 | Type::new(ScalarType::Real, [0]) [INFO] [stdout] 286 ~ }}); [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024 [INFO] [stdout] --> src/value.rs:1911:12 [INFO] [stdout] | [INFO] [stdout] 1911 | if let Some(value) = &mut self.value { [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/value.rs:1913:9 [INFO] [stdout] | [INFO] [stdout] 1913 | } 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] 1911 ~ match &mut self.value { Some(value) => { [INFO] [stdout] 1912 | value.append(row, false, ctx)?; [INFO] [stdout] 1913 ~ } _ => { [INFO] [stdout] 1914 | row.reserve_min(self.capacity); [INFO] [stdout] 1915 | row.shape_mut().insert(0, 1); [INFO] [stdout] 1916 | self.value = Some(row); [INFO] [stdout] 1917 ~ }} [INFO] [stdout] | [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 297 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0133`. [INFO] [stdout] [INFO] [stderr] Migrating src/main.rs from 2021 edition to 2024 [INFO] [stderr] warning: failed to automatically apply fixes suggested by rustc to crate `uiua` [INFO] [stderr] [INFO] [stderr] after fixes were automatically applied the compiler reported errors within these files: [INFO] [stderr] [INFO] [stderr] * src/algorithm/invert.rs [INFO] [stderr] * src/algorithm/pervade.rs [INFO] [stderr] * src/algorithm/table.rs [INFO] [stderr] * src/compile/modifier.rs [INFO] [stderr] * src/cowslice.rs [INFO] [stderr] * src/ffi.rs [INFO] [stderr] * src/format.rs [INFO] [stderr] * src/primitive/defs.rs [INFO] [stderr] * src/primitive/mod.rs [INFO] [stderr] * src/profile.rs [INFO] [stderr] * src/sys.rs [INFO] [stderr] * src/value.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/algorithm/invert.rs:163:9 [INFO] [stderr] | [INFO] [stderr] 163 | (($($matching:expr_2021),*), ($($before:expr_2021),*) $(,($($after: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/algorithm/invert.rs:163:37 [INFO] [stderr] | [INFO] [stderr] 163 | (($($matching:expr_2021),*), ($($before:expr_2021),*) $(,($($after: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/algorithm/invert.rs:163:65 [INFO] [stderr] | [INFO] [stderr] 163 | (($($matching:expr_2021),*), ($($before:expr_2021),*) $(,($($after: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/algorithm/invert.rs:170:6 [INFO] [stderr] | [INFO] [stderr] 170 | ($matching:expr_2021, ($($before:expr_2021),*) $(,($($after: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/algorithm/invert.rs:170:30 [INFO] [stderr] | [INFO] [stderr] 170 | ($matching:expr_2021, ($($before:expr_2021),*) $(,($($after: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/algorithm/invert.rs:170:58 [INFO] [stderr] | [INFO] [stderr] 170 | ($matching:expr_2021, ($($before:expr_2021),*) $(,($($after: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/algorithm/invert.rs:177:6 [INFO] [stderr] | [INFO] [stderr] 177 | ($matching:expr_2021, $before:expr_2021 $(,($($after: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/algorithm/invert.rs:177:27 [INFO] [stderr] | [INFO] [stderr] 177 | ($matching:expr_2021, $before:expr_2021 $(,($($after: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/algorithm/invert.rs:177:51 [INFO] [stderr] | [INFO] [stderr] 177 | ($matching:expr_2021, $before:expr_2021 $(,($($after: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/algorithm/invert.rs:358:13 [INFO] [stderr] | [INFO] [stderr] 358 | (($($before: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/algorithm/invert.rs:361:13 [INFO] [stderr] | [INFO] [stderr] 361 | (($($before:expr_2021),*), ($($after: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/algorithm/invert.rs:361:39 [INFO] [stderr] | [INFO] [stderr] 361 | (($($before:expr_2021),*), ($($after: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/algorithm/invert.rs:364:13 [INFO] [stderr] | [INFO] [stderr] 364 | (($($before:expr_2021),*), $after: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/algorithm/invert.rs:364:36 [INFO] [stderr] | [INFO] [stderr] 364 | (($($before:expr_2021),*), $after: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/algorithm/invert.rs:367:10 [INFO] [stderr] | [INFO] [stderr] 367 | ($before:expr_2021, ($($after: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/algorithm/invert.rs:367:32 [INFO] [stderr] | [INFO] [stderr] 367 | ($before:expr_2021, ($($after: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/algorithm/invert.rs:370:10 [INFO] [stderr] | [INFO] [stderr] 370 | ($before:expr_2021, $after: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/algorithm/invert.rs:370:29 [INFO] [stderr] | [INFO] [stderr] 370 | ($before:expr_2021, $after: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/algorithm/invert.rs:377:10 [INFO] [stderr] | [INFO] [stderr] 377 | ($before:expr_2021, $after: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/algorithm/invert.rs:377:29 [INFO] [stderr] | [INFO] [stderr] 377 | ($before:expr_2021, $after: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/algorithm/invert.rs:384:13 [INFO] [stderr] | [INFO] [stderr] 384 | (($($before: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/algorithm/invert.rs:387:13 [INFO] [stderr] | [INFO] [stderr] 387 | (($($before:expr_2021),*), ($($after: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/algorithm/invert.rs:387:39 [INFO] [stderr] | [INFO] [stderr] 387 | (($($before:expr_2021),*), ($($after: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/algorithm/invert.rs:390:13 [INFO] [stderr] | [INFO] [stderr] 390 | (($($before:expr_2021),*), $after: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/algorithm/invert.rs:390:36 [INFO] [stderr] | [INFO] [stderr] 390 | (($($before:expr_2021),*), $after: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/algorithm/invert.rs:393:10 [INFO] [stderr] | [INFO] [stderr] 393 | ($before:expr_2021, ($($after: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/algorithm/invert.rs:393:32 [INFO] [stderr] | [INFO] [stderr] 393 | ($before:expr_2021, ($($after: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/algorithm/invert.rs:396:10 [INFO] [stderr] | [INFO] [stderr] 396 | ($before:expr_2021, $after: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/algorithm/invert.rs:396:29 [INFO] [stderr] | [INFO] [stderr] 396 | ($before:expr_2021, $after: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/algorithm/invert.rs:403:16 [INFO] [stderr] | [INFO] [stderr] 403 | (Flip, $before:expr_2021, $after: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] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/primitive/mod.rs:725:36 [INFO] [stdout] | [INFO] [stdout] 725 | let val: f64 = rng.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] = 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/primitive/mod.rs:726:52 [INFO] [stdout] | [INFO] [stdout] 726 | let next_seed = f64::from_bits(rng.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] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: `gen` is a keyword in the 2024 edition [INFO] [stdout] --> src/primitive/mod.rs:1185:37 [INFO] [stdout] | [INFO] [stdout] 1185 | RNG.with(|rng| rng.borrow_mut().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] [stderr] --> src/algorithm/invert.rs:403:35 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:163:19 [INFO] [stdout] | [INFO] [stdout] 163 | (($($matching:expr),*), ($($before:expr),*) $(,($($after: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] 163 | (($($matching:expr_2021),*), ($($before:expr),*) $(,($($after:expr),*))? $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:163:40 [INFO] [stdout] | [INFO] [stdout] 163 | (($($matching:expr),*), ($($before:expr),*) $(,($($after: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] 163 | (($($matching:expr),*), ($($before:expr_2021),*) $(,($($after:expr),*))? $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 403 | (Flip, $before:expr_2021, $after:expr_2021) => { [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:163:62 [INFO] [stdout] | [INFO] [stdout] 163 | (($($matching:expr),*), ($($before:expr),*) $(,($($after: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] 163 | (($($matching:expr),*), ($($before:expr),*) $(,($($after:expr_2021),*))? $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:170:16 [INFO] [stdout] | [INFO] [stdout] 170 | ($matching:expr, ($($before:expr),*) $(,($($after: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] 170 | ($matching:expr_2021, ($($before:expr),*) $(,($($after:expr),*))? $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:170:33 [INFO] [stdout] | [INFO] [stdout] 170 | ($matching:expr, ($($before:expr),*) $(,($($after: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] 170 | ($matching:expr, ($($before:expr_2021),*) $(,($($after:expr),*))? $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:170:55 [INFO] [stdout] | [INFO] [stdout] 170 | ($matching:expr, ($($before:expr),*) $(,($($after: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] 170 | ($matching:expr, ($($before:expr),*) $(,($($after:expr_2021),*))? $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:177:16 [INFO] [stdout] | [INFO] [stdout] 177 | ($matching:expr, $before:expr $(,($($after: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] 177 | ($matching:expr_2021, $before:expr $(,($($after:expr),*))? $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:177:30 [INFO] [stdout] | [INFO] [stdout] 177 | ($matching:expr, $before:expr $(,($($after: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] 177 | ($matching:expr, $before:expr_2021 $(,($($after:expr),*))? $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:177:48 [INFO] [stdout] | [INFO] [stdout] 177 | ($matching:expr, $before:expr $(,($($after: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] 177 | ($matching:expr, $before:expr $(,($($after:expr_2021),*))? $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:358:21 [INFO] [stdout] | [INFO] [stdout] 358 | (($($before: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] 358 | (($($before:expr_2021),*)) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/algorithm/invert.rs:406:16 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:361:21 [INFO] [stdout] | [INFO] [stdout] 361 | (($($before:expr),*), ($($after: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] 361 | (($($before:expr_2021),*), ($($after:expr),*)) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:361:41 [INFO] [stdout] | [INFO] [stdout] 361 | (($($before:expr),*), ($($after: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] 361 | (($($before:expr),*), ($($after:expr_2021),*)) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 406 | (Flip, $before:expr_2021) => { [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:364:21 [INFO] [stdout] | [INFO] [stdout] 364 | (($($before:expr),*), $after: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] 364 | (($($before:expr_2021),*), $after:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:364:38 [INFO] [stdout] | [INFO] [stdout] 364 | (($($before:expr),*), $after: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] 364 | (($($before:expr),*), $after:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:367:18 [INFO] [stdout] | [INFO] [stdout] 367 | ($before:expr, ($($after: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] 367 | ($before:expr_2021, ($($after:expr),*)) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:367:34 [INFO] [stdout] | [INFO] [stdout] 367 | ($before:expr, ($($after: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] 367 | ($before:expr, ($($after:expr_2021),*)) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:370:18 [INFO] [stdout] | [INFO] [stdout] 370 | ($before:expr, $after: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] 370 | ($before:expr_2021, $after:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:370:31 [INFO] [stdout] | [INFO] [stdout] 370 | ($before:expr, $after: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] 370 | ($before:expr, $after:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:377:18 [INFO] [stdout] | [INFO] [stdout] 377 | ($before:expr, $after: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] 377 | ($before:expr_2021, $after:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:377:31 [INFO] [stdout] | [INFO] [stdout] 377 | ($before:expr, $after: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] 377 | ($before:expr, $after:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/algorithm/invert.rs:409:10 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:384:21 [INFO] [stdout] | [INFO] [stdout] 384 | (($($before: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] 384 | (($($before:expr_2021),*)) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:387:21 [INFO] [stdout] | [INFO] [stdout] 387 | (($($before:expr),*), ($($after: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] 387 | (($($before:expr_2021),*), ($($after:expr),*)) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 409 | ($before:expr_2021, $after:expr_2021) => { [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:387:41 [INFO] [stdout] | [INFO] [stdout] 387 | (($($before:expr),*), ($($after: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] 387 | (($($before:expr),*), ($($after:expr_2021),*)) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:390:21 [INFO] [stdout] | [INFO] [stdout] 390 | (($($before:expr),*), $after: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] 390 | (($($before:expr_2021),*), $after:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:390:38 [INFO] [stdout] | [INFO] [stdout] 390 | (($($before:expr),*), $after: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] 390 | (($($before:expr),*), $after:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [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/algorithm/invert.rs:409:29 [INFO] [stderr] | [INFO] [stderr] 409 | ($before:expr_2021, $after: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] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:393:18 [INFO] [stdout] | [INFO] [stdout] 393 | ($before:expr, ($($after: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] 393 | ($before:expr_2021, ($($after:expr),*)) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/algorithm/invert.rs:416:10 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:393:34 [INFO] [stdout] | [INFO] [stdout] 393 | ($before:expr, ($($after: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] 393 | ($before:expr, ($($after:expr_2021),*)) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:396:18 [INFO] [stdout] | [INFO] [stdout] 396 | ($before:expr, $after: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] 396 | ($before:expr_2021, $after:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 416 | ($before:expr_2021) => { [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:396:31 [INFO] [stdout] | [INFO] [stdout] 396 | ($before:expr, $after: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] 396 | ($before:expr, $after:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:403:24 [INFO] [stdout] | [INFO] [stdout] 403 | (Flip, $before:expr, $after: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] 403 | (Flip, $before:expr_2021, $after:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:403:37 [INFO] [stdout] | [INFO] [stdout] 403 | (Flip, $before:expr, $after: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] 403 | (Flip, $before:expr, $after:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:406:24 [INFO] [stdout] | [INFO] [stdout] 406 | (Flip, $before: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] 406 | (Flip, $before:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:409:18 [INFO] [stdout] | [INFO] [stdout] 409 | ($before:expr, $after: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] 409 | ($before:expr_2021, $after:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:409:31 [INFO] [stdout] | [INFO] [stdout] 409 | ($before:expr, $after: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] 409 | ($before:expr, $after:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:416:18 [INFO] [stdout] | [INFO] [stdout] 416 | ($before: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] 416 | ($before:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:427:15 [INFO] [stdout] | [INFO] [stdout] 427 | ($pat: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] 427 | ($pat:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/algorithm/invert.rs:427:10 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:719:70 [INFO] [stdout] | [INFO] [stdout] 719 | ($name:ident, ($($pat:pat),*), |$input:ident, $comp:ident| $body: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] 719 | ($name:ident, ($($pat:pat),*), |$input:ident, $comp:ident| $body:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/invert.rs:730:58 [INFO] [stdout] | [INFO] [stdout] 730 | ($name:ident, ($($pat:pat),*), |$input:ident| $body: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] 730 | ($name:ident, ($($pat:pat),*), |$input:ident| $body:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 427 | ($pat:expr_2021) => { [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/pervade.rs:696:35 [INFO] [stdout] | [INFO] [stdout] 696 | ($name:ident $eq:tt $ordering: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] 696 | ($name:ident $eq:tt $ordering:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/pervade.rs:734:35 [INFO] [stdout] | [INFO] [stdout] 734 | ($name:ident $eq:tt $ordering: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] 734 | ($name:ident $eq:tt $ordering:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/pervade.rs:861:53 [INFO] [stdout] | [INFO] [stdout] 861 | ($name:ident, $a:ident, $b:ident, $byte_convert:expr, $byte_ret:ty, $f:expr, $err:literal) => { [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] 861 | ($name:ident, $a:ident, $b:ident, $byte_convert:expr_2021, $byte_ret:ty, $f:expr, $err:literal) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/pervade.rs:861:76 [INFO] [stdout] | [INFO] [stdout] 861 | ($name:ident, $a:ident, $b:ident, $byte_convert:expr, $byte_ret:ty, $f:expr, $err:literal) => { [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] 861 | ($name:ident, $a:ident, $b:ident, $byte_convert:expr, $byte_ret:ty, $f:expr_2021, $err:literal) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:456:14 [INFO] [stdout] | [INFO] [stdout] 456 | ($xs:expr, $ys:expr, $ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr, $fill:expr, $arith:ident, $cmp:ident) => {{ [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] 456 | ($xs:expr_2021, $ys:expr, $ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr, $fill:expr, $arith:ident, $cmp:ident) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:456:24 [INFO] [stdout] | [INFO] [stdout] 456 | ($xs:expr, $ys:expr, $ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr, $fill:expr, $arith:ident, $cmp:ident) => {{ [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] 456 | ($xs:expr, $ys:expr_2021, $ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr, $fill:expr, $arith:ident, $cmp:ident) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:456:34 [INFO] [stdout] | [INFO] [stdout] 456 | ($xs:expr, $ys:expr, $ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr, $fill:expr, $arith:ident, $cmp:ident) => {{ [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] 456 | ($xs:expr, $ys:expr, $ff:expr_2021, $ff_complex:expr, $iden:expr, $ciden:expr, $fill:expr, $arith:ident, $cmp:ident) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:456:52 [INFO] [stdout] | [INFO] [stdout] 456 | ($xs:expr, $ys:expr, $ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr, $fill:expr, $arith:ident, $cmp:ident) => {{ [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] 456 | ($xs:expr, $ys:expr, $ff:expr, $ff_complex:expr_2021, $iden:expr, $ciden:expr, $fill:expr, $arith:ident, $cmp:ident) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/algorithm/invert.rs:719:64 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:456:64 [INFO] [stdout] | [INFO] [stdout] 456 | ($xs:expr, $ys:expr, $ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr, $fill:expr, $arith:ident, $cmp:ident) => {{ [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] 456 | ($xs:expr, $ys:expr, $ff:expr, $ff_complex:expr, $iden:expr_2021, $ciden:expr, $fill:expr, $arith:ident, $cmp:ident) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:456:77 [INFO] [stdout] | [INFO] [stdout] 456 | ($xs:expr, $ys:expr, $ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr, $fill:expr, $arith:ident, $cmp:ident) => {{ [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] 456 | ($xs:expr, $ys:expr, $ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr_2021, $fill:expr, $arith:ident, $cmp:ident) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 719 | ($name:ident, ($($pat:pat),*), |$input:ident, $comp:ident| $body:expr_2021) => { [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:456:89 [INFO] [stdout] | [INFO] [stdout] 456 | ($xs:expr, $ys:expr, $ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr, $fill:expr, $arith:ident, $cmp:ident) => {{ [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] 456 | ($xs:expr, $ys:expr, $ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr, $fill:expr_2021, $arith:ident, $cmp:ident) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:649:22 [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr, $ciden: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] 649 | ($ff:expr_2021, $ff_complex:expr, $iden:expr, $ciden:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:649:40 [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr, $ciden: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] 649 | ($ff:expr, $ff_complex:expr_2021, $iden:expr, $ciden:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:649:52 [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr, $ciden: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] 649 | ($ff:expr, $ff_complex:expr, $iden:expr_2021, $ciden:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:649:65 [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr, $ciden: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] 649 | ($ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:649:22 [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 710 | reduce_table_math!(reduce_table_nums, f64, num_num, num_scalar_fill); [INFO] [stdout] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: this warning originates in the macro `reduce_table_math` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr_2021, $ff_complex:expr, $iden:expr, $ciden:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:649:40 [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 710 | reduce_table_math!(reduce_table_nums, f64, num_num, num_scalar_fill); [INFO] [stdout] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: this warning originates in the macro `reduce_table_math` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr_2021, $iden:expr, $ciden:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:649:52 [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 710 | reduce_table_math!(reduce_table_nums, f64, num_num, num_scalar_fill); [INFO] [stdout] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: this warning originates in the macro `reduce_table_math` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr_2021, $ciden:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/algorithm/invert.rs:730:52 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:649:65 [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 710 | reduce_table_math!(reduce_table_nums, f64, num_num, num_scalar_fill); [INFO] [stdout] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: this warning originates in the macro `reduce_table_math` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:649:22 [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 711 | reduce_table_math!(reduce_coms, Complex, com_x, complex_scalar_fill); [INFO] [stdout] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: this warning originates in the macro `reduce_table_math` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr_2021, $ff_complex:expr, $iden:expr, $ciden:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 730 | ($name:ident, ($($pat:pat),*), |$input:ident| $body:expr_2021) => { [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:649:40 [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 711 | reduce_table_math!(reduce_coms, Complex, com_x, complex_scalar_fill); [INFO] [stdout] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: this warning originates in the macro `reduce_table_math` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr_2021, $iden:expr, $ciden:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:649:52 [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 711 | reduce_table_math!(reduce_coms, Complex, com_x, complex_scalar_fill); [INFO] [stdout] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: this warning originates in the macro `reduce_table_math` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr_2021, $ciden:expr) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/algorithm/table.rs:649:65 [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr) => { [INFO] [stdout] | ^^^^ [INFO] [stdout] ... [INFO] [stdout] 711 | reduce_table_math!(reduce_coms, Complex, com_x, complex_scalar_fill); [INFO] [stdout] | -------------------------------------------------------------------- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see Migration Guide [INFO] [stdout] = note: this warning originates in the macro `reduce_table_math` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] help: to keep the existing behavior, use the `expr_2021` fragment specifier [INFO] [stdout] | [INFO] [stdout] 649 | ($ff:expr, $ff_complex:expr, $iden:expr, $ciden:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/compile/modifier.rs:499:22 [INFO] [stdout] | [INFO] [stdout] 499 | ($instrs:expr, $sig: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] 499 | ($instrs:expr_2021, $sig:expr) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/compile/modifier.rs:499:33 [INFO] [stdout] | [INFO] [stdout] 499 | ($instrs:expr, $sig: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] 499 | ($instrs:expr, $sig:expr_2021) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/cowslice.rs:15:14 [INFO] [stdout] | [INFO] [stdout] 15 | ($($item: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] 15 | ($($item:expr_2021),* $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/cowslice.rs:18:12 [INFO] [stdout] | [INFO] [stdout] 18 | ($item:expr; $len: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] 18 | ($item:expr_2021; $len:expr) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/cowslice.rs:18:23 [INFO] [stdout] | [INFO] [stdout] 18 | ($item:expr; $len: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] 18 | ($item:expr; $len:expr_2021) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/algorithm/pervade.rs:696:25 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/ffi.rs:347:39 [INFO] [stdout] | [INFO] [stdout] 347 | ($c_ty:ty, $len_index: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] 347 | ($c_ty:ty, $len_index:expr_2021) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/ffi.rs:478:29 [INFO] [stdout] | [INFO] [stdout] 478 | ($ty:ty, $i:expr, $numty:ty ) => { [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] 478 | ($ty:ty, $i:expr_2021, $numty:ty ) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 696 | ($name:ident $eq:tt $ordering:expr_2021) => { [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/ffi.rs:492:39 [INFO] [stdout] | [INFO] [stdout] 492 | ($c_ty:ty, $len_index:expr, $i:expr, $numty:ty $(,$numty2:ty)?) => { [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] 492 | ($c_ty:ty, $len_index:expr_2021, $i:expr, $numty:ty $(,$numty2:ty)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/ffi.rs:492:48 [INFO] [stdout] | [INFO] [stdout] 492 | ($c_ty:ty, $len_index:expr, $i:expr, $numty:ty $(,$numty2:ty)?) => { [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] 492 | ($c_ty:ty, $len_index:expr, $i:expr_2021, $numty:ty $(,$numty2:ty)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/ffi.rs:831:23 [INFO] [stdout] | [INFO] [stdout] 831 | ($arr:expr, $ty:ty) => {{ [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] 831 | ($arr:expr_2021, $ty:ty) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: see issue #123742 for more information [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/ffi.rs:837:23 [INFO] [stdout] | [INFO] [stdout] 837 | ($arr:expr, $ty:ty) => { [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] 837 | ($arr:expr_2021, $ty:ty) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = help: add `#![feature(expr_fragment_specifier_2024)]` to the crate attributes to enable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/ffi.rs:1020:27 [INFO] [stdout] | [INFO] [stdout] 1020 | ($arr:expr, $ty:ty) => { [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] 1020 | ($arr:expr_2021, $ty:ty) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] = note: this compiler was built on 2024-09-17; consider upgrading it if it is out of date [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/format.rs:104:15 [INFO] [stdout] | [INFO] [stdout] 104 | ($default: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] 104 | ($default:expr_2021) => {{ [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/format.rs:121:22 [INFO] [stdout] | [INFO] [stdout] 121 | $default: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] 121 | $default:expr_2021 [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error[E0658]: fragment specifier `expr_2021` is unstable [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/primitive/defs.rs:78:71 [INFO] [stdout] | [INFO] [stdout] 78 | ($(#[doc = $doc:literal] $(#[$attr:meta])* ($name:literal, $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] 78 | ($(#[doc = $doc:literal] $(#[$attr:meta])* ($name:literal, $value:expr_2021)),* $(,)?) => { [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] --> src/algorithm/pervade.rs:734:25 [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/primitive/defs.rs:323:29 [INFO] [stdout] | [INFO] [stdout] 323 | $(($outputs: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] 323 | $(($outputs:expr_2021))? [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/primitive/defs.rs:324:30 [INFO] [stdout] | [INFO] [stdout] 324 | $([$mod_args: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] 324 | $([$mod_args:expr_2021])? [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] 734 | ($name:ident $eq:tt $ordering:expr_2021) => { [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/primitive/defs.rs:326:50 [INFO] [stdout] | [INFO] [stdout] 326 | $variant:ident, $class:ident, $names:expr $(,$purity:ident)* [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] 326 | $variant:ident, $class:ident, $names:expr_2021 $(,$purity:ident)* [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/primitive/defs.rs:2945:25 [INFO] [stdout] | [INFO] [stdout] 2945 | $(($outputs: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] 2945 | $(($outputs:expr_2021))? [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] | [INFO] [stdout] warning: the `expr` fragment specifier will accept more expressions in the 2024 edition [INFO] [stdout] --> src/primitive/defs.rs:2946:23 [INFO] [stdout] | [INFO] [stdout] 2946 | $([$margs: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] 2946 | $([$margs:expr_2021])?, [INFO] [stdout] | ~~~~~~~~~ [INFO] [stdout] [INFO] [stdout] [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/algorithm/pervade.rs:861:39 [INFO] [stderr] | [INFO] [stderr] 861 | ($name:ident, $a:ident, $b:ident, $byte_convert:expr_2021, $byte_ret:ty, $f:expr_2021, $err:literal) => { [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/algorithm/pervade.rs:861:78 [INFO] [stderr] | [INFO] [stderr] 861 | ($name:ident, $a:ident, $b:ident, $byte_convert:expr_2021, $byte_ret:ty, $f:expr_2021, $err:literal) => { [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/algorithm/table.rs:456:10 [INFO] [stderr] | [INFO] [stderr] 456 | ... ($xs:expr_2021, $ys:expr_2021, $ff:expr_2021, $ff_complex:expr_2021, $iden:expr_2021, $ciden:expr_2021, $fill:expr_2021, $arith:ide... [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/algorithm/table.rs:456:25 [INFO] [stderr] | [INFO] [stderr] 456 | ... ($xs:expr_2021, $ys:expr_2021, $ff:expr_2021, $ff_complex:expr_2021, $iden:expr_2021, $ciden:expr_2021, $fill:expr_2021, $arith:ide... [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/algorithm/table.rs:456:40 [INFO] [stderr] | [INFO] [stderr] 456 | ... ($xs:expr_2021, $ys:expr_2021, $ff:expr_2021, $ff_complex:expr_2021, $iden:expr_2021, $ciden:expr_2021, $fill:expr_2021, $arith:ide... [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/algorithm/table.rs:456:55 [INFO] [stderr] | [INFO] [stderr] 456 | ... ($xs:expr_2021, $ys:expr_2021, $ff:expr_2021, $ff_complex:expr_2021, $iden:expr_2021, $ciden:expr_2021, $fill:expr_2021, $arith:ide... [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/algorithm/table.rs:456:78 [INFO] [stderr] | [INFO] [stderr] 456 | ... ($xs:expr_2021, $ys:expr_2021, $ff:expr_2021, $ff_complex:expr_2021, $iden:expr_2021, $ciden:expr_2021, $fill:expr_2021, $arith:ide... [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/algorithm/table.rs:456:95 [INFO] [stderr] | [INFO] [stderr] 456 | ... ($xs:expr_2021, $ys:expr_2021, $ff:expr_2021, $ff_complex:expr_2021, $iden:expr_2021, $ciden:expr_2021, $fill:expr_2021, $arith:ide... [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/algorithm/table.rs:456:113 [INFO] [stderr] | [INFO] [stderr] 456 | ... ($xs:expr_2021, $ys:expr_2021, $ff:expr_2021, $ff_complex:expr_2021, $iden:expr_2021, $ciden:expr_2021, $fill:expr_2021, $arith:ide... [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/compile/modifier.rs:498:14 [INFO] [stderr] | [INFO] [stderr] 498 | ($instrs:expr_2021, $sig: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/compile/modifier.rs:498:33 [INFO] [stderr] | [INFO] [stderr] 498 | ($instrs:expr_2021, $sig: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/cowslice.rs:15:8 [INFO] [stderr] | [INFO] [stderr] 15 | ($($item: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/cowslice.rs:18:6 [INFO] [stderr] | [INFO] [stderr] 18 | ($item:expr_2021; $len: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/cowslice.rs:18:23 [INFO] [stderr] | [INFO] [stderr] 18 | ($item:expr_2021; $len: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/ffi.rs:347:28 [INFO] [stderr] | [INFO] [stderr] 347 | ($c_ty:ty, $len_index: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/ffi.rs:478:26 [INFO] [stderr] | [INFO] [stderr] 478 | ($ty:ty, $i:expr_2021, $numty:ty ) => { [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/ffi.rs:492:28 [INFO] [stderr] | [INFO] [stderr] 492 | ($c_ty:ty, $len_index:expr_2021, $i:expr_2021, $numty:ty $(,$numty2:ty)?) => { [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/ffi.rs:492:50 [INFO] [stderr] | [INFO] [stderr] 492 | ($c_ty:ty, $len_index:expr_2021, $i:expr_2021, $numty:ty $(,$numty2:ty)?) => { [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/ffi.rs:831:18 [INFO] [stderr] | [INFO] [stderr] 831 | ($arr:expr_2021, $ty:ty) => {{ [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/ffi.rs:837:18 [INFO] [stderr] | [INFO] [stderr] 837 | ($arr:expr_2021, $ty:ty) => { [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/ffi.rs:1020:22 [INFO] [stderr] | [INFO] [stderr] 1020 | ($arr:expr_2021, $ty:ty) => { [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/format.rs:104:6 [INFO] [stderr] | [INFO] [stderr] 104 | ($default: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/format.rs:121:13 [INFO] [stderr] | [INFO] [stderr] 121 | $default: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/primitive/defs.rs:78:64 [INFO] [stderr] | [INFO] [stderr] 78 | ($(#[doc = $doc:literal] $(#[$attr:meta])* ($name:literal, $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/primitive/defs.rs:323:20 [INFO] [stderr] | [INFO] [stderr] 323 | $(($outputs: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/primitive/defs.rs:324:20 [INFO] [stderr] | [INFO] [stderr] 324 | $([$mod_args: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/primitive/defs.rs:326:43 [INFO] [stderr] | [INFO] [stderr] 326 | $variant:ident, $class:ident, $names:expr_2021 $(,$purity:ident)* [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/primitive/defs.rs:2945:16 [INFO] [stderr] | [INFO] [stderr] 2945 | $(($outputs: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/primitive/defs.rs:2946:16 [INFO] [stderr] | [INFO] [stderr] 2946 | $([$margs: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/primitive/mod.rs:274:19 [WARN] too many lines in the log, truncating it