[INFO] fetching crate leo-passes 1.12.0... [INFO] checking leo-passes-1.12.0 against try#4d98531622e1718ae0bc3c7a1ab9cd8938428452+rustflags=-Dtail_expr_drop_order for pr-129604 [INFO] extracting crate leo-passes 1.12.0 into /workspace/builds/worker-7-tc2/source [INFO] validating manifest of crates.io crate leo-passes 1.12.0 on toolchain 4d98531622e1718ae0bc3c7a1ab9cd8938428452 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate leo-passes 1.12.0 [INFO] finished tweaking crates.io crate leo-passes 1.12.0 [INFO] tweaked toml for crates.io crate leo-passes 1.12.0 written to /workspace/builds/worker-7-tc2/source/Cargo.toml [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Updating crates.io index [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Locking 357 packages to latest compatible versions [INFO] [stderr] Adding addr2line v0.22.0 (latest: v0.24.1) [INFO] [stderr] Adding base64 v0.21.7 (latest: v0.22.1) [INFO] [stderr] Adding bech32 v0.9.1 (latest: v0.11.0) [INFO] [stderr] Adding bitflags v1.3.2 (latest: v2.6.0) [INFO] [stderr] Adding core-foundation v0.9.4 (latest: v0.10.0) [INFO] [stderr] Adding dirs v4.0.0 (latest: v5.0.1) [INFO] [stderr] Adding dirs-sys v0.3.7 (latest: v0.4.1) [INFO] [stderr] Adding encode_unicode v0.3.6 (latest: v1.0.0) [INFO] [stderr] Adding foreign-types v0.3.2 (latest: v0.5.0) [INFO] [stderr] Adding foreign-types-shared v0.1.1 (latest: v0.3.1) [INFO] [stderr] Adding generic-array v0.14.7 (latest: v1.1.0) [INFO] [stderr] Adding gimli v0.29.0 (latest: v0.31.0) [INFO] [stderr] Adding h2 v0.3.26 (latest: v0.4.6) [INFO] [stderr] Adding hashbrown v0.12.3 (latest: v0.14.5) [INFO] [stderr] Adding hermit-abi v0.3.9 (latest: v0.4.0) [INFO] [stderr] Adding http v0.2.12 (latest: v1.1.0) [INFO] [stderr] Adding http-body v0.4.6 (latest: v1.0.1) [INFO] [stderr] Adding hyper v0.14.30 (latest: v1.4.1) [INFO] [stderr] Adding hyper-tls v0.5.0 (latest: v0.6.0) [INFO] [stderr] Adding idna v0.5.0 (latest: v1.0.2) [INFO] [stderr] Adding indexmap v1.9.3 (latest: v2.5.0) [INFO] [stderr] Adding itertools v0.11.0 (latest: v0.13.0) [INFO] [stderr] Adding itertools v0.12.1 (latest: v0.13.0) [INFO] [stderr] Adding leo-errors v1.12.0 (latest: v2.0.0) [INFO] [stderr] Adding leo-span v1.12.0 (latest: v2.0.0) [INFO] [stderr] Adding linux-raw-sys v0.4.14 (latest: v0.6.5) [INFO] [stderr] Adding miniz_oxide v0.7.4 (latest: v0.8.0) [INFO] [stderr] Adding quick-xml v0.23.1 (latest: v0.36.1) [INFO] [stderr] Adding quote v0.3.15 (latest: v1.0.37) [INFO] [stderr] Adding reqwest v0.11.27 (latest: v0.12.7) [INFO] [stderr] Adding rustls-pemfile v1.0.4 (latest: v2.1.3) [INFO] [stderr] Adding self_update v0.38.0 (latest: v0.41.0) [INFO] [stderr] Adding syn v0.11.11 (latest: v2.0.77) [INFO] [stderr] Adding syn v1.0.109 (latest: v2.0.77) [INFO] [stderr] Adding sync_wrapper v0.1.2 (latest: v1.0.1) [INFO] [stderr] Adding system-configuration v0.5.1 (latest: v0.6.1) [INFO] [stderr] Adding system-configuration-sys v0.5.0 (latest: v0.6.0) [INFO] [stderr] Adding tower v0.4.13 (latest: v0.5.0) [INFO] [stderr] Adding unicode-xid v0.0.4 (latest: v0.2.5) [INFO] [stderr] Adding wasi v0.11.0+wasi-snapshot-preview1 (latest: v0.13.2+wasi-0.2.1) [INFO] [stderr] Adding windows-sys v0.48.0 (latest: v0.59.0) [INFO] [stderr] Adding windows-sys v0.52.0 (latest: v0.59.0) [INFO] [stderr] Adding windows-targets v0.48.5 (latest: v0.52.6) [INFO] [stderr] Adding windows_aarch64_gnullvm v0.48.5 (latest: v0.52.6) [INFO] [stderr] Adding windows_aarch64_msvc v0.48.5 (latest: v0.52.6) [INFO] [stderr] Adding windows_i686_gnu v0.48.5 (latest: v0.52.6) [INFO] [stderr] Adding windows_i686_msvc v0.48.5 (latest: v0.52.6) [INFO] [stderr] Adding windows_x86_64_gnu v0.48.5 (latest: v0.52.6) [INFO] [stderr] Adding windows_x86_64_gnullvm v0.48.5 (latest: v0.52.6) [INFO] [stderr] Adding windows_x86_64_msvc v0.48.5 (latest: v0.52.6) [INFO] [stderr] Adding winreg v0.50.0 (latest: v0.52.0) [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] a2c49e049cc37a759d118cd2ccbb31850ef774a399b00b7d406e1fcb7d510313 [INFO] running `Command { std: "docker" "start" "-a" "a2c49e049cc37a759d118cd2ccbb31850ef774a399b00b7d406e1fcb7d510313", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a2c49e049cc37a759d118cd2ccbb31850ef774a399b00b7d406e1fcb7d510313", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a2c49e049cc37a759d118cd2ccbb31850ef774a399b00b7d406e1fcb7d510313", kill_on_drop: false }` [INFO] [stdout] a2c49e049cc37a759d118cd2ccbb31850ef774a399b00b7d406e1fcb7d510313 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid -Dtail_expr_drop_order" "-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:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e2951626e1a37af46fbe9f1e580d6e7dc35e335e1c0062220a53350fe5f48b1a [INFO] running `Command { std: "docker" "start" "-a" "e2951626e1a37af46fbe9f1e580d6e7dc35e335e1c0062220a53350fe5f48b1a", kill_on_drop: false }` [INFO] [stderr] Compiling serde v1.0.209 [INFO] [stderr] Compiling crossbeam-utils v0.8.20 [INFO] [stderr] Compiling ahash v0.8.11 [INFO] [stderr] Compiling rayon-core v1.12.1 [INFO] [stderr] Checking allocator-api2 v0.2.18 [INFO] [stderr] Checking getrandom v0.2.15 [INFO] [stderr] Compiling zerocopy-derive v0.7.35 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling serde_json v1.0.127 [INFO] [stderr] Compiling openssl-sys v0.9.103 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Compiling zeroize_derive v1.4.2 [INFO] [stderr] Compiling thiserror v1.0.63 [INFO] [stderr] Checking dirs v4.0.0 [INFO] [stderr] Compiling thiserror-impl v1.0.63 [INFO] [stderr] Checking aleo-std-storage v0.1.7 [INFO] [stderr] Checking aleo-std-profiler v0.1.15 [INFO] [stderr] Checking aleo-std-cpu v0.1.4 [INFO] [stderr] Checking aleo-std-timer v0.1.2 [INFO] [stderr] Checking zeroize v1.8.1 [INFO] [stderr] Checking num-bigint v0.4.6 [INFO] [stderr] Checking crossbeam-epoch v0.9.18 [INFO] [stderr] Checking rand_xorshift v0.3.0 [INFO] [stderr] Compiling snarkvm-utilities-derives v0.16.19 [INFO] [stderr] Checking smol_str v0.2.2 [INFO] [stderr] Checking zerocopy v0.7.35 [INFO] [stderr] Checking crossbeam-deque v0.8.5 [INFO] [stderr] Checking itertools v0.11.0 [INFO] [stderr] Checking rayon v1.10.0 [INFO] [stderr] Checking bech32 v0.9.1 [INFO] [stderr] Checking ppv-lite86 v0.2.20 [INFO] [stderr] Checking hashbrown v0.14.5 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Compiling generic-array v0.14.7 [INFO] [stderr] Compiling libz-sys v1.1.20 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Compiling curl-sys v0.4.74+curl-8.9.0 [INFO] [stderr] Compiling crunchy v0.2.2 [INFO] [stderr] Compiling curl v0.4.46 [INFO] [stderr] Compiling paste v1.0.15 [INFO] [stderr] Compiling tiny-keccak v2.0.2 [INFO] [stderr] Checking bincode v1.3.3 [INFO] [stderr] Checking smallvec v1.13.2 [INFO] [stderr] Checking crypto-common v0.1.6 [INFO] [stderr] Checking block-buffer v0.10.4 [INFO] [stderr] Checking arrayvec v0.7.6 [INFO] [stderr] Checking digest v0.10.7 [INFO] [stderr] Checking colored v2.1.0 [INFO] [stderr] Checking fxhash v0.2.1 [INFO] [stderr] Checking parking_lot_core v0.9.10 [INFO] [stderr] Checking constant_time_eq v0.3.1 [INFO] [stderr] Checking cpufeatures v0.2.13 [INFO] [stderr] Checking arrayref v0.3.8 [INFO] [stderr] Checking sha2 v0.10.8 [INFO] [stderr] Checking blake2s_simd v1.0.2 [INFO] [stderr] Checking blake2 v0.10.6 [INFO] [stderr] Checking parking_lot v0.12.3 [INFO] [stderr] Compiling snarkvm-circuit-types-boolean v0.16.19 [INFO] [stderr] Compiling snarkvm-circuit-environment-witness v0.16.19 [INFO] [stderr] Compiling snarkvm-circuit-types-field v0.16.19 [INFO] [stderr] Compiling snarkvm-circuit-types-scalar v0.16.19 [INFO] [stderr] Compiling snarkvm-circuit-types-group v0.16.19 [INFO] [stderr] Compiling snarkvm-circuit-types-integers v0.16.19 [INFO] [stderr] Compiling unicode-xid v0.0.4 [INFO] [stderr] Compiling snarkvm-circuit-types-string v0.16.19 [INFO] [stderr] Compiling snarkvm-circuit-types-address v0.16.19 [INFO] [stderr] Checking bs58 v0.5.1 [INFO] [stderr] Compiling synom v0.11.3 [INFO] [stderr] Compiling quote v0.3.15 [INFO] [stderr] Compiling snarkvm-circuit-algorithms v0.16.19 [INFO] [stderr] Compiling num-derive v0.4.2 [INFO] [stderr] Checking enum_index v0.2.0 [INFO] [stderr] Compiling snarkvm-circuit-collections v0.16.19 [INFO] [stderr] Checking tokio v1.40.0 [INFO] [stderr] Compiling snarkvm-circuit-network v0.16.19 [INFO] [stderr] Compiling snarkvm-circuit-account v0.16.19 [INFO] [stderr] Compiling syn v0.11.11 [INFO] [stderr] Compiling snarkvm-circuit-program v0.16.19 [INFO] [stderr] Checking futures-util v0.3.30 [INFO] [stderr] Compiling tracing-attributes v0.1.27 [INFO] [stderr] Compiling openssl v0.10.66 [INFO] [stderr] Checking indexmap v2.5.0 [INFO] [stderr] Compiling openssl-macros v0.1.1 [INFO] [stderr] Compiling native-tls v0.2.12 [INFO] [stderr] Compiling enum_index_derive v0.2.0 [INFO] [stderr] Checking tracing v0.1.40 [INFO] [stderr] Checking unicode-normalization v0.1.23 [INFO] [stderr] Checking serde_urlencoded v0.7.1 [INFO] [stderr] Checking ring v0.17.8 [INFO] [stderr] Checking adler2 v2.0.0 [INFO] [stderr] Compiling rustls v0.23.12 [INFO] [stderr] Checking miniz_oxide v0.8.0 [INFO] [stderr] Checking idna v0.5.0 [INFO] [stderr] Checking sync_wrapper v0.1.2 [INFO] [stderr] Checking flate2 v1.0.33 [INFO] [stderr] Compiling aleo-std-timed v0.1.2 [INFO] [stderr] Compiling aleo-std-time v0.1.2 [INFO] [stderr] Checking http-body v1.0.1 [INFO] [stderr] Checking webpki-roots v0.26.5 [INFO] [stderr] Checking url v2.5.2 [INFO] [stderr] Compiling pin-project-internal v1.1.5 [INFO] [stderr] Checking aleo-std v0.1.24 [INFO] [stderr] Compiling rustix v0.38.35 [INFO] [stderr] Checking snarkvm-utilities v0.16.19 [INFO] [stderr] Checking tower-layer v0.3.3 [INFO] [stderr] Checking rustls-webpki v0.102.7 [INFO] [stderr] Compiling portable-atomic v1.7.0 [INFO] [stderr] Checking linux-raw-sys v0.4.14 [INFO] [stderr] Checking anstyle-parse v0.2.5 [INFO] [stderr] Compiling backtrace v0.3.73 [INFO] [stderr] Checking snarkvm-fields v0.16.19 [INFO] [stderr] Checking aho-corasick v1.1.3 [INFO] [stderr] Compiling indexmap v1.9.3 [INFO] [stderr] Checking is_terminal_polyfill v1.70.1 [INFO] [stderr] Checking gimli v0.29.0 [INFO] [stderr] Checking anstyle-query v1.1.1 [INFO] [stderr] Compiling semver v1.0.23 [INFO] [stderr] Checking pin-project v1.1.5 [INFO] [stderr] Checking fastrand v2.1.1 [INFO] [stderr] Checking colorchoice v1.0.2 [INFO] [stderr] Checking anstyle v1.0.8 [INFO] [stderr] Checking console v0.15.8 [INFO] [stderr] Checking tokio-util v0.7.11 [INFO] [stderr] Checking tokio-native-tls v0.3.1 [INFO] [stderr] Checking tower v0.4.13 [INFO] [stderr] Checking anstream v0.6.15 [INFO] [stderr] Checking h2 v0.3.26 [INFO] [stderr] Checking h2 v0.4.6 [INFO] [stderr] Checking regex-automata v0.4.7 [INFO] [stderr] Checking snarkvm-curves v0.16.19 [INFO] [stderr] Checking miniz_oxide v0.7.4 [INFO] [stderr] Checking tempfile v3.12.0 [INFO] [stderr] Checking http-body-util v0.1.2 [INFO] [stderr] Checking object v0.36.4 [INFO] [stderr] Checking snarkvm-console-network-environment v0.16.19 [INFO] [stderr] Checking snarkvm-parameters v0.16.19 [INFO] [stderr] Checking snarkvm-console-types-boolean v0.16.19 [INFO] [stderr] Checking snarkvm-console-types-field v0.16.19 [INFO] [stderr] Checking addr2line v0.22.0 [INFO] [stderr] Checking snarkvm-console-types-scalar v0.16.19 [INFO] [stderr] Checking ureq v2.10.1 [INFO] [stderr] Checking hashbrown v0.12.3 [INFO] [stderr] Checking snarkvm-algorithms v0.16.19 [INFO] [stderr] Checking snarkvm-console-types-group v0.16.19 [INFO] [stderr] Checking snarkvm-console-types-integers v0.16.19 [INFO] [stderr] Checking snarkvm-console-types-address v0.16.19 [INFO] [stderr] Checking hyper v1.4.1 [INFO] [stderr] Checking hyper v0.14.30 [INFO] [stderr] Checking rustc-demangle v0.1.24 [INFO] [stderr] Checking snarkvm-console-types-string v0.16.19 [INFO] [stderr] Compiling self_update v0.38.0 [INFO] [stderr] Checking clap_lex v0.7.2 [INFO] [stderr] Checking snarkvm-console-types v0.16.19 [INFO] [stderr] Checking indicatif v0.17.8 [INFO] [stderr] Checking snarkvm-console-algorithms v0.16.19 [INFO] [stderr] Checking clap_builder v4.5.15 [INFO] [stderr] Checking time v0.3.36 [INFO] [stderr] Checking snarkvm-console-collections v0.16.19 [INFO] [stderr] Checking regex v1.10.6 [INFO] [stderr] Compiling clap_derive v4.5.13 [INFO] [stderr] Checking self-replace v1.5.0 [INFO] [stderr] Checking hyper-util v0.1.7 [INFO] [stderr] Checking sync_wrapper v1.0.1 [INFO] [stderr] Checking quick-xml v0.23.1 [INFO] [stderr] Checking termcolor v1.4.1 [INFO] [stderr] Checking leo-span v1.12.0 [INFO] [stderr] Compiling derivative v2.2.0 [INFO] [stderr] Checking hyper-tls v0.6.0 [INFO] [stderr] Checking num-format v0.4.4 [INFO] [stderr] Checking reqwest v0.12.7 [INFO] [stderr] Checking color-backtrace v0.6.1 [INFO] [stderr] Checking dotenvy v0.15.7 [INFO] [stderr] Checking hyper-tls v0.5.0 [INFO] [stderr] Checking reqwest v0.11.27 [INFO] [stderr] Checking snarkvm-console-network v0.16.19 [INFO] [stderr] Checking clap v4.5.16 [INFO] [stderr] Checking snarkvm-circuit-environment v0.16.19 [INFO] [stderr] Checking snarkvm-console-account v0.16.19 [INFO] [stderr] Checking leo-errors v1.12.0 [INFO] [stderr] Checking snarkvm-console-program v0.16.19 [INFO] [stderr] Checking snarkvm-circuit-types v0.16.19 [INFO] [stderr] Checking snarkvm-console v0.16.19 [INFO] [stderr] Checking snarkvm-ledger-committee v0.16.19 [INFO] [stderr] Checking snarkvm-ledger-narwhal-data v0.16.19 [INFO] [stderr] Checking snarkvm-circuit v0.16.19 [INFO] [stderr] Checking snarkvm-synthesizer-snark v0.16.19 [INFO] [stderr] Checking snarkvm-synthesizer-program v0.16.19 [INFO] [stderr] Checking snarkvm-ledger-coinbase v0.16.19 [INFO] [stderr] Checking snarkvm-ledger-narwhal-transmission-id v0.16.19 [INFO] [stderr] Checking snarkvm-ledger-narwhal-batch-header v0.16.19 [INFO] [stderr] Checking snarkvm-ledger-narwhal-batch-certificate v0.16.19 [INFO] [stderr] Checking snarkvm-ledger-narwhal-subdag v0.16.19 [INFO] [stderr] Checking snarkvm-ledger-authority v0.16.19 [INFO] [stderr] Checking snarkvm-ledger-block v0.16.19 [INFO] [stderr] Checking snarkvm-ledger-store v0.16.19 [INFO] [stderr] Checking snarkvm-ledger-narwhal-transmission v0.16.19 [INFO] [stderr] Checking snarkvm-ledger-narwhal v0.16.19 [INFO] [stderr] Checking snarkvm-ledger-query v0.16.19 [INFO] [stderr] Checking snarkvm-synthesizer-process v0.16.19 [INFO] [stderr] Checking snarkvm-synthesizer v0.16.19 [INFO] [stderr] Checking snarkvm-ledger v0.16.19 [INFO] [stderr] Checking snarkvm v0.16.19 [INFO] [stderr] Checking leo-ast v1.12.0 [INFO] [stderr] Checking leo-parser v1.12.0 [INFO] [stderr] Checking leo-passes v1.12.0 (/opt/rustwide/workdir) [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/common/assigner/mod.rs:33:9 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn unique_symbol(&self, arg: impl Display, separator: impl Display) -> Symbol { [INFO] [stdout] | ----------------- ----------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 33 | self.inner.borrow_mut().unique_symbol(arg, separator) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/common/assigner/mod.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 38 | pub fn simple_assign_statement(&self, identifier: Identifier, value: Expression, id: NodeID) -> Statement { [INFO] [stdout] | ----------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 39 | self.inner.borrow_mut().simple_assign_statement(identifier, value, id) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/common/assigner/mod.rs:61:27 [INFO] [stdout] | [INFO] [stdout] 60 | fn simple_assign_statement(&mut self, identifier: Identifier, value: Expression, id: NodeID) -> Statement { [INFO] [stdout] | ----------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 61 | Statement::Assign(Box::new(AssignStatement { [INFO] [stdout] | ___________________________^ [INFO] [stdout] 62 | | place: Expression::Identifier(identifier), [INFO] [stdout] 63 | | value, [INFO] [stdout] 64 | | span: Default::default(), [INFO] [stdout] 65 | | id, [INFO] [stdout] 66 | | })) [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/common/graph/mod.rs:56:30 [INFO] [stdout] | [INFO] [stdout] 55 | pub fn new(nodes: IndexSet) -> Self { [INFO] [stdout] | ------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 56 | Self { nodes, edges: IndexMap::new() } [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/common/rename_table/mod.rs:38:31 [INFO] [stdout] | [INFO] [stdout] 37 | pub(crate) fn new(parent: Option>) -> Self { [INFO] [stdout] | -------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 38 | Self { parent, names: IndexMap::new(), ids: IndexMap::new() } [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/common/rename_table/mod.rs:38:53 [INFO] [stdout] | [INFO] [stdout] 37 | pub(crate) fn new(parent: Option>) -> Self { [INFO] [stdout] | -------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 38 | Self { parent, names: IndexMap::new(), ids: IndexMap::new() } [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/common/symbol_table/mod.rs:211:12 [INFO] [stdout] | [INFO] [stdout] 208 | let file = [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 209 | std::fs::File::create(&path).map_err(|e| AstError::failed_to_create_symbol_table_json_file(&path, &e))?; [INFO] [stdout] 210 | let writer = std::io::BufWriter::new(file); [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 211 | Ok(serde_json::to_writer_pretty(writer, &self) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/common/symbol_table/mod.rs:233:12 [INFO] [stdout] | [INFO] [stdout] 223 | let file = [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 224 | std::fs::File::create(&path).map_err(|e| AstError::failed_to_create_symbol_table_json_file(&path, &e))?; [INFO] [stdout] 225 | let writer = std::io::BufWriter::new(file); [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 226 | [INFO] [stdout] 227 | let mut value = self.to_json_value().unwrap(); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 233 | Ok(serde_json::to_writer_pretty(writer, &value) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/common/symbol_table/function_symbol.rs:59:24 [INFO] [stdout] | [INFO] [stdout] 59 | input: finalize.input.clone(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/common/symbol_table/function_symbol.rs:60:30 [INFO] [stdout] | [INFO] [stdout] 60 | output_type: finalize.output_type.clone(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/dead_code_elimination/mod.rs:74:12 [INFO] [stdout] | [INFO] [stdout] 70 | fn do_pass((ast, node_builder): Self::Input) -> Self::Output { [INFO] [stdout] | -------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 71 | let mut reconstructor = DeadCodeEliminator::new(node_builder); [INFO] [stdout] | ------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 72 | let program = reconstructor.reconstruct_program(ast.into_repr()); [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 73 | [INFO] [stdout] 74 | Ok(Ast::new(program)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/dead_code_elimination/eliminate_expression.rs:47:66 [INFO] [stdout] | [INFO] [stdout] 47 | arguments: input.arguments.into_iter().map(|arg| self.reconstruct_expression(arg).0).collect(), [INFO] [stdout] | --- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/dead_code_elimination/eliminate_expression.rs:62:13 [INFO] [stdout] | [INFO] [stdout] 60 | fn reconstruct_struct_init(&mut self, input: StructExpression) -> (Expression, Self::AdditionalOutput) { [INFO] [stdout] | ----------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 61 | ( [INFO] [stdout] 62 | / Expression::Struct(StructExpression { [INFO] [stdout] 63 | | name: input.name, [INFO] [stdout] 64 | | // Reconstruct each of the struct members. [INFO] [stdout] 65 | | members: input [INFO] [stdout] ... | [INFO] [stdout] 79 | | id: input.id, [INFO] [stdout] 80 | | }), [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/dead_code_elimination/eliminate_expression.rs:70:37 [INFO] [stdout] | [INFO] [stdout] 68 | .map(|member| StructVariableInitializer { [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 69 | identifier: member.identifier, [INFO] [stdout] 70 | expression: match member.expression { [INFO] [stdout] | _____________________________________^ [INFO] [stdout] 71 | | Some(expression) => Some(self.reconstruct_expression(expression).0), [INFO] [stdout] 72 | | None => unreachable!("Static single assignment ensures that the expression always exists."), [INFO] [stdout] 73 | | }, [INFO] [stdout] | |_________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/dead_code_elimination/eliminate_statement.rs:116:10 [INFO] [stdout] | [INFO] [stdout] 108 | fn reconstruct_block(&mut self, block: Block) -> (Block, Self::AdditionalOutput) { [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 109 | // Reconstruct each of the statements in reverse. [INFO] [stdout] 110 | let mut statements: Vec = [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 116 | (Block { statements, span: block.span, id: block.id }, Default::default()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/dead_code_elimination/eliminate_statement.rs:111:64 [INFO] [stdout] | [INFO] [stdout] 111 | block.statements.into_iter().rev().map(|statement| self.reconstruct_statement(statement).0).collect(); [INFO] [stdout] | --------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/dead_code_elimination/eliminate_statement.rs:127:65 [INFO] [stdout] | [INFO] [stdout] 127 | otherwise: input.otherwise.map(|n| Box::new(self.reconstruct_statement(*n).0)), [INFO] [stdout] | - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/dead_code_elimination/eliminate_statement.rs:208:17 [INFO] [stdout] | [INFO] [stdout] 207 | finalize_arguments: input.finalize_arguments.map(|arguments| { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 208 | arguments.into_iter().map(|argument| self.reconstruct_expression(argument).0).collect() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/dead_code_elimination/eliminate_statement.rs:208:54 [INFO] [stdout] | [INFO] [stdout] 208 | arguments.into_iter().map(|argument| self.reconstruct_expression(argument).0).collect() [INFO] [stdout] | -------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/destructuring/mod.rs:42:12 [INFO] [stdout] | [INFO] [stdout] 38 | fn do_pass((ast, tt, node_builder, assigner): Self::Input) -> Self::Output { [INFO] [stdout] | ---------------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 39 | let mut reconstructor = Destructurer::new(tt, node_builder, assigner); [INFO] [stdout] | ------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 40 | let program = reconstructor.reconstruct_program(ast.into_repr()); [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 41 | [INFO] [stdout] 42 | Ok(Ast::new(program)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/destructuring/destructure_program.rs:30:20 [INFO] [stdout] | [INFO] [stdout] 22 | fn reconstruct_function(&mut self, input: Function) -> Function { [INFO] [stdout] | --------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 30 | block: self.reconstruct_block(input.block).0, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/destructuring/destructure_program.rs:31:23 [INFO] [stdout] | [INFO] [stdout] 22 | fn reconstruct_function(&mut self, input: Function) -> Function { [INFO] [stdout] | --------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 31 | finalize: input.finalize.map(|finalize| { [INFO] [stdout] | _______________________^ [INFO] [stdout] 32 | | // Set the `is_finalize` flag before reconstructing the finalize block. [INFO] [stdout] 33 | | self.is_finalize = true; [INFO] [stdout] 34 | | // Reconstruct the finalize block. [INFO] [stdout] ... | [INFO] [stdout] 46 | | finalize [INFO] [stdout] 47 | | }), [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/destructuring/destructure_statement.rs:47:15 [INFO] [stdout] | [INFO] [stdout] 44 | fn reconstruct_assign(&mut self, assign: AssignStatement) -> (Statement, Self::AdditionalOutput) { [INFO] [stdout] | ----------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 45 | // Flatten the rhs of the assignment. [INFO] [stdout] 46 | let value = self.reconstruct_expression(assign.value).0; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 47 | match (assign.place, value.clone()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/destructuring/destructure_statement.rs:155:43 [INFO] [stdout] | [INFO] [stdout] 144 | .map(|(lhs, rhs)| { [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 145 | // Get the type of the rhs. [INFO] [stdout] 146 | let type_ = match self.type_table.get(&lhs.id()) { [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 147 | Some(type_) => type_.clone(), [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 155 | Statement::Assign(Box::new(AssignStatement { [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 156 | | place: lhs, [INFO] [stdout] 157 | | value: rhs, [INFO] [stdout] 158 | | span: Default::default(), [INFO] [stdout] 159 | | id: self.node_builder.next_id(), [INFO] [stdout] 160 | | })) [INFO] [stdout] | |__________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/destructuring/destructure_statement.rs:188:43 [INFO] [stdout] | [INFO] [stdout] 177 | .map(|(lhs, rhs)| { [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 178 | // Get the type of the rhs. [INFO] [stdout] 179 | let type_ = match self.type_table.get(&lhs.id()) { [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 180 | Some(type_) => type_.clone(), [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 188 | Statement::Assign(Box::new(AssignStatement { [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 189 | | place: lhs, [INFO] [stdout] 190 | | value: rhs, [INFO] [stdout] 191 | | span: Default::default(), [INFO] [stdout] 192 | | id: self.node_builder.next_id(), [INFO] [stdout] 193 | | })) [INFO] [stdout] | |__________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/destructuring/destructure_statement.rs:220:10 [INFO] [stdout] | [INFO] [stdout] 210 | fn reconstruct_block(&mut self, block: Block) -> (Block, Self::AdditionalOutput) { [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 211 | let mut statements = Vec::with_capacity(block.statements.len()); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 220 | (Block { span: block.span, statements, id: self.node_builder.next_id() }, Default::default()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/destructuring/destructure_statement.rs:220:83 [INFO] [stdout] | [INFO] [stdout] 210 | fn reconstruct_block(&mut self, block: Block) -> (Block, Self::AdditionalOutput) { [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 211 | let mut statements = Vec::with_capacity(block.statements.len()); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 220 | (Block { span: block.span, statements, id: self.node_builder.next_id() }, Default::default()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/destructuring/destructure_statement.rs:232:65 [INFO] [stdout] | [INFO] [stdout] 232 | otherwise: input.otherwise.map(|n| Box::new(self.reconstruct_statement(*n).0)), [INFO] [stdout] | - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/destructuring/destructure_statement.rs:269:13 [INFO] [stdout] | [INFO] [stdout] 254 | fn reconstruct_return(&mut self, input: ReturnStatement) -> (Statement, Self::AdditionalOutput) { [INFO] [stdout] | ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 255 | // Note that SSA guarantees that `input.expression` is either a literal, identifier, or unit expression. [INFO] [stdout] 256 | let expression = match input.expression { [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 260 | let tuple = self.tuples.get(&identifier.name).unwrap().clone(); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 269 | / Statement::Return(ReturnStatement { [INFO] [stdout] 270 | | expression, [INFO] [stdout] 271 | | finalize_arguments: input.finalize_arguments, [INFO] [stdout] 272 | | span: input.span, [INFO] [stdout] 273 | | id: input.id, [INFO] [stdout] 274 | | }), [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/destructuring/destructure_statement.rs:275:13 [INFO] [stdout] | [INFO] [stdout] 254 | fn reconstruct_return(&mut self, input: ReturnStatement) -> (Statement, Self::AdditionalOutput) { [INFO] [stdout] | ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 255 | // Note that SSA guarantees that `input.expression` is either a literal, identifier, or unit expression. [INFO] [stdout] 256 | let expression = match input.expression { [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 260 | let tuple = self.tuples.get(&identifier.name).unwrap().clone(); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 275 | Default::default(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/mod.rs:76:12 [INFO] [stdout] | [INFO] [stdout] 72 | fn do_pass((ast, st, tt, node_builder, assigner): Self::Input) -> Self::Output { [INFO] [stdout] | -------------------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 73 | let mut reconstructor = Flattener::new(st, tt, node_builder, assigner); [INFO] [stdout] | ------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 74 | let program = reconstructor.reconstruct_program(ast.into_repr()); [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 75 | [INFO] [stdout] 76 | Ok(Ast::new(program)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_expression.rs:53:10 [INFO] [stdout] | [INFO] [stdout] 34 | fn reconstruct_struct_init(&mut self, input: StructExpression) -> (Expression, Self::AdditionalOutput) { [INFO] [stdout] | ----------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 35 | let mut statements = Vec::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 36 | let mut members = Vec::with_capacity(input.members.len()); [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 53 | (Expression::Struct(StructExpression { name: input.name, members, span: input.span, id: input.id }), statements) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_expression.rs:73:15 [INFO] [stdout] | [INFO] [stdout] 71 | fn reconstruct_ternary(&mut self, input: TernaryExpression) -> (Expression, Self::AdditionalOutput) { [INFO] [stdout] | ------------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 72 | let mut statements = Vec::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 73 | match (*input.if_true, *input.if_false) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_program.rs:27:22 [INFO] [stdout] | [INFO] [stdout] 23 | fn reconstruct_program_scope(&mut self, input: ProgramScope) -> ProgramScope { [INFO] [stdout] | ------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 27 | structs: input.structs.into_iter().map(|(i, c)| (i, self.reconstruct_struct(c))).collect(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_program.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 23 | fn reconstruct_program_scope(&mut self, input: ProgramScope) -> ProgramScope { [INFO] [stdout] | ------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 28 | mappings: input.mappings.into_iter().map(|(id, mapping)| (id, self.reconstruct_mapping(mapping))).collect(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_program.rs:29:24 [INFO] [stdout] | [INFO] [stdout] 23 | fn reconstruct_program_scope(&mut self, input: ProgramScope) -> ProgramScope { [INFO] [stdout] | ------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 29 | functions: input.functions.into_iter().map(|(i, f)| (i, self.reconstruct_function(f))).collect(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_program.rs:30:21 [INFO] [stdout] | [INFO] [stdout] 23 | fn reconstruct_program_scope(&mut self, input: ProgramScope) -> ProgramScope { [INFO] [stdout] | ------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 30 | consts: input [INFO] [stdout] | _____________________^ [INFO] [stdout] 31 | | .consts [INFO] [stdout] 32 | | .into_iter() [INFO] [stdout] 33 | | .map(|(i, c)| match self.reconstruct_const(c) { [INFO] [stdout] ... | [INFO] [stdout] 36 | | }) [INFO] [stdout] 37 | | .collect(), [INFO] [stdout] | |__________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_program.rs:27:65 [INFO] [stdout] | [INFO] [stdout] 27 | structs: input.structs.into_iter().map(|(i, c)| (i, self.reconstruct_struct(c))).collect(), [INFO] [stdout] | ------ ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_program.rs:28:75 [INFO] [stdout] | [INFO] [stdout] 28 | mappings: input.mappings.into_iter().map(|(id, mapping)| (id, self.reconstruct_mapping(mapping))).collect(), [INFO] [stdout] | ------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_program.rs:29:69 [INFO] [stdout] | [INFO] [stdout] 29 | functions: input.functions.into_iter().map(|(i, f)| (i, self.reconstruct_function(f))).collect(), [INFO] [stdout] | ------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_program.rs:33:37 [INFO] [stdout] | [INFO] [stdout] 33 | .map(|(i, c)| match self.reconstruct_const(c) { [INFO] [stdout] | ------ ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_statement.rs:92:15 [INFO] [stdout] | [INFO] [stdout] 61 | fn reconstruct_assert(&mut self, input: AssertStatement) -> (Statement, Self::AdditionalOutput) { [INFO] [stdout] | ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 62 | let mut statements = Vec::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 65 | let assert = AssertStatement { [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 69 | AssertVariant::Assert(expression) => { [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 70 | let (expression, additional_statements) = self.reconstruct_expression(expression); [INFO] [stdout] | ---------- --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 74 | AssertVariant::AssertEq(left, right) => { [INFO] [stdout] | ---- ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 75 | let (left, additional_statements) = self.reconstruct_expression(left); [INFO] [stdout] | ---- --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 76 | statements.extend(additional_statements); [INFO] [stdout] 77 | let (right, additional_statements) = self.reconstruct_expression(right); [INFO] [stdout] | ----- --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 81 | AssertVariant::AssertNeq(left, right) => { [INFO] [stdout] | ---- ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 82 | let (left, additional_statements) = self.reconstruct_expression(left); [INFO] [stdout] | ---- --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 83 | statements.extend(additional_statements); [INFO] [stdout] 84 | let (right, additional_statements) = self.reconstruct_expression(right); [INFO] [stdout] | ----- --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 92 | match self.construct_guard() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_statement.rs:171:15 [INFO] [stdout] | [INFO] [stdout] 168 | fn reconstruct_assign(&mut self, assign: AssignStatement) -> (Statement, Self::AdditionalOutput) { [INFO] [stdout] | ----------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 169 | // Flatten the rhs of the assignment. [INFO] [stdout] 170 | let (value, statements) = self.reconstruct_expression(assign.value); [INFO] [stdout] | ----- ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 171 | match (assign.place, &value) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_statement.rs:218:10 [INFO] [stdout] | [INFO] [stdout] 208 | fn reconstruct_block(&mut self, block: Block) -> (Block, Self::AdditionalOutput) { [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 209 | let mut statements = Vec::with_capacity(block.statements.len()); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 218 | (Block { span: block.span, statements, id: self.node_builder.next_id() }, Default::default()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_statement.rs:218:83 [INFO] [stdout] | [INFO] [stdout] 208 | fn reconstruct_block(&mut self, block: Block) -> (Block, Self::AdditionalOutput) { [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 209 | let mut statements = Vec::with_capacity(block.statements.len()); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 218 | (Block { span: block.span, statements, id: self.node_builder.next_id() }, Default::default()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_statement.rs:254:10 [INFO] [stdout] | [INFO] [stdout] 222 | fn reconstruct_conditional(&mut self, conditional: ConditionalStatement) -> (Statement, Self::AdditionalOutput) { [INFO] [stdout] | --------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 223 | let mut statements = Vec::with_capacity(conditional.then.statements.len()); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 254 | (Statement::dummy(Default::default(), self.node_builder.next_id()), statements) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_statement.rs:280:10 [INFO] [stdout] | [INFO] [stdout] 271 | fn reconstruct_return(&mut self, input: ReturnStatement) -> (Statement, Self::AdditionalOutput) { [INFO] [stdout] | ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 272 | // Construct the associated guard. [INFO] [stdout] 273 | let guard = self.construct_guard(); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 280 | (Statement::dummy(Default::default(), self.node_builder.next_id()), Default::default()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_statement.rs:280:77 [INFO] [stdout] | [INFO] [stdout] 271 | fn reconstruct_return(&mut self, input: ReturnStatement) -> (Statement, Self::AdditionalOutput) { [INFO] [stdout] | ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 272 | // Construct the associated guard. [INFO] [stdout] 273 | let guard = self.construct_guard(); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 280 | (Statement::dummy(Default::default(), self.node_builder.next_id()), Default::default()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flattener.rs:103:40 [INFO] [stdout] | [INFO] [stdout] 101 | Some(rest.iter().cloned().fold(first.clone(), |acc, condition| { [INFO] [stdout] | --- --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 102 | // Construct the binary expression. [INFO] [stdout] 103 | Expression::Binary(BinaryExpression { [INFO] [stdout] | ________________________________________^ [INFO] [stdout] 104 | | op: BinaryOperation::And, [INFO] [stdout] 105 | | left: Box::new(acc), [INFO] [stdout] 106 | | right: Box::new(condition), [INFO] [stdout] ... | [INFO] [stdout] 114 | | }, [INFO] [stdout] 115 | | }) [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flattener.rs:394:10 [INFO] [stdout] | [INFO] [stdout] 292 | let mut statements = Vec::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 293 | // For each array element, construct a new ternary expression. [INFO] [stdout] 294 | let elements = (0..array.length()) [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 374 | let (expr, stmts) = self.reconstruct_array(ArrayExpression { [INFO] [stdout] | ---- ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 390 | let (identifier, statement) = self.unique_simple_assign_statement(expr); [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 394 | (Expression::Identifier(identifier), statements) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flattener.rs:492:10 [INFO] [stdout] | [INFO] [stdout] 405 | let mut statements = Vec::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 406 | // For each struct member, construct a new ternary expression. [INFO] [stdout] 407 | let members = struct_ [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 470 | let (expr, stmts) = self.reconstruct_struct_init(StructExpression { [INFO] [stdout] | ---- ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 488 | let (identifier, statement) = self.unique_simple_assign_statement(expr); [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 492 | (Expression::Identifier(identifier), statements) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flattener.rs:463:33 [INFO] [stdout] | [INFO] [stdout] 412 | let (first, stmt) = [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 427 | let (second, stmt) = [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 442 | let (expression, stmts) = self.reconstruct_ternary(TernaryExpression { [INFO] [stdout] | ---------- ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 463 | expression: Some(expression), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flattener.rs:587:10 [INFO] [stdout] | [INFO] [stdout] 503 | let mut statements = Vec::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 504 | // For each tuple element, construct a new ternary expression. [INFO] [stdout] 505 | let elements = tuple_type [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 566 | let tuple = TupleExpression { [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 577 | let (expr, stmts) = self.reconstruct_tuple(tuple.clone()); [INFO] [stdout] | ---- ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 583 | let (identifier, statement) = self.unique_simple_assign_statement(expr); [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 587 | (Expression::Identifier(identifier), statements) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/function_inlining/mod.rs:80:12 [INFO] [stdout] | [INFO] [stdout] 76 | fn do_pass((ast, node_builder, call_graph, assigner, tt): Self::Input) -> Self::Output { [INFO] [stdout] | ---------------------------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 77 | let mut reconstructor = FunctionInliner::new(node_builder, call_graph, assigner, tt); [INFO] [stdout] | ------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 78 | let program = reconstructor.reconstruct_program(ast.into_repr()); [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 79 | [INFO] [stdout] 80 | Ok(Ast::new(program)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/function_inlining/assignment_renamer.rs:89:13 [INFO] [stdout] | [INFO] [stdout] 87 | fn reconstruct_struct_init(&mut self, input: StructExpression) -> (Expression, Self::AdditionalOutput) { [INFO] [stdout] | ----------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 88 | ( [INFO] [stdout] 89 | / Expression::Struct(StructExpression { [INFO] [stdout] 90 | | name: input.name, [INFO] [stdout] 91 | | members: input [INFO] [stdout] 92 | | .members [INFO] [stdout] ... | [INFO] [stdout] 107 | | id: input.id, [INFO] [stdout] 108 | | }), [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/function_inlining/assignment_renamer.rs:96:37 [INFO] [stdout] | [INFO] [stdout] 94 | .map(|member| StructVariableInitializer { [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 95 | identifier: member.identifier, [INFO] [stdout] 96 | expression: match member.expression { [INFO] [stdout] | _____________________________________^ [INFO] [stdout] 97 | | Some(expression) => Some(self.reconstruct_expression(expression).0), [INFO] [stdout] 98 | | None => unreachable!( [INFO] [stdout] 99 | | "SSA guarantees that all struct members are always of the form ` : `." [INFO] [stdout] 100 | | ), [INFO] [stdout] 101 | | }, [INFO] [stdout] | |_________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/function_inlining/assignment_renamer.rs:127:13 [INFO] [stdout] | [INFO] [stdout] 116 | fn reconstruct_assign(&mut self, input: AssignStatement) -> (Statement, Self::AdditionalOutput) { [INFO] [stdout] | ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 117 | // First rename the right-hand-side of the assignment. [INFO] [stdout] 118 | let value = self.reconstruct_expression(input.value).0; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 123 | let place = self.reconstruct_expression(input.place).0; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 127 | Statement::Assign(Box::new(AssignStatement { place, value, span: input.span, id: input.id })), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/function_inlining/inline_statement.rs:38:15 [INFO] [stdout] | [INFO] [stdout] 36 | fn reconstruct_assign(&mut self, input: AssignStatement) -> (Statement, Self::AdditionalOutput) { [INFO] [stdout] | ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 37 | let (value, mut statements) = self.reconstruct_expression(input.value.clone()); [INFO] [stdout] | ----- ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 38 | match (input.place, value) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/function_inlining/inline_statement.rs:42:39 [INFO] [stdout] | [INFO] [stdout] 41 | statements.extend(left.elements.into_iter().zip(right.elements).map(|(lhs, rhs)| { [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 42 | Statement::Assign(Box::new(AssignStatement { [INFO] [stdout] | _______________________________________^ [INFO] [stdout] 43 | | place: lhs, [INFO] [stdout] 44 | | value: rhs, [INFO] [stdout] 45 | | span: Default::default(), [INFO] [stdout] 46 | | id: self.node_builder.next_id(), [INFO] [stdout] 47 | | })) [INFO] [stdout] | |______________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/function_inlining/inline_statement.rs:69:10 [INFO] [stdout] | [INFO] [stdout] 60 | fn reconstruct_block(&mut self, block: Block) -> (Block, Self::AdditionalOutput) { [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 61 | let mut statements = Vec::with_capacity(block.statements.len()); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 69 | (Block { span: block.span, statements, id: block.id }, Default::default()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/common/assigner/mod.rs:33:9 [INFO] [stdout] | [INFO] [stdout] 32 | pub fn unique_symbol(&self, arg: impl Display, separator: impl Display) -> Symbol { [INFO] [stdout] | ----------------- ----------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 33 | self.inner.borrow_mut().unique_symbol(arg, separator) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/common/assigner/mod.rs:39:9 [INFO] [stdout] | [INFO] [stdout] 38 | pub fn simple_assign_statement(&self, identifier: Identifier, value: Expression, id: NodeID) -> Statement { [INFO] [stdout] | ----------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 39 | self.inner.borrow_mut().simple_assign_statement(identifier, value, id) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/common/assigner/mod.rs:61:27 [INFO] [stdout] | [INFO] [stdout] 60 | fn simple_assign_statement(&mut self, identifier: Identifier, value: Expression, id: NodeID) -> Statement { [INFO] [stdout] | ----------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 61 | Statement::Assign(Box::new(AssignStatement { [INFO] [stdout] | ___________________________^ [INFO] [stdout] 62 | | place: Expression::Identifier(identifier), [INFO] [stdout] 63 | | value, [INFO] [stdout] 64 | | span: Default::default(), [INFO] [stdout] 65 | | id, [INFO] [stdout] 66 | | })) [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/common/graph/mod.rs:56:30 [INFO] [stdout] | [INFO] [stdout] 55 | pub fn new(nodes: IndexSet) -> Self { [INFO] [stdout] | ------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 56 | Self { nodes, edges: IndexMap::new() } [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/common/rename_table/mod.rs:38:31 [INFO] [stdout] | [INFO] [stdout] 37 | pub(crate) fn new(parent: Option>) -> Self { [INFO] [stdout] | -------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 38 | Self { parent, names: IndexMap::new(), ids: IndexMap::new() } [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/common/rename_table/mod.rs:38:53 [INFO] [stdout] | [INFO] [stdout] 37 | pub(crate) fn new(parent: Option>) -> Self { [INFO] [stdout] | -------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 38 | Self { parent, names: IndexMap::new(), ids: IndexMap::new() } [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/function_inlining/inline_statement.rs:69:64 [INFO] [stdout] | [INFO] [stdout] 60 | fn reconstruct_block(&mut self, block: Block) -> (Block, Self::AdditionalOutput) { [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 61 | let mut statements = Vec::with_capacity(block.statements.len()); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 69 | (Block { span: block.span, statements, id: block.id }, Default::default()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/common/symbol_table/mod.rs:211:12 [INFO] [stdout] | [INFO] [stdout] 208 | let file = [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 209 | std::fs::File::create(&path).map_err(|e| AstError::failed_to_create_symbol_table_json_file(&path, &e))?; [INFO] [stdout] 210 | let writer = std::io::BufWriter::new(file); [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 211 | Ok(serde_json::to_writer_pretty(writer, &self) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/common/symbol_table/mod.rs:233:12 [INFO] [stdout] | [INFO] [stdout] 223 | let file = [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 224 | std::fs::File::create(&path).map_err(|e| AstError::failed_to_create_symbol_table_json_file(&path, &e))?; [INFO] [stdout] 225 | let writer = std::io::BufWriter::new(file); [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 226 | [INFO] [stdout] 227 | let mut value = self.to_json_value().unwrap(); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 233 | Ok(serde_json::to_writer_pretty(writer, &value) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/function_inlining/inline_statement.rs:81:65 [INFO] [stdout] | [INFO] [stdout] 81 | otherwise: input.otherwise.map(|n| Box::new(self.reconstruct_statement(*n).0)), [INFO] [stdout] | - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/function_inlining/inline_program.rs:72:20 [INFO] [stdout] | [INFO] [stdout] 64 | fn reconstruct_function(&mut self, input: Function) -> Function { [INFO] [stdout] | --------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 72 | block: self.reconstruct_block(input.block).0, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/function_inlining/inline_program.rs:73:23 [INFO] [stdout] | [INFO] [stdout] 64 | fn reconstruct_function(&mut self, input: Function) -> Function { [INFO] [stdout] | --------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 73 | finalize: input.finalize.map(|finalize| { [INFO] [stdout] | _______________________^ [INFO] [stdout] 74 | | // Set the `is_finalize` flag before reconstructing the finalize block. [INFO] [stdout] 75 | | self.is_finalize = true; [INFO] [stdout] 76 | | // Reconstruct the finalize block. [INFO] [stdout] ... | [INFO] [stdout] 88 | | finalize [INFO] [stdout] 89 | | }), [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/loop_unrolling/mod.rs:43:12 [INFO] [stdout] | [INFO] [stdout] 38 | fn do_pass((ast, handler, node_builder, st, tt): Self::Input) -> Self::Output { [INFO] [stdout] | ------------------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 39 | let mut reconstructor = Self::new(st, tt, handler, node_builder); [INFO] [stdout] | ------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 40 | let program = reconstructor.reconstruct_program(ast.into_repr()); [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 43 | Ok((Ast::new(program), reconstructor.symbol_table.take())) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/common/symbol_table/function_symbol.rs:59:24 [INFO] [stdout] | [INFO] [stdout] 59 | input: finalize.input.clone(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/common/symbol_table/function_symbol.rs:60:30 [INFO] [stdout] | [INFO] [stdout] 60 | output_type: finalize.output_type.clone(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/loop_unrolling/unroller.rs:70:41 [INFO] [stdout] | [INFO] [stdout] 64 | symbol_table: SymbolTable, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 70 | constant_propagation_table: RefCell::new(ConstantPropagationTable::default()), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/dead_code_elimination/mod.rs:74:12 [INFO] [stdout] | [INFO] [stdout] 70 | fn do_pass((ast, node_builder): Self::Input) -> Self::Output { [INFO] [stdout] | -------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 71 | let mut reconstructor = DeadCodeEliminator::new(node_builder); [INFO] [stdout] | ------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 72 | let program = reconstructor.reconstruct_program(ast.into_repr()); [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 73 | [INFO] [stdout] 74 | Ok(Ast::new(program)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/dead_code_elimination/eliminate_expression.rs:47:66 [INFO] [stdout] | [INFO] [stdout] 47 | arguments: input.arguments.into_iter().map(|arg| self.reconstruct_expression(arg).0).collect(), [INFO] [stdout] | --- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/dead_code_elimination/eliminate_expression.rs:62:13 [INFO] [stdout] | [INFO] [stdout] 60 | fn reconstruct_struct_init(&mut self, input: StructExpression) -> (Expression, Self::AdditionalOutput) { [INFO] [stdout] | ----------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 61 | ( [INFO] [stdout] 62 | / Expression::Struct(StructExpression { [INFO] [stdout] 63 | | name: input.name, [INFO] [stdout] 64 | | // Reconstruct each of the struct members. [INFO] [stdout] 65 | | members: input [INFO] [stdout] ... | [INFO] [stdout] 79 | | id: input.id, [INFO] [stdout] 80 | | }), [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/dead_code_elimination/eliminate_expression.rs:70:37 [INFO] [stdout] | [INFO] [stdout] 68 | .map(|member| StructVariableInitializer { [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 69 | identifier: member.identifier, [INFO] [stdout] 70 | expression: match member.expression { [INFO] [stdout] | _____________________________________^ [INFO] [stdout] 71 | | Some(expression) => Some(self.reconstruct_expression(expression).0), [INFO] [stdout] 72 | | None => unreachable!("Static single assignment ensures that the expression always exists."), [INFO] [stdout] 73 | | }, [INFO] [stdout] | |_________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/dead_code_elimination/eliminate_statement.rs:116:10 [INFO] [stdout] | [INFO] [stdout] 108 | fn reconstruct_block(&mut self, block: Block) -> (Block, Self::AdditionalOutput) { [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 109 | // Reconstruct each of the statements in reverse. [INFO] [stdout] 110 | let mut statements: Vec = [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 116 | (Block { statements, span: block.span, id: block.id }, Default::default()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/dead_code_elimination/eliminate_statement.rs:111:64 [INFO] [stdout] | [INFO] [stdout] 111 | block.statements.into_iter().rev().map(|statement| self.reconstruct_statement(statement).0).collect(); [INFO] [stdout] | --------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/dead_code_elimination/eliminate_statement.rs:127:65 [INFO] [stdout] | [INFO] [stdout] 127 | otherwise: input.otherwise.map(|n| Box::new(self.reconstruct_statement(*n).0)), [INFO] [stdout] | - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/dead_code_elimination/eliminate_statement.rs:208:17 [INFO] [stdout] | [INFO] [stdout] 207 | finalize_arguments: input.finalize_arguments.map(|arguments| { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 208 | arguments.into_iter().map(|argument| self.reconstruct_expression(argument).0).collect() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/dead_code_elimination/eliminate_statement.rs:208:54 [INFO] [stdout] | [INFO] [stdout] 208 | arguments.into_iter().map(|argument| self.reconstruct_expression(argument).0).collect() [INFO] [stdout] | -------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/destructuring/mod.rs:42:12 [INFO] [stdout] | [INFO] [stdout] 38 | fn do_pass((ast, tt, node_builder, assigner): Self::Input) -> Self::Output { [INFO] [stdout] | ---------------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 39 | let mut reconstructor = Destructurer::new(tt, node_builder, assigner); [INFO] [stdout] | ------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 40 | let program = reconstructor.reconstruct_program(ast.into_repr()); [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 41 | [INFO] [stdout] 42 | Ok(Ast::new(program)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/destructuring/destructure_program.rs:30:20 [INFO] [stdout] | [INFO] [stdout] 22 | fn reconstruct_function(&mut self, input: Function) -> Function { [INFO] [stdout] | --------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 30 | block: self.reconstruct_block(input.block).0, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/destructuring/destructure_program.rs:31:23 [INFO] [stdout] | [INFO] [stdout] 22 | fn reconstruct_function(&mut self, input: Function) -> Function { [INFO] [stdout] | --------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 31 | finalize: input.finalize.map(|finalize| { [INFO] [stdout] | _______________________^ [INFO] [stdout] 32 | | // Set the `is_finalize` flag before reconstructing the finalize block. [INFO] [stdout] 33 | | self.is_finalize = true; [INFO] [stdout] 34 | | // Reconstruct the finalize block. [INFO] [stdout] ... | [INFO] [stdout] 46 | | finalize [INFO] [stdout] 47 | | }), [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/destructuring/destructure_statement.rs:47:15 [INFO] [stdout] | [INFO] [stdout] 44 | fn reconstruct_assign(&mut self, assign: AssignStatement) -> (Statement, Self::AdditionalOutput) { [INFO] [stdout] | ----------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 45 | // Flatten the rhs of the assignment. [INFO] [stdout] 46 | let value = self.reconstruct_expression(assign.value).0; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 47 | match (assign.place, value.clone()) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/destructuring/destructure_statement.rs:155:43 [INFO] [stdout] | [INFO] [stdout] 144 | .map(|(lhs, rhs)| { [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 145 | // Get the type of the rhs. [INFO] [stdout] 146 | let type_ = match self.type_table.get(&lhs.id()) { [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 147 | Some(type_) => type_.clone(), [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 155 | Statement::Assign(Box::new(AssignStatement { [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 156 | | place: lhs, [INFO] [stdout] 157 | | value: rhs, [INFO] [stdout] 158 | | span: Default::default(), [INFO] [stdout] 159 | | id: self.node_builder.next_id(), [INFO] [stdout] 160 | | })) [INFO] [stdout] | |__________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/destructuring/destructure_statement.rs:188:43 [INFO] [stdout] | [INFO] [stdout] 177 | .map(|(lhs, rhs)| { [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 178 | // Get the type of the rhs. [INFO] [stdout] 179 | let type_ = match self.type_table.get(&lhs.id()) { [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 180 | Some(type_) => type_.clone(), [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 188 | Statement::Assign(Box::new(AssignStatement { [INFO] [stdout] | ___________________________________________^ [INFO] [stdout] 189 | | place: lhs, [INFO] [stdout] 190 | | value: rhs, [INFO] [stdout] 191 | | span: Default::default(), [INFO] [stdout] 192 | | id: self.node_builder.next_id(), [INFO] [stdout] 193 | | })) [INFO] [stdout] | |__________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/destructuring/destructure_statement.rs:220:10 [INFO] [stdout] | [INFO] [stdout] 210 | fn reconstruct_block(&mut self, block: Block) -> (Block, Self::AdditionalOutput) { [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 211 | let mut statements = Vec::with_capacity(block.statements.len()); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 220 | (Block { span: block.span, statements, id: self.node_builder.next_id() }, Default::default()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/destructuring/destructure_statement.rs:220:83 [INFO] [stdout] | [INFO] [stdout] 210 | fn reconstruct_block(&mut self, block: Block) -> (Block, Self::AdditionalOutput) { [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 211 | let mut statements = Vec::with_capacity(block.statements.len()); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 220 | (Block { span: block.span, statements, id: self.node_builder.next_id() }, Default::default()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/destructuring/destructure_statement.rs:232:65 [INFO] [stdout] | [INFO] [stdout] 232 | otherwise: input.otherwise.map(|n| Box::new(self.reconstruct_statement(*n).0)), [INFO] [stdout] | - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/destructuring/destructure_statement.rs:269:13 [INFO] [stdout] | [INFO] [stdout] 254 | fn reconstruct_return(&mut self, input: ReturnStatement) -> (Statement, Self::AdditionalOutput) { [INFO] [stdout] | ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 255 | // Note that SSA guarantees that `input.expression` is either a literal, identifier, or unit expression. [INFO] [stdout] 256 | let expression = match input.expression { [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 260 | let tuple = self.tuples.get(&identifier.name).unwrap().clone(); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 269 | / Statement::Return(ReturnStatement { [INFO] [stdout] 270 | | expression, [INFO] [stdout] 271 | | finalize_arguments: input.finalize_arguments, [INFO] [stdout] 272 | | span: input.span, [INFO] [stdout] 273 | | id: input.id, [INFO] [stdout] 274 | | }), [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/destructuring/destructure_statement.rs:275:13 [INFO] [stdout] | [INFO] [stdout] 254 | fn reconstruct_return(&mut self, input: ReturnStatement) -> (Statement, Self::AdditionalOutput) { [INFO] [stdout] | ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 255 | // Note that SSA guarantees that `input.expression` is either a literal, identifier, or unit expression. [INFO] [stdout] 256 | let expression = match input.expression { [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 260 | let tuple = self.tuples.get(&identifier.name).unwrap().clone(); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 275 | Default::default(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/mod.rs:76:12 [INFO] [stdout] | [INFO] [stdout] 72 | fn do_pass((ast, st, tt, node_builder, assigner): Self::Input) -> Self::Output { [INFO] [stdout] | -------------------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 73 | let mut reconstructor = Flattener::new(st, tt, node_builder, assigner); [INFO] [stdout] | ------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 74 | let program = reconstructor.reconstruct_program(ast.into_repr()); [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 75 | [INFO] [stdout] 76 | Ok(Ast::new(program)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_expression.rs:53:10 [INFO] [stdout] | [INFO] [stdout] 34 | fn reconstruct_struct_init(&mut self, input: StructExpression) -> (Expression, Self::AdditionalOutput) { [INFO] [stdout] | ----------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 35 | let mut statements = Vec::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 36 | let mut members = Vec::with_capacity(input.members.len()); [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 53 | (Expression::Struct(StructExpression { name: input.name, members, span: input.span, id: input.id }), statements) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/loop_unrolling/unroller.rs:71:27 [INFO] [stdout] | [INFO] [stdout] 64 | symbol_table: SymbolTable, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 71 | symbol_table: RefCell::new(symbol_table), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/loop_unrolling/unroller.rs:129:19 [INFO] [stdout] | [INFO] [stdout] 128 | let cast_to_number = |v: Value| -> Result { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 129 | match v.try_into() { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/loop_unrolling/unroll_expression.rs:34:13 [INFO] [stdout] | [INFO] [stdout] 25 | fn reconstruct_array_access(&mut self, input: ArrayAccess) -> (Expression, Self::AdditionalOutput) { [INFO] [stdout] | ------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 26 | // Reconstruct the index. [INFO] [stdout] 27 | let index = self.reconstruct_expression(*input.index).0; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 34 | / Expression::Access(AccessExpression::Array(ArrayAccess { [INFO] [stdout] 35 | | array: Box::new(self.reconstruct_expression(*input.array).0), [INFO] [stdout] 36 | | index: Box::new(index), [INFO] [stdout] 37 | | span: input.span, [INFO] [stdout] 38 | | id: input.id, [INFO] [stdout] 39 | | })), [INFO] [stdout] | |_______________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/loop_unrolling/unroll_program.rs:32:24 [INFO] [stdout] | [INFO] [stdout] 22 | fn reconstruct_stub(&mut self, input: Stub) -> Stub { [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 32 | functions: input.functions.into_iter().map(|(i, f)| (i, self.reconstruct_function_stub(f))).collect(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/loop_unrolling/unroll_program.rs:32:69 [INFO] [stdout] | [INFO] [stdout] 32 | functions: input.functions.into_iter().map(|(i, f)| (i, self.reconstruct_function_stub(f))).collect(), [INFO] [stdout] | ------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/loop_unrolling/unroll_program.rs:48:24 [INFO] [stdout] | [INFO] [stdout] 36 | fn reconstruct_program_scope(&mut self, input: ProgramScope) -> ProgramScope { [INFO] [stdout] | ------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 48 | functions: input.functions.into_iter().map(|(i, f)| (i, self.reconstruct_function(f))).collect(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/loop_unrolling/unroll_program.rs:49:21 [INFO] [stdout] | [INFO] [stdout] 36 | fn reconstruct_program_scope(&mut self, input: ProgramScope) -> ProgramScope { [INFO] [stdout] | ------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 49 | consts: Vec::new(), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/loop_unrolling/unroll_program.rs:48:69 [INFO] [stdout] | [INFO] [stdout] 48 | functions: input.functions.into_iter().map(|(i, f)| (i, self.reconstruct_function(f))).collect(), [INFO] [stdout] | ------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/loop_unrolling/unroll_statement.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 53 | fn reconstruct_const(&mut self, input: ConstDeclaration) -> (Statement, Self::AdditionalOutput) { [INFO] [stdout] | ----------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 54 | // Reconstruct the RHS expression to allow for constant propagation [INFO] [stdout] 55 | let reconstructed_value_expression = self.reconstruct_expression(input.value.clone()).0; [INFO] [stdout] | ------------------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 66 | / Statement::Const(ConstDeclaration { [INFO] [stdout] 67 | | place: input.place, [INFO] [stdout] 68 | | type_: input.type_, [INFO] [stdout] 69 | | value: reconstructed_value_expression, [INFO] [stdout] 70 | | span: input.span, [INFO] [stdout] 71 | | id: input.id, [INFO] [stdout] 72 | | }), [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/loop_unrolling/unroll_statement.rs:120:13 [INFO] [stdout] | [INFO] [stdout] 77 | fn reconstruct_definition(&mut self, input: DefinitionStatement) -> (Statement, Self::AdditionalOutput) { [INFO] [stdout] | -------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 120 | / Statement::Definition(DefinitionStatement { [INFO] [stdout] 121 | | declaration_type: input.declaration_type, [INFO] [stdout] 122 | | place: input.place, [INFO] [stdout] 123 | | type_: input.type_, [INFO] [stdout] ... | [INFO] [stdout] 126 | | id: input.id, [INFO] [stdout] 127 | | }), [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/loop_unrolling/unroll_statement.rs:184:13 [INFO] [stdout] | [INFO] [stdout] 132 | fn reconstruct_iteration(&mut self, input: IterationStatement) -> (Statement, Self::AdditionalOutput) { [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 133 | // Reconstruct the bound expressions [INFO] [stdout] 134 | let (new_start, _) = self.reconstruct_expression(input.start); [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 135 | let (new_stop, _) = self.reconstruct_expression(input.stop); [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 184 | / self.unroll_iteration_statement::(IterationStatement { [INFO] [stdout] 185 | | variable: input.variable, [INFO] [stdout] 186 | | type_: input.type_, [INFO] [stdout] 187 | | start: new_start, [INFO] [stdout] ... | [INFO] [stdout] 194 | | id: input.id, [INFO] [stdout] 195 | | }), [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/mod.rs:75:12 [INFO] [stdout] | [INFO] [stdout] 71 | fn do_pass((ast, node_builder, assigner, symbol_table, type_table): Self::Input) -> Self::Output { [INFO] [stdout] | -------------------------------------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 72 | let mut consumer = StaticSingleAssigner::new(node_builder, symbol_table, type_table, assigner); [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 73 | let program = consumer.consume_program(ast.into_repr()); [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 74 | [INFO] [stdout] 75 | Ok(Ast::new(program)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_expression.rs:124:10 [INFO] [stdout] | [INFO] [stdout] 51 | fn consume_access(&mut self, input: AccessExpression) -> Self::Output { [INFO] [stdout] | ----------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 52 | let (expr, mut statements) = match input { [INFO] [stdout] | ---- ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 53 | AccessExpression::AssociatedFunction(function) => { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 54 | let mut statements = Vec::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 74 | AccessExpression::Member(member) => { [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 83 | let (expr, statements) = self.consume_expression(*member.inner); [INFO] [stdout] | ---- ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 94 | AccessExpression::Tuple(tuple) => { [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 95 | let (expr, statements) = self.consume_expression(*tuple.tuple); [INFO] [stdout] | ---- ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 106 | AccessExpression::Array(input) => { [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 107 | let (array, statements) = self.consume_expression(*input.array); [INFO] [stdout] | ----- ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 119 | expr => (expr, Vec::new()), [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 120 | }; [INFO] [stdout] 121 | let (place, statement) = self.unique_simple_assign_statement(Expression::Access(expr)); [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 124 | (Expression::Identifier(place), statements) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_expression.rs:150:10 [INFO] [stdout] | [INFO] [stdout] 128 | fn consume_array(&mut self, input: ArrayExpression) -> Self::Output { [INFO] [stdout] | ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 129 | let mut statements = Vec::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 132 | let elements = input [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 143 | let (place, statement) = self.unique_simple_assign_statement(Expression::Array(ArrayExpression { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 150 | (Expression::Identifier(place), statements) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_expression.rs:73:15 [INFO] [stdout] | [INFO] [stdout] 71 | fn reconstruct_ternary(&mut self, input: TernaryExpression) -> (Expression, Self::AdditionalOutput) { [INFO] [stdout] | ------------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 72 | let mut statements = Vec::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 73 | match (*input.if_true, *input.if_false) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_program.rs:27:22 [INFO] [stdout] | [INFO] [stdout] 23 | fn reconstruct_program_scope(&mut self, input: ProgramScope) -> ProgramScope { [INFO] [stdout] | ------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 27 | structs: input.structs.into_iter().map(|(i, c)| (i, self.reconstruct_struct(c))).collect(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_program.rs:28:23 [INFO] [stdout] | [INFO] [stdout] 23 | fn reconstruct_program_scope(&mut self, input: ProgramScope) -> ProgramScope { [INFO] [stdout] | ------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 28 | mappings: input.mappings.into_iter().map(|(id, mapping)| (id, self.reconstruct_mapping(mapping))).collect(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_program.rs:29:24 [INFO] [stdout] | [INFO] [stdout] 23 | fn reconstruct_program_scope(&mut self, input: ProgramScope) -> ProgramScope { [INFO] [stdout] | ------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 29 | functions: input.functions.into_iter().map(|(i, f)| (i, self.reconstruct_function(f))).collect(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_program.rs:30:21 [INFO] [stdout] | [INFO] [stdout] 23 | fn reconstruct_program_scope(&mut self, input: ProgramScope) -> ProgramScope { [INFO] [stdout] | ------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 30 | consts: input [INFO] [stdout] | _____________________^ [INFO] [stdout] 31 | | .consts [INFO] [stdout] 32 | | .into_iter() [INFO] [stdout] 33 | | .map(|(i, c)| match self.reconstruct_const(c) { [INFO] [stdout] ... | [INFO] [stdout] 36 | | }) [INFO] [stdout] 37 | | .collect(), [INFO] [stdout] | |__________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_program.rs:27:65 [INFO] [stdout] | [INFO] [stdout] 27 | structs: input.structs.into_iter().map(|(i, c)| (i, self.reconstruct_struct(c))).collect(), [INFO] [stdout] | ------ ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_program.rs:28:75 [INFO] [stdout] | [INFO] [stdout] 28 | mappings: input.mappings.into_iter().map(|(id, mapping)| (id, self.reconstruct_mapping(mapping))).collect(), [INFO] [stdout] | ------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_program.rs:29:69 [INFO] [stdout] | [INFO] [stdout] 29 | functions: input.functions.into_iter().map(|(i, f)| (i, self.reconstruct_function(f))).collect(), [INFO] [stdout] | ------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_program.rs:33:37 [INFO] [stdout] | [INFO] [stdout] 33 | .map(|(i, c)| match self.reconstruct_const(c) { [INFO] [stdout] | ------ ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_statement.rs:92:15 [INFO] [stdout] | [INFO] [stdout] 61 | fn reconstruct_assert(&mut self, input: AssertStatement) -> (Statement, Self::AdditionalOutput) { [INFO] [stdout] | ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 62 | let mut statements = Vec::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 65 | let assert = AssertStatement { [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 69 | AssertVariant::Assert(expression) => { [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 70 | let (expression, additional_statements) = self.reconstruct_expression(expression); [INFO] [stdout] | ---------- --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 74 | AssertVariant::AssertEq(left, right) => { [INFO] [stdout] | ---- ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 75 | let (left, additional_statements) = self.reconstruct_expression(left); [INFO] [stdout] | ---- --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 76 | statements.extend(additional_statements); [INFO] [stdout] 77 | let (right, additional_statements) = self.reconstruct_expression(right); [INFO] [stdout] | ----- --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 81 | AssertVariant::AssertNeq(left, right) => { [INFO] [stdout] | ---- ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 82 | let (left, additional_statements) = self.reconstruct_expression(left); [INFO] [stdout] | ---- --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 83 | statements.extend(additional_statements); [INFO] [stdout] 84 | let (right, additional_statements) = self.reconstruct_expression(right); [INFO] [stdout] | ----- --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 92 | match self.construct_guard() { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_statement.rs:171:15 [INFO] [stdout] | [INFO] [stdout] 168 | fn reconstruct_assign(&mut self, assign: AssignStatement) -> (Statement, Self::AdditionalOutput) { [INFO] [stdout] | ----------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 169 | // Flatten the rhs of the assignment. [INFO] [stdout] 170 | let (value, statements) = self.reconstruct_expression(assign.value); [INFO] [stdout] | ----- ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 171 | match (assign.place, &value) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_statement.rs:218:10 [INFO] [stdout] | [INFO] [stdout] 208 | fn reconstruct_block(&mut self, block: Block) -> (Block, Self::AdditionalOutput) { [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 209 | let mut statements = Vec::with_capacity(block.statements.len()); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 218 | (Block { span: block.span, statements, id: self.node_builder.next_id() }, Default::default()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_statement.rs:218:83 [INFO] [stdout] | [INFO] [stdout] 208 | fn reconstruct_block(&mut self, block: Block) -> (Block, Self::AdditionalOutput) { [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 209 | let mut statements = Vec::with_capacity(block.statements.len()); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 218 | (Block { span: block.span, statements, id: self.node_builder.next_id() }, Default::default()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_statement.rs:254:10 [INFO] [stdout] | [INFO] [stdout] 222 | fn reconstruct_conditional(&mut self, conditional: ConditionalStatement) -> (Statement, Self::AdditionalOutput) { [INFO] [stdout] | --------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 223 | let mut statements = Vec::with_capacity(conditional.then.statements.len()); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 254 | (Statement::dummy(Default::default(), self.node_builder.next_id()), statements) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_statement.rs:280:10 [INFO] [stdout] | [INFO] [stdout] 271 | fn reconstruct_return(&mut self, input: ReturnStatement) -> (Statement, Self::AdditionalOutput) { [INFO] [stdout] | ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 272 | // Construct the associated guard. [INFO] [stdout] 273 | let guard = self.construct_guard(); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 280 | (Statement::dummy(Default::default(), self.node_builder.next_id()), Default::default()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flatten_statement.rs:280:77 [INFO] [stdout] | [INFO] [stdout] 271 | fn reconstruct_return(&mut self, input: ReturnStatement) -> (Statement, Self::AdditionalOutput) { [INFO] [stdout] | ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 272 | // Construct the associated guard. [INFO] [stdout] 273 | let guard = self.construct_guard(); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 280 | (Statement::dummy(Default::default(), self.node_builder.next_id()), Default::default()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flattener.rs:103:40 [INFO] [stdout] | [INFO] [stdout] 101 | Some(rest.iter().cloned().fold(first.clone(), |acc, condition| { [INFO] [stdout] | --- --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 102 | // Construct the binary expression. [INFO] [stdout] 103 | Expression::Binary(BinaryExpression { [INFO] [stdout] | ________________________________________^ [INFO] [stdout] 104 | | op: BinaryOperation::And, [INFO] [stdout] 105 | | left: Box::new(acc), [INFO] [stdout] 106 | | right: Box::new(condition), [INFO] [stdout] ... | [INFO] [stdout] 114 | | }, [INFO] [stdout] 115 | | }) [INFO] [stdout] | |_____________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flattener.rs:394:10 [INFO] [stdout] | [INFO] [stdout] 292 | let mut statements = Vec::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 293 | // For each array element, construct a new ternary expression. [INFO] [stdout] 294 | let elements = (0..array.length()) [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 374 | let (expr, stmts) = self.reconstruct_array(ArrayExpression { [INFO] [stdout] | ---- ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 390 | let (identifier, statement) = self.unique_simple_assign_statement(expr); [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 394 | (Expression::Identifier(identifier), statements) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flattener.rs:492:10 [INFO] [stdout] | [INFO] [stdout] 405 | let mut statements = Vec::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 406 | // For each struct member, construct a new ternary expression. [INFO] [stdout] 407 | let members = struct_ [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 470 | let (expr, stmts) = self.reconstruct_struct_init(StructExpression { [INFO] [stdout] | ---- ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 488 | let (identifier, statement) = self.unique_simple_assign_statement(expr); [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 492 | (Expression::Identifier(identifier), statements) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flattener.rs:463:33 [INFO] [stdout] | [INFO] [stdout] 412 | let (first, stmt) = [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 427 | let (second, stmt) = [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 442 | let (expression, stmts) = self.reconstruct_ternary(TernaryExpression { [INFO] [stdout] | ---------- ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 463 | expression: Some(expression), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/flattening/flattener.rs:587:10 [INFO] [stdout] | [INFO] [stdout] 503 | let mut statements = Vec::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 504 | // For each tuple element, construct a new ternary expression. [INFO] [stdout] 505 | let elements = tuple_type [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 566 | let tuple = TupleExpression { [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 577 | let (expr, stmts) = self.reconstruct_tuple(tuple.clone()); [INFO] [stdout] | ---- ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 583 | let (identifier, statement) = self.unique_simple_assign_statement(expr); [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 587 | (Expression::Identifier(identifier), statements) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/function_inlining/mod.rs:80:12 [INFO] [stdout] | [INFO] [stdout] 76 | fn do_pass((ast, node_builder, call_graph, assigner, tt): Self::Input) -> Self::Output { [INFO] [stdout] | ---------------------------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 77 | let mut reconstructor = FunctionInliner::new(node_builder, call_graph, assigner, tt); [INFO] [stdout] | ------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 78 | let program = reconstructor.reconstruct_program(ast.into_repr()); [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 79 | [INFO] [stdout] 80 | Ok(Ast::new(program)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/function_inlining/assignment_renamer.rs:89:13 [INFO] [stdout] | [INFO] [stdout] 87 | fn reconstruct_struct_init(&mut self, input: StructExpression) -> (Expression, Self::AdditionalOutput) { [INFO] [stdout] | ----------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 88 | ( [INFO] [stdout] 89 | / Expression::Struct(StructExpression { [INFO] [stdout] 90 | | name: input.name, [INFO] [stdout] 91 | | members: input [INFO] [stdout] 92 | | .members [INFO] [stdout] ... | [INFO] [stdout] 107 | | id: input.id, [INFO] [stdout] 108 | | }), [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/function_inlining/assignment_renamer.rs:96:37 [INFO] [stdout] | [INFO] [stdout] 94 | .map(|member| StructVariableInitializer { [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 95 | identifier: member.identifier, [INFO] [stdout] 96 | expression: match member.expression { [INFO] [stdout] | _____________________________________^ [INFO] [stdout] 97 | | Some(expression) => Some(self.reconstruct_expression(expression).0), [INFO] [stdout] 98 | | None => unreachable!( [INFO] [stdout] 99 | | "SSA guarantees that all struct members are always of the form ` : `." [INFO] [stdout] 100 | | ), [INFO] [stdout] 101 | | }, [INFO] [stdout] | |_________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/function_inlining/assignment_renamer.rs:127:13 [INFO] [stdout] | [INFO] [stdout] 116 | fn reconstruct_assign(&mut self, input: AssignStatement) -> (Statement, Self::AdditionalOutput) { [INFO] [stdout] | ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 117 | // First rename the right-hand-side of the assignment. [INFO] [stdout] 118 | let value = self.reconstruct_expression(input.value).0; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 123 | let place = self.reconstruct_expression(input.place).0; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 127 | Statement::Assign(Box::new(AssignStatement { place, value, span: input.span, id: input.id })), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/function_inlining/inline_statement.rs:38:15 [INFO] [stdout] | [INFO] [stdout] 36 | fn reconstruct_assign(&mut self, input: AssignStatement) -> (Statement, Self::AdditionalOutput) { [INFO] [stdout] | ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 37 | let (value, mut statements) = self.reconstruct_expression(input.value.clone()); [INFO] [stdout] | ----- ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 38 | match (input.place, value) { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/function_inlining/inline_statement.rs:42:39 [INFO] [stdout] | [INFO] [stdout] 41 | statements.extend(left.elements.into_iter().zip(right.elements).map(|(lhs, rhs)| { [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 42 | Statement::Assign(Box::new(AssignStatement { [INFO] [stdout] | _______________________________________^ [INFO] [stdout] 43 | | place: lhs, [INFO] [stdout] 44 | | value: rhs, [INFO] [stdout] 45 | | span: Default::default(), [INFO] [stdout] 46 | | id: self.node_builder.next_id(), [INFO] [stdout] 47 | | })) [INFO] [stdout] | |______________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/function_inlining/inline_statement.rs:69:10 [INFO] [stdout] | [INFO] [stdout] 60 | fn reconstruct_block(&mut self, block: Block) -> (Block, Self::AdditionalOutput) { [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 61 | let mut statements = Vec::with_capacity(block.statements.len()); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 69 | (Block { span: block.span, statements, id: block.id }, Default::default()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/function_inlining/inline_statement.rs:69:64 [INFO] [stdout] | [INFO] [stdout] 60 | fn reconstruct_block(&mut self, block: Block) -> (Block, Self::AdditionalOutput) { [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 61 | let mut statements = Vec::with_capacity(block.statements.len()); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 69 | (Block { span: block.span, statements, id: block.id }, Default::default()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/function_inlining/inline_statement.rs:81:65 [INFO] [stdout] | [INFO] [stdout] 81 | otherwise: input.otherwise.map(|n| Box::new(self.reconstruct_statement(*n).0)), [INFO] [stdout] | - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/function_inlining/inline_program.rs:72:20 [INFO] [stdout] | [INFO] [stdout] 64 | fn reconstruct_function(&mut self, input: Function) -> Function { [INFO] [stdout] | --------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 72 | block: self.reconstruct_block(input.block).0, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/function_inlining/inline_program.rs:73:23 [INFO] [stdout] | [INFO] [stdout] 64 | fn reconstruct_function(&mut self, input: Function) -> Function { [INFO] [stdout] | --------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 73 | finalize: input.finalize.map(|finalize| { [INFO] [stdout] | _______________________^ [INFO] [stdout] 74 | | // Set the `is_finalize` flag before reconstructing the finalize block. [INFO] [stdout] 75 | | self.is_finalize = true; [INFO] [stdout] 76 | | // Reconstruct the finalize block. [INFO] [stdout] ... | [INFO] [stdout] 88 | | finalize [INFO] [stdout] 89 | | }), [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/loop_unrolling/mod.rs:43:12 [INFO] [stdout] | [INFO] [stdout] 38 | fn do_pass((ast, handler, node_builder, st, tt): Self::Input) -> Self::Output { [INFO] [stdout] | ------------------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 39 | let mut reconstructor = Self::new(st, tt, handler, node_builder); [INFO] [stdout] | ------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 40 | let program = reconstructor.reconstruct_program(ast.into_repr()); [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 43 | Ok((Ast::new(program), reconstructor.symbol_table.take())) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/loop_unrolling/unroller.rs:70:41 [INFO] [stdout] | [INFO] [stdout] 64 | symbol_table: SymbolTable, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 70 | constant_propagation_table: RefCell::new(ConstantPropagationTable::default()), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/loop_unrolling/unroller.rs:71:27 [INFO] [stdout] | [INFO] [stdout] 64 | symbol_table: SymbolTable, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 71 | symbol_table: RefCell::new(symbol_table), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/loop_unrolling/unroller.rs:129:19 [INFO] [stdout] | [INFO] [stdout] 128 | let cast_to_number = |v: Value| -> Result { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 129 | match v.try_into() { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/loop_unrolling/unroll_expression.rs:34:13 [INFO] [stdout] | [INFO] [stdout] 25 | fn reconstruct_array_access(&mut self, input: ArrayAccess) -> (Expression, Self::AdditionalOutput) { [INFO] [stdout] | ------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 26 | // Reconstruct the index. [INFO] [stdout] 27 | let index = self.reconstruct_expression(*input.index).0; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 34 | / Expression::Access(AccessExpression::Array(ArrayAccess { [INFO] [stdout] 35 | | array: Box::new(self.reconstruct_expression(*input.array).0), [INFO] [stdout] 36 | | index: Box::new(index), [INFO] [stdout] 37 | | span: input.span, [INFO] [stdout] 38 | | id: input.id, [INFO] [stdout] 39 | | })), [INFO] [stdout] | |_______________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/loop_unrolling/unroll_program.rs:32:24 [INFO] [stdout] | [INFO] [stdout] 22 | fn reconstruct_stub(&mut self, input: Stub) -> Stub { [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 32 | functions: input.functions.into_iter().map(|(i, f)| (i, self.reconstruct_function_stub(f))).collect(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/loop_unrolling/unroll_program.rs:32:69 [INFO] [stdout] | [INFO] [stdout] 32 | functions: input.functions.into_iter().map(|(i, f)| (i, self.reconstruct_function_stub(f))).collect(), [INFO] [stdout] | ------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/loop_unrolling/unroll_program.rs:48:24 [INFO] [stdout] | [INFO] [stdout] 36 | fn reconstruct_program_scope(&mut self, input: ProgramScope) -> ProgramScope { [INFO] [stdout] | ------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 48 | functions: input.functions.into_iter().map(|(i, f)| (i, self.reconstruct_function(f))).collect(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/loop_unrolling/unroll_program.rs:49:21 [INFO] [stdout] | [INFO] [stdout] 36 | fn reconstruct_program_scope(&mut self, input: ProgramScope) -> ProgramScope { [INFO] [stdout] | ------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 49 | consts: Vec::new(), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/loop_unrolling/unroll_program.rs:48:69 [INFO] [stdout] | [INFO] [stdout] 48 | functions: input.functions.into_iter().map(|(i, f)| (i, self.reconstruct_function(f))).collect(), [INFO] [stdout] | ------ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_expression.rs:172:10 [INFO] [stdout] | [INFO] [stdout] 154 | fn consume_binary(&mut self, input: BinaryExpression) -> Self::Output { [INFO] [stdout] | ----------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 155 | // Reconstruct the lhs of the binary expression. [INFO] [stdout] 156 | let (left_expression, mut statements) = self.consume_expression(*input.left); [INFO] [stdout] | --------------- ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 157 | // Reconstruct the rhs of the binary expression. [INFO] [stdout] 158 | let (right_expression, mut right_statements) = self.consume_expression(*input.right); [INFO] [stdout] | ---------------- ---------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 163 | let (place, statement) = self.unique_simple_assign_statement(Expression::Binary(BinaryExpression { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 172 | (Expression::Identifier(place), statements) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_expression.rs:202:10 [INFO] [stdout] | [INFO] [stdout] 176 | fn consume_call(&mut self, input: CallExpression) -> Self::Output { [INFO] [stdout] | --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 177 | let mut statements = Vec::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 180 | let arguments = input [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 191 | let (place, statement) = self.unique_simple_assign_statement(Expression::Call(CallExpression { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 202 | (Expression::Identifier(place), statements) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/loop_unrolling/unroll_statement.rs:66:13 [INFO] [stdout] | [INFO] [stdout] 53 | fn reconstruct_const(&mut self, input: ConstDeclaration) -> (Statement, Self::AdditionalOutput) { [INFO] [stdout] | ----------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 54 | // Reconstruct the RHS expression to allow for constant propagation [INFO] [stdout] 55 | let reconstructed_value_expression = self.reconstruct_expression(input.value.clone()).0; [INFO] [stdout] | ------------------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 66 | / Statement::Const(ConstDeclaration { [INFO] [stdout] 67 | | place: input.place, [INFO] [stdout] 68 | | type_: input.type_, [INFO] [stdout] 69 | | value: reconstructed_value_expression, [INFO] [stdout] 70 | | span: input.span, [INFO] [stdout] 71 | | id: input.id, [INFO] [stdout] 72 | | }), [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_expression.rs:219:10 [INFO] [stdout] | [INFO] [stdout] 206 | fn consume_cast(&mut self, input: CastExpression) -> Self::Output { [INFO] [stdout] | --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 207 | // Reconstruct the expression being casted. [INFO] [stdout] 208 | let (expression, mut statements) = self.consume_expression(*input.expression); [INFO] [stdout] | ---------- ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 211 | let (place, statement) = self.unique_simple_assign_statement(Expression::Cast(CastExpression { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 219 | (Expression::Identifier(place), statements) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/loop_unrolling/unroll_statement.rs:120:13 [INFO] [stdout] | [INFO] [stdout] 77 | fn reconstruct_definition(&mut self, input: DefinitionStatement) -> (Statement, Self::AdditionalOutput) { [INFO] [stdout] | -------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 120 | / Statement::Definition(DefinitionStatement { [INFO] [stdout] 121 | | declaration_type: input.declaration_type, [INFO] [stdout] 122 | | place: input.place, [INFO] [stdout] 123 | | type_: input.type_, [INFO] [stdout] ... | [INFO] [stdout] 126 | | id: input.id, [INFO] [stdout] 127 | | }), [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_expression.rs:293:10 [INFO] [stdout] | [INFO] [stdout] 223 | fn consume_struct_init(&mut self, input: StructExpression) -> Self::Output { [INFO] [stdout] | ----------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 224 | let mut statements = Vec::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 227 | let members: Vec = input [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 260 | let mut reordered_members = Vec::with_capacity(members.len()); [INFO] [stdout] | ----------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 263 | let mut member_map: IndexMap = [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 285 | let (place, statement) = self.unique_simple_assign_statement(Expression::Struct(StructExpression { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 293 | (Expression::Identifier(place), statements) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_expression.rs:245:33 [INFO] [stdout] | [INFO] [stdout] 230 | .map(|arg| { [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 231 | let (expression, mut stmts) = match &arg.expression.is_some() { [INFO] [stdout] | ---------- ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 245 | expression: Some(expression), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_expression.rs:319:10 [INFO] [stdout] | [INFO] [stdout] 316 | fn consume_literal(&mut self, input: Literal) -> Self::Output { [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 317 | // Construct and accumulate a new assignment statement for the literal. [INFO] [stdout] 318 | let (place, statement) = self.unique_simple_assign_statement(Expression::Literal(input)); [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 319 | (Expression::Identifier(place), vec![statement]) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/loop_unrolling/unroll_statement.rs:184:13 [INFO] [stdout] | [INFO] [stdout] 132 | fn reconstruct_iteration(&mut self, input: IterationStatement) -> (Statement, Self::AdditionalOutput) { [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 133 | // Reconstruct the bound expressions [INFO] [stdout] 134 | let (new_start, _) = self.reconstruct_expression(input.start); [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 135 | let (new_stop, _) = self.reconstruct_expression(input.stop); [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 184 | / self.unroll_iteration_statement::(IterationStatement { [INFO] [stdout] 185 | | variable: input.variable, [INFO] [stdout] 186 | | type_: input.type_, [INFO] [stdout] 187 | | start: new_start, [INFO] [stdout] ... | [INFO] [stdout] 194 | | id: input.id, [INFO] [stdout] 195 | | }), [INFO] [stdout] | |______________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_expression.rs:350:10 [INFO] [stdout] | [INFO] [stdout] 328 | fn consume_ternary(&mut self, input: TernaryExpression) -> Self::Output { [INFO] [stdout] | ------------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 329 | // Reconstruct the condition of the ternary expression. [INFO] [stdout] 330 | let (cond_expr, mut statements) = self.consume_expression(*input.condition); [INFO] [stdout] | --------- ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 331 | // Reconstruct the if-true case of the ternary expression. [INFO] [stdout] 332 | let (if_true_expr, mut if_true_statements) = self.consume_expression(*input.if_true); [INFO] [stdout] | ------------ ------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 333 | // Reconstruct the if-false case of the ternary expression. [INFO] [stdout] 334 | let (if_false_expr, mut if_false_statements) = self.consume_expression(*input.if_false); [INFO] [stdout] | ------------- ------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 341 | let (place, statement) = self.unique_simple_assign_statement(Expression::Ternary(TernaryExpression { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 350 | (Expression::Identifier(place), statements) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_expression.rs:376:10 [INFO] [stdout] | [INFO] [stdout] 354 | fn consume_tuple(&mut self, input: TupleExpression) -> Self::Output { [INFO] [stdout] | ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 355 | let mut statements = Vec::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 358 | let elements = input [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 369 | let (place, statement) = self.unique_simple_assign_statement(Expression::Tuple(TupleExpression { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 376 | (Expression::Identifier(place), statements) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/mod.rs:75:12 [INFO] [stdout] | [INFO] [stdout] 71 | fn do_pass((ast, node_builder, assigner, symbol_table, type_table): Self::Input) -> Self::Output { [INFO] [stdout] | -------------------------------------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 72 | let mut consumer = StaticSingleAssigner::new(node_builder, symbol_table, type_table, assigner); [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 73 | let program = consumer.consume_program(ast.into_repr()); [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 74 | [INFO] [stdout] 75 | Ok(Ast::new(program)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_expression.rs:393:10 [INFO] [stdout] | [INFO] [stdout] 380 | fn consume_unary(&mut self, input: UnaryExpression) -> Self::Output { [INFO] [stdout] | ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 381 | // Reconstruct the operand of the unary expression. [INFO] [stdout] 382 | let (receiver, mut statements) = self.consume_expression(*input.receiver); [INFO] [stdout] | -------- ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 385 | let (place, statement) = self.unique_simple_assign_statement(Expression::Unary(UnaryExpression { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 393 | (Expression::Identifier(place), statements) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_program.rs:136:22 [INFO] [stdout] | [INFO] [stdout] 132 | fn consume_program_scope(&mut self, input: ProgramScope) -> Self::Output { [INFO] [stdout] | ------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 136 | structs: input.structs.into_iter().map(|(i, s)| (i, self.consume_struct(s))).collect(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_program.rs:138:24 [INFO] [stdout] | [INFO] [stdout] 132 | fn consume_program_scope(&mut self, input: ProgramScope) -> Self::Output { [INFO] [stdout] | ------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 138 | functions: input.functions.into_iter().map(|(i, f)| (i, self.consume_function(f))).collect(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_program.rs:136:65 [INFO] [stdout] | [INFO] [stdout] 136 | structs: input.structs.into_iter().map(|(i, s)| (i, self.consume_struct(s))).collect(), [INFO] [stdout] | ------ ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_program.rs:138:69 [INFO] [stdout] | [INFO] [stdout] 138 | functions: input.functions.into_iter().map(|(i, f)| (i, self.consume_function(f))).collect(), [INFO] [stdout] | ------ ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_program.rs:150:22 [INFO] [stdout] | [INFO] [stdout] 148 | fn consume_program(&mut self, input: Program) -> Self::Output { [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 149 | Program { [INFO] [stdout] 150 | imports: input [INFO] [stdout] | ______________________^ [INFO] [stdout] 151 | | .imports [INFO] [stdout] 152 | | .into_iter() [INFO] [stdout] 153 | | .map(|(name, (import, span))| (name, (self.consume_program(import), span))) [INFO] [stdout] 154 | | .collect(), [INFO] [stdout] | |__________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_program.rs:156:29 [INFO] [stdout] | [INFO] [stdout] 148 | fn consume_program(&mut self, input: Program) -> Self::Output { [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 156 | program_scopes: input [INFO] [stdout] | _____________________________^ [INFO] [stdout] 157 | | .program_scopes [INFO] [stdout] 158 | | .into_iter() [INFO] [stdout] 159 | | .map(|(name, scope)| (name, self.consume_program_scope(scope))) [INFO] [stdout] 160 | | .collect(), [INFO] [stdout] | |__________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_program.rs:153:54 [INFO] [stdout] | [INFO] [stdout] 153 | .map(|(name, (import, span))| (name, (self.consume_program(import), span))) [INFO] [stdout] | ---------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_program.rs:159:45 [INFO] [stdout] | [INFO] [stdout] 159 | .map(|(name, scope)| (name, self.consume_program_scope(scope))) [INFO] [stdout] | ------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_expression.rs:124:10 [INFO] [stdout] | [INFO] [stdout] 51 | fn consume_access(&mut self, input: AccessExpression) -> Self::Output { [INFO] [stdout] | ----------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 52 | let (expr, mut statements) = match input { [INFO] [stdout] | ---- ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 53 | AccessExpression::AssociatedFunction(function) => { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 54 | let mut statements = Vec::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 74 | AccessExpression::Member(member) => { [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 83 | let (expr, statements) = self.consume_expression(*member.inner); [INFO] [stdout] | ---- ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 94 | AccessExpression::Tuple(tuple) => { [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 95 | let (expr, statements) = self.consume_expression(*tuple.tuple); [INFO] [stdout] | ---- ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 106 | AccessExpression::Array(input) => { [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 107 | let (array, statements) = self.consume_expression(*input.array); [INFO] [stdout] | ----- ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 119 | expr => (expr, Vec::new()), [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 120 | }; [INFO] [stdout] 121 | let (place, statement) = self.unique_simple_assign_statement(Expression::Access(expr)); [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 124 | (Expression::Identifier(place), statements) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_statement.rs:108:9 [INFO] [stdout] | [INFO] [stdout] 107 | fn consume_block(&mut self, block: Block) -> Self::Output { [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 108 | block.statements.into_iter().flat_map(|statement| self.consume_statement(statement)).collect() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_statement.rs:139:72 [INFO] [stdout] | [INFO] [stdout] 139 | let otherwise = conditional.otherwise.map(|otherwise| Box::new(Statement::Block(match *otherwise { [INFO] [stdout] | ____________________________________________________---------___________^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 140 | | Statement::Block(block) => Block { [INFO] [stdout] 141 | | span: block.span, [INFO] [stdout] 142 | | id: block.id, [INFO] [stdout] ... | [INFO] [stdout] 150 | | _ => unreachable!("Type checking guarantees that the otherwise-block of a conditional statement is a block or another conditi... [INFO] [stdout] 151 | | }))); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_statement.rs:360:33 [INFO] [stdout] | [INFO] [stdout] 357 | let arguments = process_arguments(associated_function.arguments); [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 360 | statements.push(Statement::Expression(ExpressionStatement { [INFO] [stdout] | _________________________________^ [INFO] [stdout] 361 | | expression: Expression::Access(AccessExpression::AssociatedFunction(AssociatedFunction { [INFO] [stdout] 362 | | variant: associated_function.variant, [INFO] [stdout] 363 | | name: associated_function.name, [INFO] [stdout] ... | [INFO] [stdout] 369 | | id: input.id, [INFO] [stdout] 370 | | })) [INFO] [stdout] | |__________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_expression.rs:150:10 [INFO] [stdout] | [INFO] [stdout] 128 | fn consume_array(&mut self, input: ArrayExpression) -> Self::Output { [INFO] [stdout] | ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 129 | let mut statements = Vec::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 132 | let elements = input [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 143 | let (place, statement) = self.unique_simple_assign_statement(Expression::Array(ArrayExpression { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 150 | (Expression::Identifier(place), statements) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_statement.rs:327:13 [INFO] [stdout] | [INFO] [stdout] 326 | let mut process_arguments = |arguments: Vec| { [INFO] [stdout] | -------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 327 | / arguments [INFO] [stdout] 328 | | .into_iter() [INFO] [stdout] 329 | | .map(|argument| { [INFO] [stdout] 330 | | let (argument, mut stmts) = self.consume_expression(argument); [INFO] [stdout] 331 | | statements.append(&mut stmts); [INFO] [stdout] 332 | | argument [INFO] [stdout] 333 | | }) [INFO] [stdout] | |__________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_statement.rs:393:13 [INFO] [stdout] | [INFO] [stdout] 392 | let finalize_args = input.finalize_arguments.map(|arguments| { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 393 | / arguments [INFO] [stdout] 394 | | .into_iter() [INFO] [stdout] 395 | | .map(|argument| { [INFO] [stdout] 396 | | let (argument, stmts) = self.consume_expression(argument); [INFO] [stdout] 397 | | statements.extend(stmts); [INFO] [stdout] 398 | | argument [INFO] [stdout] 399 | | }) [INFO] [stdout] | |__________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/mod.rs:43:12 [INFO] [stdout] | [INFO] [stdout] 35 | fn do_pass((ast, handler, st, tt): Self::Input) -> Self::Output { [INFO] [stdout] | ----------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 36 | let mut visitor = TypeChecker::new(st, tt, handler); [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 43 | Ok((visitor.symbol_table.take(), visitor.struct_graph, visitor.call_graph)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_expression.rs:172:10 [INFO] [stdout] | [INFO] [stdout] 154 | fn consume_binary(&mut self, input: BinaryExpression) -> Self::Output { [INFO] [stdout] | ----------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 155 | // Reconstruct the lhs of the binary expression. [INFO] [stdout] 156 | let (left_expression, mut statements) = self.consume_expression(*input.left); [INFO] [stdout] | --------------- ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 157 | // Reconstruct the rhs of the binary expression. [INFO] [stdout] 158 | let (right_expression, mut right_statements) = self.consume_expression(*input.right); [INFO] [stdout] | ---------------- ---------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 163 | let (place, statement) = self.unique_simple_assign_statement(Expression::Binary(BinaryExpression { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 172 | (Expression::Identifier(place), statements) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/check_expressions.rs:28:11 [INFO] [stdout] | [INFO] [stdout] 27 | fn return_incorrect_type(t1: Option, t2: Option, expected: &Option) -> Option { [INFO] [stdout] | ---------------- ---------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 28 | match (t1, t2) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/check_expressions.rs:107:37 [INFO] [stdout] | [INFO] [stdout] 107 | .map(|arg| (self.visit_expression(arg, &None), arg.span())) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/check_expressions.rs:268:81 [INFO] [stdout] | [INFO] [stdout] 268 | input.elements.iter().map(|element| self.visit_expression(element, &None)).collect::>(); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/check_expressions.rs:287:33 [INFO] [stdout] | [INFO] [stdout] 279 | let mut element_types = element_types.into_iter(); [INFO] [stdout] | ------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 280 | // Note that this unwrap is safe because we already checked that the array is not empty. [INFO] [stdout] 281 | element_types.next().unwrap().map(|first_type| { [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 287 | Type::Array(ArrayType::new(first_type, NonNegativeNumber::from(input.elements.len()))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_expression.rs:202:10 [INFO] [stdout] | [INFO] [stdout] 176 | fn consume_call(&mut self, input: CallExpression) -> Self::Output { [INFO] [stdout] | --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 177 | let mut statements = Vec::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 180 | let arguments = input [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 191 | let (place, statement) = self.unique_simple_assign_statement(Expression::Call(CallExpression { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 202 | (Expression::Identifier(place), statements) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/check_expressions.rs:646:14 [INFO] [stdout] | [INFO] [stdout] 642 | let expression_type = self.visit_expression(&input.expression, &None); [INFO] [stdout] | --------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 646 | Some(self.assert_and_return_type(input.type_.clone(), expected, input.span())) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/check_expressions.rs:702:14 [INFO] [stdout] | [INFO] [stdout] 695 | let var_: VariableSymbol; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 702 | Some(self.assert_and_return_type(var_.type_.clone(), expected, input.span())) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/check_expressions.rs:779:14 [INFO] [stdout] | [INFO] [stdout] 770 | let loc_: VariableSymbol; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 779 | Some(self.assert_and_return_type(loc_.type_.clone(), expected, input.span())) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_expression.rs:219:10 [INFO] [stdout] | [INFO] [stdout] 206 | fn consume_cast(&mut self, input: CastExpression) -> Self::Output { [INFO] [stdout] | --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 207 | // Reconstruct the expression being casted. [INFO] [stdout] 208 | let (expression, mut statements) = self.consume_expression(*input.expression); [INFO] [stdout] | ---------- ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 211 | let (place, statement) = self.unique_simple_assign_statement(Expression::Cast(CastExpression { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 219 | (Expression::Identifier(place), statements) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_expression.rs:293:10 [INFO] [stdout] | [INFO] [stdout] 223 | fn consume_struct_init(&mut self, input: StructExpression) -> Self::Output { [INFO] [stdout] | ----------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 224 | let mut statements = Vec::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 227 | let members: Vec = input [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 260 | let mut reordered_members = Vec::with_capacity(members.len()); [INFO] [stdout] | ----------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 263 | let mut member_map: IndexMap = [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 285 | let (place, statement) = self.unique_simple_assign_statement(Expression::Struct(StructExpression { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 293 | (Expression::Identifier(place), statements) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:129:27 [INFO] [stdout] | [INFO] [stdout] 122 | pub fn new(symbol_table: SymbolTable, type_table: &'a TypeTable, handler: &'a Handler) -> Self { [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 123 | // Initialize w/ only structs and non-external records. [INFO] [stdout] 124 | let struct_names = symbol_table.structs.keys().map(|loc| loc.name).collect(); [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 125 | let function_names = symbol_table.functions.keys().map(|loc| loc.name).collect(); [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 129 | symbol_table: RefCell::new(symbol_table), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_expression.rs:245:33 [INFO] [stdout] | [INFO] [stdout] 230 | .map(|arg| { [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 231 | let (expression, mut stmts) = match &arg.expression.is_some() { [INFO] [stdout] | ---------- ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 245 | expression: Some(expression), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:131:27 [INFO] [stdout] | [INFO] [stdout] 122 | pub fn new(symbol_table: SymbolTable, type_table: &'a TypeTable, handler: &'a Handler) -> Self { [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 123 | // Initialize w/ only structs and non-external records. [INFO] [stdout] 124 | let struct_names = symbol_table.structs.keys().map(|loc| loc.name).collect(); [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 125 | let function_names = symbol_table.functions.keys().map(|loc| loc.name).collect(); [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 131 | struct_graph: StructGraph::new(struct_names), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_expression.rs:319:10 [INFO] [stdout] | [INFO] [stdout] 316 | fn consume_literal(&mut self, input: Literal) -> Self::Output { [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 317 | // Construct and accumulate a new assignment statement for the literal. [INFO] [stdout] 318 | let (place, statement) = self.unique_simple_assign_statement(Expression::Literal(input)); [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 319 | (Expression::Identifier(place), vec![statement]) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:132:25 [INFO] [stdout] | [INFO] [stdout] 122 | pub fn new(symbol_table: SymbolTable, type_table: &'a TypeTable, handler: &'a Handler) -> Self { [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 123 | // Initialize w/ only structs and non-external records. [INFO] [stdout] 124 | let struct_names = symbol_table.structs.keys().map(|loc| loc.name).collect(); [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 125 | let function_names = symbol_table.functions.keys().map(|loc| loc.name).collect(); [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 132 | call_graph: CallGraph::new(function_names), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:142:27 [INFO] [stdout] | [INFO] [stdout] 122 | pub fn new(symbol_table: SymbolTable, type_table: &'a TypeTable, handler: &'a Handler) -> Self { [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 123 | // Initialize w/ only structs and non-external records. [INFO] [stdout] 124 | let struct_names = symbol_table.structs.keys().map(|loc| loc.name).collect(); [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 125 | let function_names = symbol_table.functions.keys().map(|loc| loc.name).collect(); [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 142 | used_structs: IndexSet::new(), [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_expression.rs:350:10 [INFO] [stdout] | [INFO] [stdout] 328 | fn consume_ternary(&mut self, input: TernaryExpression) -> Self::Output { [INFO] [stdout] | ------------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 329 | // Reconstruct the condition of the ternary expression. [INFO] [stdout] 330 | let (cond_expr, mut statements) = self.consume_expression(*input.condition); [INFO] [stdout] | --------- ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 331 | // Reconstruct the if-true case of the ternary expression. [INFO] [stdout] 332 | let (if_true_expr, mut if_true_statements) = self.consume_expression(*input.if_true); [INFO] [stdout] | ------------ ------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 333 | // Reconstruct the if-false case of the ternary expression. [INFO] [stdout] 334 | let (if_false_expr, mut if_false_statements) = self.consume_expression(*input.if_false); [INFO] [stdout] | ------------- ------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 341 | let (place, statement) = self.unique_simple_assign_statement(Expression::Ternary(TernaryExpression { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 350 | (Expression::Identifier(place), statements) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:216:40 [INFO] [stdout] | [INFO] [stdout] 216 | self.check_type(|type_: &Type| ADDRESS_TYPE.eq(type_), ADDRESS_TYPE.to_string(), type_, span) [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_expression.rs:376:10 [INFO] [stdout] | [INFO] [stdout] 354 | fn consume_tuple(&mut self, input: TupleExpression) -> Self::Output { [INFO] [stdout] | ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 355 | let mut statements = Vec::new(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 358 | let elements = input [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 369 | let (place, statement) = self.unique_simple_assign_statement(Expression::Tuple(TupleExpression { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 376 | (Expression::Identifier(place), statements) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:221:40 [INFO] [stdout] | [INFO] [stdout] 221 | self.check_type(|type_: &Type| BOOLEAN_TYPE.eq(type_), BOOLEAN_TYPE.to_string(), type_, span) [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:226:40 [INFO] [stdout] | [INFO] [stdout] 226 | self.check_type(|type_: &Type| FIELD_TYPE.eq(type_), FIELD_TYPE.to_string(), type_, span) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:231:40 [INFO] [stdout] | [INFO] [stdout] 231 | self.check_type(|type_: &Type| GROUP_TYPE.eq(type_), GROUP_TYPE.to_string(), type_, span) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_expression.rs:393:10 [INFO] [stdout] | [INFO] [stdout] 380 | fn consume_unary(&mut self, input: UnaryExpression) -> Self::Output { [INFO] [stdout] | ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 381 | // Reconstruct the operand of the unary expression. [INFO] [stdout] 382 | let (receiver, mut statements) = self.consume_expression(*input.receiver); [INFO] [stdout] | -------- ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 385 | let (place, statement) = self.unique_simple_assign_statement(Expression::Unary(UnaryExpression { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 393 | (Expression::Identifier(place), statements) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:236:40 [INFO] [stdout] | [INFO] [stdout] 236 | self.check_type(|type_: &Type| SCALAR_TYPE.eq(type_), SCALAR_TYPE.to_string(), type_, span) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:241:40 [INFO] [stdout] | [INFO] [stdout] 241 | self.check_type(|type_: &Type| SIGNATURE_TYPE.eq(type_), SIGNATURE_TYPE.to_string(), type_, span) [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_program.rs:136:22 [INFO] [stdout] | [INFO] [stdout] 132 | fn consume_program_scope(&mut self, input: ProgramScope) -> Self::Output { [INFO] [stdout] | ------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 136 | structs: input.structs.into_iter().map(|(i, s)| (i, self.consume_struct(s))).collect(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:246:40 [INFO] [stdout] | [INFO] [stdout] 246 | self.check_type(|type_: &Type| INT_TYPES.contains(type_), types_to_string(&INT_TYPES), type_, span) [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_program.rs:138:24 [INFO] [stdout] | [INFO] [stdout] 132 | fn consume_program_scope(&mut self, input: ProgramScope) -> Self::Output { [INFO] [stdout] | ------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 138 | functions: input.functions.into_iter().map(|(i, f)| (i, self.consume_function(f))).collect(), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:252:28 [INFO] [stdout] | [INFO] [stdout] 252 | |type_: &Type| SIGNED_INT_TYPES.contains(type_), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_program.rs:136:65 [INFO] [stdout] | [INFO] [stdout] 136 | structs: input.structs.into_iter().map(|(i, s)| (i, self.consume_struct(s))).collect(), [INFO] [stdout] | ------ ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:262:28 [INFO] [stdout] | [INFO] [stdout] 262 | |type_: &Type| UNSIGNED_INT_TYPES.contains(type_), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_program.rs:138:69 [INFO] [stdout] | [INFO] [stdout] 138 | functions: input.functions.into_iter().map(|(i, f)| (i, self.consume_function(f))).collect(), [INFO] [stdout] | ------ ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:271:40 [INFO] [stdout] | [INFO] [stdout] 271 | self.check_type(|type_: &Type| MAGNITUDE_TYPES.contains(type_), types_to_string(&MAGNITUDE_TYPES), type_, span) [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:277:28 [INFO] [stdout] | [INFO] [stdout] 277 | |type_: &Type| BOOLEAN_TYPE.eq(type_) | INT_TYPES.contains(type_), [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:277:53 [INFO] [stdout] | [INFO] [stdout] 277 | |type_: &Type| BOOLEAN_TYPE.eq(type_) | INT_TYPES.contains(type_), [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:287:28 [INFO] [stdout] | [INFO] [stdout] 287 | |type_: &Type| FIELD_TYPE.eq(type_) | INT_TYPES.contains(type_), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_program.rs:150:22 [INFO] [stdout] | [INFO] [stdout] 148 | fn consume_program(&mut self, input: Program) -> Self::Output { [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 149 | Program { [INFO] [stdout] 150 | imports: input [INFO] [stdout] | ______________________^ [INFO] [stdout] 151 | | .imports [INFO] [stdout] 152 | | .into_iter() [INFO] [stdout] 153 | | .map(|(name, (import, span))| (name, (self.consume_program(import), span))) [INFO] [stdout] 154 | | .collect(), [INFO] [stdout] | |__________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:287:51 [INFO] [stdout] | [INFO] [stdout] 287 | |type_: &Type| FIELD_TYPE.eq(type_) | INT_TYPES.contains(type_), [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:297:28 [INFO] [stdout] | [INFO] [stdout] 297 | |type_: &Type| FIELD_TYPE.eq(type_) | GROUP_TYPE.eq(type_), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_program.rs:156:29 [INFO] [stdout] | [INFO] [stdout] 148 | fn consume_program(&mut self, input: Program) -> Self::Output { [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 156 | program_scopes: input [INFO] [stdout] | _____________________________^ [INFO] [stdout] 157 | | .program_scopes [INFO] [stdout] 158 | | .into_iter() [INFO] [stdout] 159 | | .map(|(name, scope)| (name, self.consume_program_scope(scope))) [INFO] [stdout] 160 | | .collect(), [INFO] [stdout] | |__________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:297:51 [INFO] [stdout] | [INFO] [stdout] 297 | |type_: &Type| FIELD_TYPE.eq(type_) | GROUP_TYPE.eq(type_), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_program.rs:153:54 [INFO] [stdout] | [INFO] [stdout] 153 | .map(|(name, (import, span))| (name, (self.consume_program(import), span))) [INFO] [stdout] | ---------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:307:28 [INFO] [stdout] | [INFO] [stdout] 307 | |type_: &Type| FIELD_TYPE.eq(type_) | GROUP_TYPE.eq(type_) | INT_TYPES.contains(type_), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:307:51 [INFO] [stdout] | [INFO] [stdout] 307 | |type_: &Type| FIELD_TYPE.eq(type_) | GROUP_TYPE.eq(type_) | INT_TYPES.contains(type_), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:307:74 [INFO] [stdout] | [INFO] [stdout] 307 | |type_: &Type| FIELD_TYPE.eq(type_) | GROUP_TYPE.eq(type_) | INT_TYPES.contains(type_), [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:317:28 [INFO] [stdout] | [INFO] [stdout] 317 | |type_: &Type| FIELD_TYPE.eq(type_) | GROUP_TYPE.eq(type_) | SIGNED_INT_TYPES.contains(type_), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:317:51 [INFO] [stdout] | [INFO] [stdout] 317 | |type_: &Type| FIELD_TYPE.eq(type_) | GROUP_TYPE.eq(type_) | SIGNED_INT_TYPES.contains(type_), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:317:74 [INFO] [stdout] | [INFO] [stdout] 317 | |type_: &Type| FIELD_TYPE.eq(type_) | GROUP_TYPE.eq(type_) | SIGNED_INT_TYPES.contains(type_), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:327:28 [INFO] [stdout] | [INFO] [stdout] 327 | |type_: &Type| FIELD_TYPE.eq(type_) | SCALAR_TYPE.eq(type_) | INT_TYPES.contains(type_), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:327:51 [INFO] [stdout] | [INFO] [stdout] 327 | |type_: &Type| FIELD_TYPE.eq(type_) | SCALAR_TYPE.eq(type_) | INT_TYPES.contains(type_), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:327:75 [INFO] [stdout] | [INFO] [stdout] 327 | |type_: &Type| FIELD_TYPE.eq(type_) | SCALAR_TYPE.eq(type_) | INT_TYPES.contains(type_), [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_program.rs:159:45 [INFO] [stdout] | [INFO] [stdout] 159 | .map(|(name, scope)| (name, self.consume_program_scope(scope))) [INFO] [stdout] | ------------- ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_statement.rs:108:9 [INFO] [stdout] | [INFO] [stdout] 107 | fn consume_block(&mut self, block: Block) -> Self::Output { [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 108 | block.statements.into_iter().flat_map(|statement| self.consume_statement(statement)).collect() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_statement.rs:139:72 [INFO] [stdout] | [INFO] [stdout] 139 | let otherwise = conditional.otherwise.map(|otherwise| Box::new(Statement::Block(match *otherwise { [INFO] [stdout] | ____________________________________________________---------___________^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 140 | | Statement::Block(block) => Block { [INFO] [stdout] 141 | | span: block.span, [INFO] [stdout] 142 | | id: block.id, [INFO] [stdout] ... | [INFO] [stdout] 150 | | _ => unreachable!("Type checking guarantees that the otherwise-block of a conditional statement is a block or another conditi... [INFO] [stdout] 151 | | }))); [INFO] [stdout] | |__________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_statement.rs:360:33 [INFO] [stdout] | [INFO] [stdout] 357 | let arguments = process_arguments(associated_function.arguments); [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 360 | statements.push(Statement::Expression(ExpressionStatement { [INFO] [stdout] | _________________________________^ [INFO] [stdout] 361 | | expression: Expression::Access(AccessExpression::AssociatedFunction(AssociatedFunction { [INFO] [stdout] 362 | | variant: associated_function.variant, [INFO] [stdout] 363 | | name: associated_function.name, [INFO] [stdout] ... | [INFO] [stdout] 369 | | id: input.id, [INFO] [stdout] 370 | | })) [INFO] [stdout] | |__________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_statement.rs:327:13 [INFO] [stdout] | [INFO] [stdout] 326 | let mut process_arguments = |arguments: Vec| { [INFO] [stdout] | -------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 327 | / arguments [INFO] [stdout] 328 | | .into_iter() [INFO] [stdout] 329 | | .map(|argument| { [INFO] [stdout] 330 | | let (argument, mut stmts) = self.consume_expression(argument); [INFO] [stdout] 331 | | statements.append(&mut stmts); [INFO] [stdout] 332 | | argument [INFO] [stdout] 333 | | }) [INFO] [stdout] | |__________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/static_single_assignment/rename_statement.rs:393:13 [INFO] [stdout] | [INFO] [stdout] 392 | let finalize_args = input.finalize_arguments.map(|arguments| { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 393 | / arguments [INFO] [stdout] 394 | | .into_iter() [INFO] [stdout] 395 | | .map(|argument| { [INFO] [stdout] 396 | | let (argument, stmts) = self.consume_expression(argument); [INFO] [stdout] 397 | | statements.extend(stmts); [INFO] [stdout] 398 | | argument [INFO] [stdout] 399 | | }) [INFO] [stdout] | |__________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/mod.rs:43:12 [INFO] [stdout] | [INFO] [stdout] 35 | fn do_pass((ast, handler, st, tt): Self::Input) -> Self::Output { [INFO] [stdout] | ----------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 36 | let mut visitor = TypeChecker::new(st, tt, handler); [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 43 | Ok((visitor.symbol_table.take(), visitor.struct_graph, visitor.call_graph)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/check_expressions.rs:28:11 [INFO] [stdout] | [INFO] [stdout] 27 | fn return_incorrect_type(t1: Option, t2: Option, expected: &Option) -> Option { [INFO] [stdout] | ---------------- ---------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 28 | match (t1, t2) { [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/check_expressions.rs:107:37 [INFO] [stdout] | [INFO] [stdout] 107 | .map(|arg| (self.visit_expression(arg, &None), arg.span())) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/check_expressions.rs:268:81 [INFO] [stdout] | [INFO] [stdout] 268 | input.elements.iter().map(|element| self.visit_expression(element, &None)).collect::>(); [INFO] [stdout] | ^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/check_expressions.rs:287:33 [INFO] [stdout] | [INFO] [stdout] 279 | let mut element_types = element_types.into_iter(); [INFO] [stdout] | ------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 280 | // Note that this unwrap is safe because we already checked that the array is not empty. [INFO] [stdout] 281 | element_types.next().unwrap().map(|first_type| { [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 287 | Type::Array(ArrayType::new(first_type, NonNegativeNumber::from(input.elements.len()))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/check_expressions.rs:646:14 [INFO] [stdout] | [INFO] [stdout] 642 | let expression_type = self.visit_expression(&input.expression, &None); [INFO] [stdout] | --------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 646 | Some(self.assert_and_return_type(input.type_.clone(), expected, input.span())) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/check_expressions.rs:702:14 [INFO] [stdout] | [INFO] [stdout] 695 | let var_: VariableSymbol; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 702 | Some(self.assert_and_return_type(var_.type_.clone(), expected, input.span())) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/check_expressions.rs:779:14 [INFO] [stdout] | [INFO] [stdout] 770 | let loc_: VariableSymbol; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 779 | Some(self.assert_and_return_type(loc_.type_.clone(), expected, input.span())) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:129:27 [INFO] [stdout] | [INFO] [stdout] 122 | pub fn new(symbol_table: SymbolTable, type_table: &'a TypeTable, handler: &'a Handler) -> Self { [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 123 | // Initialize w/ only structs and non-external records. [INFO] [stdout] 124 | let struct_names = symbol_table.structs.keys().map(|loc| loc.name).collect(); [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 125 | let function_names = symbol_table.functions.keys().map(|loc| loc.name).collect(); [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 129 | symbol_table: RefCell::new(symbol_table), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:131:27 [INFO] [stdout] | [INFO] [stdout] 122 | pub fn new(symbol_table: SymbolTable, type_table: &'a TypeTable, handler: &'a Handler) -> Self { [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 123 | // Initialize w/ only structs and non-external records. [INFO] [stdout] 124 | let struct_names = symbol_table.structs.keys().map(|loc| loc.name).collect(); [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 125 | let function_names = symbol_table.functions.keys().map(|loc| loc.name).collect(); [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 131 | struct_graph: StructGraph::new(struct_names), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:132:25 [INFO] [stdout] | [INFO] [stdout] 122 | pub fn new(symbol_table: SymbolTable, type_table: &'a TypeTable, handler: &'a Handler) -> Self { [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 123 | // Initialize w/ only structs and non-external records. [INFO] [stdout] 124 | let struct_names = symbol_table.structs.keys().map(|loc| loc.name).collect(); [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 125 | let function_names = symbol_table.functions.keys().map(|loc| loc.name).collect(); [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 132 | call_graph: CallGraph::new(function_names), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:142:27 [INFO] [stdout] | [INFO] [stdout] 122 | pub fn new(symbol_table: SymbolTable, type_table: &'a TypeTable, handler: &'a Handler) -> Self { [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 123 | // Initialize w/ only structs and non-external records. [INFO] [stdout] 124 | let struct_names = symbol_table.structs.keys().map(|loc| loc.name).collect(); [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 125 | let function_names = symbol_table.functions.keys().map(|loc| loc.name).collect(); [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 142 | used_structs: IndexSet::new(), [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:216:40 [INFO] [stdout] | [INFO] [stdout] 216 | self.check_type(|type_: &Type| ADDRESS_TYPE.eq(type_), ADDRESS_TYPE.to_string(), type_, span) [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:221:40 [INFO] [stdout] | [INFO] [stdout] 221 | self.check_type(|type_: &Type| BOOLEAN_TYPE.eq(type_), BOOLEAN_TYPE.to_string(), type_, span) [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:226:40 [INFO] [stdout] | [INFO] [stdout] 226 | self.check_type(|type_: &Type| FIELD_TYPE.eq(type_), FIELD_TYPE.to_string(), type_, span) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:231:40 [INFO] [stdout] | [INFO] [stdout] 231 | self.check_type(|type_: &Type| GROUP_TYPE.eq(type_), GROUP_TYPE.to_string(), type_, span) [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:236:40 [INFO] [stdout] | [INFO] [stdout] 236 | self.check_type(|type_: &Type| SCALAR_TYPE.eq(type_), SCALAR_TYPE.to_string(), type_, span) [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:241:40 [INFO] [stdout] | [INFO] [stdout] 241 | self.check_type(|type_: &Type| SIGNATURE_TYPE.eq(type_), SIGNATURE_TYPE.to_string(), type_, span) [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:246:40 [INFO] [stdout] | [INFO] [stdout] 246 | self.check_type(|type_: &Type| INT_TYPES.contains(type_), types_to_string(&INT_TYPES), type_, span) [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:252:28 [INFO] [stdout] | [INFO] [stdout] 252 | |type_: &Type| SIGNED_INT_TYPES.contains(type_), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:262:28 [INFO] [stdout] | [INFO] [stdout] 262 | |type_: &Type| UNSIGNED_INT_TYPES.contains(type_), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:271:40 [INFO] [stdout] | [INFO] [stdout] 271 | self.check_type(|type_: &Type| MAGNITUDE_TYPES.contains(type_), types_to_string(&MAGNITUDE_TYPES), type_, span) [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:277:28 [INFO] [stdout] | [INFO] [stdout] 277 | |type_: &Type| BOOLEAN_TYPE.eq(type_) | INT_TYPES.contains(type_), [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:277:53 [INFO] [stdout] | [INFO] [stdout] 277 | |type_: &Type| BOOLEAN_TYPE.eq(type_) | INT_TYPES.contains(type_), [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:287:28 [INFO] [stdout] | [INFO] [stdout] 287 | |type_: &Type| FIELD_TYPE.eq(type_) | INT_TYPES.contains(type_), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:287:51 [INFO] [stdout] | [INFO] [stdout] 287 | |type_: &Type| FIELD_TYPE.eq(type_) | INT_TYPES.contains(type_), [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:297:28 [INFO] [stdout] | [INFO] [stdout] 297 | |type_: &Type| FIELD_TYPE.eq(type_) | GROUP_TYPE.eq(type_), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:297:51 [INFO] [stdout] | [INFO] [stdout] 297 | |type_: &Type| FIELD_TYPE.eq(type_) | GROUP_TYPE.eq(type_), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:307:28 [INFO] [stdout] | [INFO] [stdout] 307 | |type_: &Type| FIELD_TYPE.eq(type_) | GROUP_TYPE.eq(type_) | INT_TYPES.contains(type_), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:307:51 [INFO] [stdout] | [INFO] [stdout] 307 | |type_: &Type| FIELD_TYPE.eq(type_) | GROUP_TYPE.eq(type_) | INT_TYPES.contains(type_), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:307:74 [INFO] [stdout] | [INFO] [stdout] 307 | |type_: &Type| FIELD_TYPE.eq(type_) | GROUP_TYPE.eq(type_) | INT_TYPES.contains(type_), [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:317:28 [INFO] [stdout] | [INFO] [stdout] 317 | |type_: &Type| FIELD_TYPE.eq(type_) | GROUP_TYPE.eq(type_) | SIGNED_INT_TYPES.contains(type_), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:317:51 [INFO] [stdout] | [INFO] [stdout] 317 | |type_: &Type| FIELD_TYPE.eq(type_) | GROUP_TYPE.eq(type_) | SIGNED_INT_TYPES.contains(type_), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:317:74 [INFO] [stdout] | [INFO] [stdout] 317 | |type_: &Type| FIELD_TYPE.eq(type_) | GROUP_TYPE.eq(type_) | SIGNED_INT_TYPES.contains(type_), [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:327:28 [INFO] [stdout] | [INFO] [stdout] 327 | |type_: &Type| FIELD_TYPE.eq(type_) | SCALAR_TYPE.eq(type_) | INT_TYPES.contains(type_), [INFO] [stdout] | ^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:327:51 [INFO] [stdout] | [INFO] [stdout] 327 | |type_: &Type| FIELD_TYPE.eq(type_) | SCALAR_TYPE.eq(type_) | INT_TYPES.contains(type_), [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/type_checking/checker.rs:327:75 [INFO] [stdout] | [INFO] [stdout] 327 | |type_: &Type| FIELD_TYPE.eq(type_) | SCALAR_TYPE.eq(type_) | INT_TYPES.contains(type_), [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 139 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `leo-passes` (lib test) due to 140 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: aborting due to 139 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `leo-passes` (lib) due to 140 previous errors [INFO] running `Command { std: "docker" "inspect" "e2951626e1a37af46fbe9f1e580d6e7dc35e335e1c0062220a53350fe5f48b1a", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e2951626e1a37af46fbe9f1e580d6e7dc35e335e1c0062220a53350fe5f48b1a", kill_on_drop: false }` [INFO] [stdout] e2951626e1a37af46fbe9f1e580d6e7dc35e335e1c0062220a53350fe5f48b1a