[INFO] cloning repository https://github.com/PhilippRados/rucc [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/PhilippRados/rucc" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FPhilippRados%2Frucc", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FPhilippRados%2Frucc'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 0218ae3608e94591ecabb96baaa952faf923b4d7 [INFO] checking PhilippRados/rucc/0218ae3608e94591ecabb96baaa952faf923b4d7 against try#4d98531622e1718ae0bc3c7a1ab9cd8938428452+rustflags=-Dtail_expr_drop_order for pr-129604 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FPhilippRados%2Frucc" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/PhilippRados/rucc 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 git repo https://github.com/PhilippRados/rucc [INFO] finished tweaking git repo https://github.com/PhilippRados/rucc [INFO] tweaked toml for git repo https://github.com/PhilippRados/rucc written to /workspace/builds/worker-3-tc2/source/Cargo.toml [INFO] crate git repo https://github.com/PhilippRados/rucc already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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] b8aee93574b8d4167e1d6b2e4e9f07aec9598f420c3c8935df6abe92a5264f20 [INFO] running `Command { std: "docker" "start" "-a" "b8aee93574b8d4167e1d6b2e4e9f07aec9598f420c3c8935df6abe92a5264f20", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "b8aee93574b8d4167e1d6b2e4e9f07aec9598f420c3c8935df6abe92a5264f20", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "b8aee93574b8d4167e1d6b2e4e9f07aec9598f420c3c8935df6abe92a5264f20", kill_on_drop: false }` [INFO] [stdout] b8aee93574b8d4167e1d6b2e4e9f07aec9598f420c3c8935df6abe92a5264f20 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-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] 05c779303c1d1467c02e2859fcd8436cd908e618aa24530c765c6ecec938d921 [INFO] running `Command { std: "docker" "start" "-a" "05c779303c1d1467c02e2859fcd8436cd908e618aa24530c765c6ecec938d921", kill_on_drop: false }` [INFO] [stderr] Checking wrecc_compiler v0.2.0 (/opt/rustwide/workdir/wrecc_compiler) [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> wrecc_compiler/src/compiler/codegen/register.rs:249:18 [INFO] [stdout] | [INFO] [stdout] 244 | pub fn new(ty: Type, key_counter: &mut usize, instr_counter: usize) -> Self { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 249 | reg: None, [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] --> wrecc_compiler/src/compiler/codegen/register.rs:257:17 [INFO] [stdout] | [INFO] [stdout] 255 | pub fn default(reg: Box) -> Self { [INFO] [stdout] | ----------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 256 | TempRegister { [INFO] [stdout] 257 | ty: Type::Primitive(Primitive::Int(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] --> wrecc_compiler/src/compiler/codegen/register.rs:259:18 [INFO] [stdout] | [INFO] [stdout] 255 | pub fn default(reg: Box) -> Self { [INFO] [stdout] | ----------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 259 | reg: Some(TempKind::Scratch(reg)), [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] --> wrecc_compiler/src/compiler/codegen/register_allocation.rs:20:55 [INFO] [stdout] | [INFO] [stdout] 19 | pub fn new(start: usize, end: usize, arg: Option, ty: Type) -> Self { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 20 | IntervalEntry { start, end, arg, ty, scratch: None } [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] --> wrecc_compiler/src/compiler/codegen/register_allocation.rs:48:25 [INFO] [stdout] | [INFO] [stdout] 45 | pub fn new(live_intervals: HashMap) -> Self { [INFO] [stdout] | --------------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 48 | saved_regs: 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] --> wrecc_compiler/src/compiler/codegen/register_allocation.rs:52:24 [INFO] [stdout] | [INFO] [stdout] 45 | pub fn new(live_intervals: HashMap) -> Self { [INFO] [stdout] | --------------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 52 | registers: ScratchRegisters::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] --> wrecc_compiler/src/compiler/common/environment.rs:227:12 [INFO] [stdout] | [INFO] [stdout] 222 | pub fn declare_symbol(&mut self, var_name: &Token, symbol: Symbol) -> Result { [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 227 | Ok(self.symbols.declare(var_name.unwrap_string(), symbol)) [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] --> wrecc_compiler/src/compiler/common/environment.rs:241:12 [INFO] [stdout] | [INFO] [stdout] 231 | pub fn declare_global(&mut self, var_name: &Token, symbol: Symbol) -> Result { [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 238 | let func = Rc::new(RefCell::new(symbol)); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 241 | Ok(Rc::clone(&func)) [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] --> wrecc_compiler/src/compiler/common/environment.rs:378:49 [INFO] [stdout] | [INFO] [stdout] 378 | .ok_or_else(|| Error::new(var_name, ErrorKind::UndeclaredSymbol(var_name.unwrap_string()))) [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] --> wrecc_compiler/src/compiler/common/environment.rs:383:49 [INFO] [stdout] | [INFO] [stdout] 383 | .ok_or_else(|| Error::new(var_name, ErrorKind::UndeclaredType(var_name.unwrap_string()))) [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] --> wrecc_compiler/src/compiler/common/error.rs:539:19 [INFO] [stdout] | [INFO] [stdout] 533 | pub fn new_multiple(errors: Vec) -> Self { [INFO] [stdout] | ------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 539 | kind: ErrorKind::Multiple(errors), [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] --> wrecc_compiler/src/compiler/common/types.rs:133:17 [INFO] [stdout] | [INFO] [stdout] 130 | pub fn pointer_to(self) -> QualType { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 133 | ty: Type::Pointer(Box::new(self.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] --> wrecc_compiler/src/compiler/common/types.rs:138:23 [INFO] [stdout] | [INFO] [stdout] 136 | pub fn function_of(self, params: Vec, variadic: bool) -> QualType { [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] 137 | // functions cannot have qualifiers since they only describe the return type [INFO] [stdout] 138 | QualType::new(Type::Function(FuncType { [INFO] [stdout] | _______________________^ [INFO] [stdout] 139 | | return_type: Box::new(self), [INFO] [stdout] 140 | | params, [INFO] [stdout] 141 | | variadic, [INFO] [stdout] 142 | | })) [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] --> wrecc_compiler/src/compiler/common/types.rs:352:33 [INFO] [stdout] | [INFO] [stdout] 352 | .all(|(p1, p2)| p1.unqualified() == p2.unqualified()) [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] --> wrecc_compiler/src/compiler/common/types.rs:352:53 [INFO] [stdout] | [INFO] [stdout] 352 | .all(|(p1, p2)| p1.unqualified() == p2.unqualified()) [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] --> wrecc_compiler/src/compiler/common/types.rs:685:33 [INFO] [stdout] | [INFO] [stdout] 685 | CUSTOMS.with(|list| list.borrow()[self.index].members.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] --> wrecc_compiler/src/compiler/common/types.rs:703:33 [INFO] [stdout] | [INFO] [stdout] 703 | CUSTOMS.with(|list| list.borrow()[self.index].is_complete) [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] --> wrecc_compiler/src/compiler/common/types.rs:706:33 [INFO] [stdout] | [INFO] [stdout] 706 | CUSTOMS.with(|list| list.borrow()[self.index].in_definition) [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] --> wrecc_compiler/src/compiler/parser/mod.rs:232:12 [INFO] [stdout] | [INFO] [stdout] 222 | let mut modifiers = Vec::new(); [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 225 | let (name, preceding_modifiers) = self.direct_declarator(kind)?; [INFO] [stdout] | ------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 232 | Ok(Declarator { name, modifiers }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:283:12 [INFO] [stdout] | [INFO] [stdout] 283 | Ok((name, None)) [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:317:12 [INFO] [stdout] | [INFO] [stdout] 306 | let size = if let TokenKind::RightBracket = self.tokens.peek("array-declaration")?.kind { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 317 | Ok(DeclModifier::Array(token, size)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:354:12 [INFO] [stdout] | [INFO] [stdout] 326 | let mut params = Vec::new(); [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 354 | Ok(DeclModifier::Function { token, params, variadic }) [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] --> wrecc_compiler/src/compiler/parser/mod.rs:364:12 [INFO] [stdout] | [INFO] [stdout] 361 | let decl_specs = self.declaration_specifiers(true)?; [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 362 | let declarator = self.declarator(DeclaratorKind::MaybeAbstract)?; [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 363 | [INFO] [stdout] 364 | Ok(ParamDecl { decl_specs, declarator }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:372:12 [INFO] [stdout] | [INFO] [stdout] 369 | let DeclSpecs { specifiers, qualifiers, .. } = self.declaration_specifiers(false)?; [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 370 | let Declarator { modifiers, .. } = self.declarator(DeclaratorKind::Abstract)?; [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 371 | [INFO] [stdout] 372 | Ok(DeclType { specifiers, qualifiers, modifiers }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:384:12 [INFO] [stdout] | [INFO] [stdout] 377 | decl_specs: DeclSpecs, [INFO] [stdout] | --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 378 | declarator: Declarator, [INFO] [stdout] | ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 382 | let body = self.block()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 383 | [INFO] [stdout] 384 | Ok(ExternalDeclaration::Function( [INFO] [stdout] | ____________^ [INFO] [stdout] 385 | | FuncDecl { [INFO] [stdout] 386 | | decl_specs, [INFO] [stdout] 387 | | name: declarator.name.expect("external-decls cannot be abstract"), [INFO] [stdout] ... | [INFO] [stdout] 390 | | body, [INFO] [stdout] 391 | | )) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:412:12 [INFO] [stdout] | [INFO] [stdout] 396 | decl_specs: DeclSpecs, [INFO] [stdout] | --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 397 | declarator: Declarator, [INFO] [stdout] | ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 398 | ) -> Result { [INFO] [stdout] 399 | let mut declarators = Vec::new(); [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 400 | let init = self.init_declarator(&decl_specs.storage_classes, &declarator)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 412 | Ok(ExternalDeclaration::Declaration(Declaration { [INFO] [stdout] | ____________^ [INFO] [stdout] 413 | | decl_specs, [INFO] [stdout] 414 | | declarators, [INFO] [stdout] 415 | | })) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |__________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:685:12 [INFO] [stdout] | [INFO] [stdout] 679 | let members = if match_next!(self, TokenKind::LeftBrace).is_some() { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 685 | Ok(match token.kind { [INFO] [stdout] | ____________^ [INFO] [stdout] 686 | | TokenKind::Struct => SpecifierKind::Struct(name, members), [INFO] [stdout] 687 | | TokenKind::Union => SpecifierKind::Union(name, members), [INFO] [stdout] 688 | | _ => unreachable!("not struct/union specifier"), [INFO] [stdout] 689 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:704:12 [INFO] [stdout] | [INFO] [stdout] 698 | let members = if match_next!(self, TokenKind::LeftBrace).is_some() { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 704 | Ok(SpecifierKind::Enum(name, members)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:755:12 [INFO] [stdout] | [INFO] [stdout] 755 | Ok(Stmt::Goto(ident)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:760:12 [INFO] [stdout] | [INFO] [stdout] 758 | let body = self.statement()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 759 | [INFO] [stdout] 760 | Ok(Stmt::Label(token, Box::new(body))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:770:12 [INFO] [stdout] | [INFO] [stdout] 764 | let cond = self.expression()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 768 | let body = self.statement()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 769 | [INFO] [stdout] 770 | Ok(Stmt::Switch(token, cond, Box::new(body))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:779:12 [INFO] [stdout] | [INFO] [stdout] 773 | let value = self.assignment()?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 777 | let body = self.statement()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 778 | [INFO] [stdout] 779 | Ok(Stmt::Case(token, value, Box::new(body))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:786:12 [INFO] [stdout] | [INFO] [stdout] 784 | let body = self.statement()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 785 | [INFO] [stdout] 786 | Ok(Stmt::Default(token, Box::new(body))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:811:12 [INFO] [stdout] | [INFO] [stdout] 789 | let body = self.statement()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 798 | let cond = self.expression()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 811 | Ok(Stmt::Do(keyword, Box::new(body), cond)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:832:12 [INFO] [stdout] | [INFO] [stdout] 826 | let value = match check!(self, TokenKind::Semicolon) { [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 832 | Ok(Stmt::Return(keyword, value)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:872:12 [INFO] [stdout] | [INFO] [stdout] 839 | let init = match self.is_specifier(self.tokens.peek("expected type-specifier")?) { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 856 | let cond = match check!(self, TokenKind::Semicolon) { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 862 | let inc = match check!(self, TokenKind::RightParen) { [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 868 | let body = Box::new(self.statement()?); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 872 | Ok(Stmt::For(left_paren, init, cond, inc, body)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:885:12 [INFO] [stdout] | [INFO] [stdout] 876 | let cond = self.expression()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 883 | let body = self.statement()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 884 | [INFO] [stdout] 885 | Ok(Stmt::While(left_paren, cond, Box::new(body))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:938:12 [INFO] [stdout] | [INFO] [stdout] 936 | let expr = self.expression()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 937 | consume!(self, TokenKind::Semicolon, "expected ';' after expression")?; [INFO] [stdout] 938 | Ok(Stmt::Expr(expr)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:955:12 [INFO] [stdout] | [INFO] [stdout] 942 | let condition = self.expression()?; [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 949 | let then_branch = self.statement()?; [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 950 | let else_branch = if match_next!(self, TokenKind::Else).is_some() { [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 955 | Ok(Stmt::If(keyword, condition, Box::new(then_branch), else_branch)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:1241:12 [INFO] [stdout] | [INFO] [stdout] 1233 | fn typecast(&mut self, token: Token, decl_type: DeclType) -> Result { [INFO] [stdout] | ------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1239 | let expr = self.unary()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1240 | [INFO] [stdout] 1241 | Ok(ExprKind::Cast { token, decl_type, expr: Box::new(expr) }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:1306:12 [INFO] [stdout] | [INFO] [stdout] 1295 | fn call(&mut self, left_paren: Token, caller: ExprKind) -> Result { [INFO] [stdout] | ---------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1296 | let mut args = Vec::new(); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1306 | Ok(ExprKind::Call { [INFO] [stdout] | ____________^ [INFO] [stdout] 1307 | | left_paren, [INFO] [stdout] 1308 | | caller: Box::new(caller), [INFO] [stdout] 1309 | | args, [INFO] [stdout] 1310 | | }) [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] --> wrecc_compiler/src/compiler/parser/mod.rs:1335:13 [INFO] [stdout] | [INFO] [stdout] 1335 | Err(Error::new( [INFO] [stdout] | _____________^ [INFO] [stdout] 1336 | | token, [INFO] [stdout] 1337 | | ErrorKind::ExpectedExpression(token.kind.clone()), [INFO] [stdout] 1338 | | )) [INFO] [stdout] | | ^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________| [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] --> wrecc_compiler/src/compiler/parser/mod.rs:1387:15 [INFO] [stdout] | [INFO] [stdout] 1383 | fn arrow_sugar(left: ExprKind, member: Token, arrow_token: Token) -> ExprKind { [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1387 | expr: Box::new(ExprKind::Unary { [INFO] [stdout] | _______________^ [INFO] [stdout] 1388 | | token: Token { kind: TokenKind::Star, ..member }, [INFO] [stdout] 1389 | | right: Box::new(left), [INFO] [stdout] 1390 | | }), [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] --> wrecc_compiler/src/compiler/parser/mod.rs:1398:16 [INFO] [stdout] | [INFO] [stdout] 1395 | pub fn index_sugar(token: Token, expr: ExprKind, index: ExprKind) -> ExprKind { [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] 1398 | right: Box::new(ExprKind::Binary { [INFO] [stdout] | ________________^ [INFO] [stdout] 1399 | | left: Box::new(expr), [INFO] [stdout] 1400 | | token: Token { kind: TokenKind::Plus, ..token }, [INFO] [stdout] 1401 | | right: Box::new(index), [INFO] [stdout] 1402 | | }), [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] --> wrecc_compiler/src/compiler/parser/double_peek.rs:14:18 [INFO] [stdout] | [INFO] [stdout] 12 | pub fn new(list: Vec) -> Self { [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 13 | DoublePeek { [INFO] [stdout] 14 | eof: list.last().cloned(), [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] --> wrecc_compiler/src/compiler/parser/double_peek.rs:15:20 [INFO] [stdout] | [INFO] [stdout] 12 | pub fn new(list: Vec) -> Self { [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 15 | inner: list.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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:48:15 [INFO] [stdout] | [INFO] [stdout] 45 | mut self, [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 46 | external_decls: Vec, [INFO] [stdout] | --------------------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 47 | ) -> Result<(Vec, ConstLabels), Vec> { [INFO] [stdout] 48 | match self.check_declarations(external_decls) { [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:350:12 [INFO] [stdout] | [INFO] [stdout] 258 | fn parse_specifiers(&mut self, specifiers: Vec) -> Result { [INFO] [stdout] | ------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 259 | let ty = if specifiers.is_empty() { [INFO] [stdout] | -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 266 | let mut specifier_kind_list: Vec = [INFO] [stdout] | ------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 350 | Ok(QualType::new(ty)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:396:12 [INFO] [stdout] | [INFO] [stdout] 353 | mut qtype: QualType, [INFO] [stdout] | ------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 396 | Ok(QualType { [INFO] [stdout] | ____________^ [INFO] [stdout] 397 | | qualifiers: Qualifiers { [INFO] [stdout] 398 | | is_const: new_qualifiers.is_const | qtype.qualifiers.is_const, [INFO] [stdout] 399 | | is_restrict: new_qualifiers.is_restrict | qtype.qualifiers.is_restrict, [INFO] [stdout] ... | [INFO] [stdout] 402 | | ..qtype [INFO] [stdout] 403 | | }) [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:440:63 [INFO] [stdout] | [INFO] [stdout] 440 | ... .ok_or_else(|| Error::new(&token, ErrorKind::ArraySizeOverflow))?; [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:526:12 [INFO] [stdout] | [INFO] [stdout] 484 | let members = match (&name, members) { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 490 | let members = self.struct_declaration(members.clone())?; [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 518 | let members = self.struct_declaration(members.clone())?; [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 526 | Ok(match token.kind { [INFO] [stdout] | ____________^ [INFO] [stdout] 527 | | TokenKind::Struct => Type::Struct(members), [INFO] [stdout] 528 | | TokenKind::Union => Type::Union(members), [INFO] [stdout] 529 | | _ => unreachable!("not struct/union specifier"), [INFO] [stdout] 530 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:594:51 [INFO] [stdout] | [INFO] [stdout] 594 | .map_err(|_| Error::new(name, ErrorKind::EnumForwardDecl))?; [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:793:12 [INFO] [stdout] | [INFO] [stdout] 770 | expr: hir::expr::ExprKind, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 777 | let expr = self.visit_expr(func, expr)?.decay(token)?.to_rval(); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 778 | Self::check_type_compatibility(token, qtype, &expr)?; [INFO] [stdout] 779 | let expr = Self::maybe_cast(qtype.clone(), expr); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 793 | Ok(mir::decl::Init::Scalar(expr)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:942:15 [INFO] [stdout] | [INFO] [stdout] 940 | designator: hir::decl::Designator, [INFO] [stdout] | --------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 941 | ) -> Result<(i64, i64, QualType), Error> { [INFO] [stdout] 942 | match (designator.kind, &qtype.ty) { [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:949:66 [INFO] [stdout] | [INFO] [stdout] 949 | .ok_or_else(|| Error::new(&designator.token, ErrorKind::ArraySizeOverflow))?; [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1256:12 [INFO] [stdout] | [INFO] [stdout] 1251 | body: hir::stmt::Stmt, [INFO] [stdout] | --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1254 | let body = self.visit_stmt(func, body)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1255 | [INFO] [stdout] 1256 | Ok(mir::stmt::Stmt::Label(name_token.unwrap_string(), Box::new(body))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1281:12 [INFO] [stdout] | [INFO] [stdout] 1262 | cond: hir::expr::ExprKind, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1263 | body: hir::stmt::Stmt, [INFO] [stdout] | --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1264 | ) -> Result { [INFO] [stdout] 1265 | let cond = self.visit_expr(&mut Some(func), cond)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1277 | let stmt = self.visit_stmt(func, body); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1281 | Ok(mir::stmt::Stmt::Switch(cond, Box::new(stmt?))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1318:12 [INFO] [stdout] | [INFO] [stdout] 1287 | expr: hir::expr::ExprKind, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1288 | body: hir::stmt::Stmt, [INFO] [stdout] | --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1289 | ) -> Result { [INFO] [stdout] 1290 | let mut expr = self.visit_expr(&mut Some(func), expr)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1316 | let body = self.visit_stmt(func, body)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1317 | [INFO] [stdout] 1318 | Ok(mir::stmt::Stmt::Case(Box::new(body))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1337:12 [INFO] [stdout] | [INFO] [stdout] 1324 | body: hir::stmt::Stmt, [INFO] [stdout] | --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1335 | let body = self.visit_stmt(func, body)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1336 | [INFO] [stdout] 1337 | Ok(mir::stmt::Stmt::Default(Box::new(body))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1360:12 [INFO] [stdout] | [INFO] [stdout] 1343 | body: hir::stmt::Stmt, [INFO] [stdout] | --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1344 | cond: hir::expr::ExprKind, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1347 | let body = self.visit_stmt(func, body)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1350 | let cond = self.visit_expr(&mut Some(func), cond)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1360 | Ok(mir::stmt::Stmt::Do(Box::new(body), cond)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1417:12 [INFO] [stdout] | [INFO] [stdout] 1366 | init: Option>, [INFO] [stdout] | ---------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1367 | cond: Option, [INFO] [stdout] | --------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1368 | inc: Option, [INFO] [stdout] | -------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1369 | body: hir::stmt::Stmt, [INFO] [stdout] | --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1373 | let init = match init.map(|stmt| *stmt) { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1374 | Some(hir::stmt::Stmt::Declaration(decl)) => { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1390 | Some(stmt) => Some(self.visit_stmt(func, stmt)?), [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1394 | let cond = if let Some(cond) = cond { [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] 1395 | let cond = self.visit_expr(&mut Some(func), cond)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1408 | let body = self.visit_stmt(func, body)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1409 | [INFO] [stdout] 1410 | let inc = inc.map(|inc| self.visit_expr(&mut Some(func), inc)).transpose()?; [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1417 | Ok(mir::stmt::Stmt::For( [INFO] [stdout] | ____________^ [INFO] [stdout] 1418 | | init.map(Box::new), [INFO] [stdout] 1419 | | cond, [INFO] [stdout] 1420 | | inc, [INFO] [stdout] 1421 | | Box::new(body), [INFO] [stdout] 1422 | | )) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1471:12 [INFO] [stdout] | [INFO] [stdout] 1454 | cond: hir::expr::ExprKind, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1455 | body: hir::stmt::Stmt, [INFO] [stdout] | --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1456 | ) -> Result { [INFO] [stdout] 1457 | let cond = self.visit_expr(&mut Some(func), cond)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1466 | let body = self.visit_stmt(func, body)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1471 | Ok(mir::stmt::Stmt::While(cond, Box::new(body))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1506:12 [INFO] [stdout] | [INFO] [stdout] 1478 | cond: hir::expr::ExprKind, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1479 | then_branch: hir::stmt::Stmt, [INFO] [stdout] | ---------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1480 | else_branch: Option>, [INFO] [stdout] | ----------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1481 | ) -> Result { [INFO] [stdout] 1482 | let cond = self.visit_expr(&mut Some(func), cond)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1490 | let then_branch = self.visit_stmt(func, then_branch)?; [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1494 | let else_branch = else_branch [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1506 | Ok(mir::stmt::Stmt::If( [INFO] [stdout] | ____________^ [INFO] [stdout] 1507 | | cond, [INFO] [stdout] 1508 | | Box::new(then_branch), [INFO] [stdout] 1509 | | else_branch.map(Box::new), [INFO] [stdout] 1510 | | )) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1552:12 [INFO] [stdout] | [INFO] [stdout] 1517 | expr: Option, [INFO] [stdout] | --------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1521 | let expr = if let Some(expr) = expr { [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] 1522 | let expr = self.visit_expr(&mut Some(func), expr)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1523 | [INFO] [stdout] 1524 | let expr = expr.decay(&keyword)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1531 | let expr = Self::maybe_cast(func.return_type.clone(), expr); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1535 | let return_type = QualType::new(Type::Primitive(Primitive::Void)); [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1536 | let return_expr = mir::expr::Expr { [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1552 | Ok(mir::stmt::Stmt::Return(expr)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1674:12 [INFO] [stdout] | [INFO] [stdout] 1661 | expr: hir::expr::ExprKind, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1662 | decl_type: hir::decl::DeclType, [INFO] [stdout] | ------------------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1663 | ) -> Result { [INFO] [stdout] 1664 | let expr = self.visit_expr(func, expr)?.decay(&token)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1665 | let new_type = self.parse_type(&token, decl_type)?; [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1674 | Ok(Self::always_cast(expr, new_type).to_rval()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1699:12 [INFO] [stdout] | [INFO] [stdout] 1695 | decl_type: hir::decl::DeclType, [INFO] [stdout] | ------------------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1696 | ) -> Result { [INFO] [stdout] 1697 | let qtype = self.parse_type(&token, decl_type)?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1698 | [INFO] [stdout] 1699 | Ok(mir::expr::Expr { [INFO] [stdout] | ____________^ [INFO] [stdout] 1700 | | kind: mir::expr::ExprKind::Literal(LiteralKind::Unsigned(qtype.ty.size() as u64)), [INFO] [stdout] 1701 | | qtype: QualType::new(Type::Primitive(Primitive::Long(true))), [INFO] [stdout] 1702 | | value_kind: ValueKind::Rvalue, [INFO] [stdout] 1703 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1718:12 [INFO] [stdout] | [INFO] [stdout] 1710 | expr: hir::expr::ExprKind, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1711 | ) -> Result { [INFO] [stdout] 1712 | let expr = self.visit_expr(func, expr)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1718 | Ok(mir::expr::Expr { [INFO] [stdout] | ____________^ [INFO] [stdout] 1719 | | kind: mir::expr::ExprKind::Literal(LiteralKind::Unsigned(expr.qtype.ty.size() as u64)), [INFO] [stdout] 1720 | | qtype: QualType::new(Type::Primitive(Primitive::Long(true))), [INFO] [stdout] 1721 | | value_kind: ValueKind::Rvalue, [INFO] [stdout] 1722 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1733:12 [INFO] [stdout] | [INFO] [stdout] 1727 | left: hir::expr::ExprKind, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1728 | right: hir::expr::ExprKind, [INFO] [stdout] | -------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1729 | ) -> Result { [INFO] [stdout] 1730 | let left = self.visit_expr(func, left)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1731 | let right = self.visit_expr(func, right)?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1732 | [INFO] [stdout] 1733 | Ok(mir::expr::Expr { [INFO] [stdout] | ____________^ [INFO] [stdout] 1734 | | value_kind: ValueKind::Rvalue, [INFO] [stdout] 1735 | | qtype: right.qtype.clone(), [INFO] [stdout] 1736 | | kind: mir::expr::ExprKind::Comma { [INFO] [stdout] ... | [INFO] [stdout] 1739 | | }, [INFO] [stdout] 1740 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1774:12 [INFO] [stdout] | [INFO] [stdout] 1746 | cond: hir::expr::ExprKind, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1747 | true_expr: hir::expr::ExprKind, [INFO] [stdout] | ------------------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1748 | false_expr: hir::expr::ExprKind, [INFO] [stdout] | ------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1749 | ) -> Result { [INFO] [stdout] 1750 | let cond = self.visit_expr(func, cond)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1757 | let true_expr = self.visit_expr(func, true_expr)?; [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1758 | let false_expr = self.visit_expr(func, false_expr)?; [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1769 | let true_expr = true_expr.maybe_int_promote(); [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1770 | let false_expr = false_expr.maybe_int_promote(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1771 | [INFO] [stdout] 1772 | let (true_expr, false_expr) = Self::scalar_conversion(true_expr, false_expr); [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] 1773 | [INFO] [stdout] 1774 | Ok(mir::expr::Expr { [INFO] [stdout] | ____________^ [INFO] [stdout] 1775 | | qtype: true_expr.qtype.clone(), [INFO] [stdout] 1776 | | value_kind: ValueKind::Rvalue, [INFO] [stdout] 1777 | | kind: mir::expr::ExprKind::Ternary { [INFO] [stdout] ... | [INFO] [stdout] 1781 | | }, [INFO] [stdout] 1782 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1795:12 [INFO] [stdout] | [INFO] [stdout] 1785 | let symbol = self.env.get_symbol(&token)?; [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1794 | let qtype = symbol.borrow().qtype.clone(); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1795 | Ok(mir::expr::Expr { [INFO] [stdout] | ____________^ [INFO] [stdout] 1796 | | qtype, [INFO] [stdout] 1797 | | kind: mir::expr::ExprKind::Ident(Rc::clone(&symbol)), [INFO] [stdout] 1798 | | value_kind: ValueKind::Lvalue, [INFO] [stdout] 1799 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1865:12 [INFO] [stdout] | [INFO] [stdout] 1842 | expr: hir::expr::ExprKind, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1843 | ) -> Result { [INFO] [stdout] 1844 | let qtype = self.visit_expr(func, expr.clone())?.qtype; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1853 | let postunary_sugar = hir::expr::ExprKind::Binary { [INFO] [stdout] | --------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1865 | Ok(Self::maybe_cast(qtype, self.visit_expr(func, postunary_sugar)?)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1968:12 [INFO] [stdout] | [INFO] [stdout] 1898 | l_expr: hir::expr::ExprKind, [INFO] [stdout] | --------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1899 | token: Token, [INFO] [stdout] 1900 | r_expr: hir::expr::ExprKind, [INFO] [stdout] | --------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1901 | ) -> Result { [INFO] [stdout] 1902 | let qtype = self.visit_expr(func, l_expr.clone())?.qtype; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1911 | let tmp_type = qtype.pointer_to(); [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1912 | let tmp_symbol = self [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1931 | let compound_sugar = hir::expr::ExprKind::Comma { [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1960 | let expr = self.visit_expr(func, compound_sugar).map_err(|err| { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1968 | Ok(mir::expr::Expr { [INFO] [stdout] | ____________^ [INFO] [stdout] 1969 | | qtype: expr.qtype.clone(), [INFO] [stdout] 1970 | | kind: mir::expr::ExprKind::CompoundAssign { tmp_symbol, expr: Box::new(expr) }, [INFO] [stdout] 1971 | | value_kind: ValueKind::Rvalue, [INFO] [stdout] 1972 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:2008:12 [INFO] [stdout] | [INFO] [stdout] 1976 | left: mir::expr::Expr, [INFO] [stdout] | --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1977 | token: Token, [INFO] [stdout] 1978 | right: mir::expr::Expr, [INFO] [stdout] | ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2004 | let right = right.decay(&token)?.to_rval(); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2005 | Self::check_type_compatibility(&token, &left.qtype, &right)?; [INFO] [stdout] 2006 | let right = Self::maybe_cast(left.qtype.clone(), right); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2007 | [INFO] [stdout] 2008 | Ok(mir::expr::Expr { [INFO] [stdout] | ____________^ [INFO] [stdout] 2009 | | // 6.5.16.3 The type of an assignment expression is the type [INFO] [stdout] 2010 | | // of the left operand unless the left operand has qualified type, [INFO] [stdout] 2011 | | // in which case it is the unqualified version of the type of the left operand [INFO] [stdout] ... | [INFO] [stdout] 2017 | | }, [INFO] [stdout] 2018 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:2081:12 [INFO] [stdout] | [INFO] [stdout] 2025 | caller: hir::expr::ExprKind, [INFO] [stdout] | --------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2026 | parsed_args: Vec, [INFO] [stdout] | ------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2027 | ) -> Result { [INFO] [stdout] 2028 | let caller = self.visit_expr(func, caller)?; [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2029 | [INFO] [stdout] 2030 | let mut args: Vec = Vec::new(); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2047 | let func_type = match caller.qtype.ty.clone() { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2048 | Type::Function(func_type) => func_type, [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2049 | ty => { [INFO] [stdout] | -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2050 | let mut pointer_to_func = None; [INFO] [stdout] | --------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2051 | if let Type::Pointer(to) = ty { [INFO] [stdout] | -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2052 | if let Type::Function(func_type) = to.ty { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2056 | if let Some(func_type) = pointer_to_func { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2072 | let args = self.args_and_params_match(&left_paren, &caller.qtype, func_type.params, args)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2073 | [INFO] [stdout] 2074 | let caller = if caller.qtype.ty.is_ptr() { [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2081 | Ok(mir::expr::Expr { [INFO] [stdout] | ____________^ [INFO] [stdout] 2082 | | kind: mir::expr::ExprKind::Call { caller: Box::new(caller), args }, [INFO] [stdout] 2083 | | qtype: *func_type.return_type, [INFO] [stdout] 2084 | | value_kind: ValueKind::Rvalue, [INFO] [stdout] 2085 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:2137:12 [INFO] [stdout] | [INFO] [stdout] 2123 | left: hir::expr::ExprKind, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2124 | token: Token, [INFO] [stdout] 2125 | right: hir::expr::ExprKind, [INFO] [stdout] | -------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2126 | ) -> Result { [INFO] [stdout] 2127 | let left = self.visit_expr(func, left)?.to_rval().decay(&token)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2128 | let right = self.visit_expr(func, right)?.to_rval().decay(&token)?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2137 | Ok(mir::expr::Expr { [INFO] [stdout] | ____________^ [INFO] [stdout] 2138 | | kind: mir::expr::ExprKind::Logical { [INFO] [stdout] 2139 | | token, [INFO] [stdout] 2140 | | left: Box::new(left), [INFO] [stdout] ... | [INFO] [stdout] 2144 | | value_kind: ValueKind::Rvalue, [INFO] [stdout] 2145 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:2169:12 [INFO] [stdout] | [INFO] [stdout] 2150 | left: hir::expr::ExprKind, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2151 | token: Token, [INFO] [stdout] 2152 | right: hir::expr::ExprKind, [INFO] [stdout] | -------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2153 | ) -> Result { [INFO] [stdout] 2154 | let left = self.visit_expr(func, left)?.to_rval().decay(&token)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2155 | let right = self.visit_expr(func, right)?.to_rval().decay(&token)?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2164 | let left = left.maybe_int_promote(); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2165 | let right = right.maybe_int_promote(); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2166 | [INFO] [stdout] 2167 | let (left, right) = Self::scalar_conversion(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] 2168 | [INFO] [stdout] 2169 | Ok(mir::expr::Expr { [INFO] [stdout] | ____________^ [INFO] [stdout] 2170 | | kind: mir::expr::ExprKind::Comparison { [INFO] [stdout] 2171 | | token, [INFO] [stdout] 2172 | | left: Box::new(left), [INFO] [stdout] ... | [INFO] [stdout] 2176 | | value_kind: ValueKind::Rvalue, [INFO] [stdout] 2177 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:2221:12 [INFO] [stdout] | [INFO] [stdout] 2192 | left: hir::expr::ExprKind, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2193 | token: Token, [INFO] [stdout] 2194 | right: hir::expr::ExprKind, [INFO] [stdout] | -------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2195 | ) -> Result { [INFO] [stdout] 2196 | let left = self.visit_expr(func, left)?.to_rval().decay(&token)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2197 | let right = self.visit_expr(func, right)?.to_rval().decay(&token)?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2206 | let mut left = left.maybe_int_promote(); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2207 | let mut right = right.maybe_int_promote(); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2221 | Ok(Self::binary_type_promotion(token, left, right)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mir/decl.rs:109:21 [INFO] [stdout] | [INFO] [stdout] 106 | pub fn new(name: String, return_type: QualType, variadic: bool, is_inline: bool) -> Self { [INFO] [stdout] | --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 109 | params: 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] --> wrecc_compiler/src/compiler/typechecker/mir/decl.rs:115:34 [INFO] [stdout] | [INFO] [stdout] 106 | pub fn new(name: String, return_type: QualType, variadic: bool, is_inline: bool) -> Self { [INFO] [stdout] | --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 115 | static_declarations: 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] --> wrecc_compiler/src/compiler/typechecker/mir/decl.rs:121:20 [INFO] [stdout] | [INFO] [stdout] 106 | pub fn new(name: String, return_type: QualType, variadic: bool, is_inline: bool) -> Self { [INFO] [stdout] | --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 121 | scope: 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] --> wrecc_compiler/src/compiler/typechecker/mir/expr.rs:134:20 [INFO] [stdout] | [INFO] [stdout] 131 | pub fn to_rval(self) -> Expr { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 134 | qtype: QualType { [INFO] [stdout] | ____________________^ [INFO] [stdout] 135 | | qualifiers: Qualifiers::default(), [INFO] [stdout] 136 | | ..self.qtype [INFO] [stdout] 137 | | }, [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] --> wrecc_compiler/src/compiler/typechecker/mir/expr.rs:144:20 [INFO] [stdout] | [INFO] [stdout] 142 | pub fn cast_to(self, new_type: QualType, direction: CastDirection) -> Expr { [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] 143 | Expr { [INFO] [stdout] 144 | qtype: new_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] --> wrecc_compiler/src/compiler/typechecker/mir/expr.rs:146:19 [INFO] [stdout] | [INFO] [stdout] 142 | pub fn cast_to(self, new_type: QualType, direction: CastDirection) -> Expr { [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] 146 | kind: ExprKind::Cast { [INFO] [stdout] | ___________________^ [INFO] [stdout] 147 | | new_type: new_type.ty, [INFO] [stdout] 148 | | direction, [INFO] [stdout] 149 | | expr: Box::new(self), [INFO] [stdout] 150 | | }, [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] --> wrecc_compiler/src/preprocessor/mod.rs:452:9 [INFO] [stdout] | [INFO] [stdout] 438 | let expr = parser.expression().map_err(|mut err| { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 452 | / TypeChecker::new() [INFO] [stdout] 453 | | .visit_expr(&mut None, expr)? [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________________________________________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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 84 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `wrecc_compiler` (lib) due to 85 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> wrecc_compiler/src/compiler/codegen/register.rs:249:18 [INFO] [stdout] | [INFO] [stdout] 244 | pub fn new(ty: Type, key_counter: &mut usize, instr_counter: usize) -> Self { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 249 | reg: None, [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] --> wrecc_compiler/src/compiler/codegen/register.rs:257:17 [INFO] [stdout] | [INFO] [stdout] 255 | pub fn default(reg: Box) -> Self { [INFO] [stdout] | ----------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 256 | TempRegister { [INFO] [stdout] 257 | ty: Type::Primitive(Primitive::Int(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] --> wrecc_compiler/src/compiler/codegen/register.rs:259:18 [INFO] [stdout] | [INFO] [stdout] 255 | pub fn default(reg: Box) -> Self { [INFO] [stdout] | ----------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 259 | reg: Some(TempKind::Scratch(reg)), [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] --> wrecc_compiler/src/compiler/codegen/register_allocation.rs:20:55 [INFO] [stdout] | [INFO] [stdout] 19 | pub fn new(start: usize, end: usize, arg: Option, ty: Type) -> Self { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 20 | IntervalEntry { start, end, arg, ty, scratch: None } [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] --> wrecc_compiler/src/compiler/codegen/register_allocation.rs:48:25 [INFO] [stdout] | [INFO] [stdout] 45 | pub fn new(live_intervals: HashMap) -> Self { [INFO] [stdout] | --------------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 48 | saved_regs: 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] --> wrecc_compiler/src/compiler/codegen/register_allocation.rs:52:24 [INFO] [stdout] | [INFO] [stdout] 45 | pub fn new(live_intervals: HashMap) -> Self { [INFO] [stdout] | --------------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 52 | registers: ScratchRegisters::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] --> wrecc_compiler/src/compiler/codegen/register_allocation.rs:507:36 [INFO] [stdout] | [INFO] [stdout] 507 | .map(|(k, (_, v))| (k, v.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] --> wrecc_compiler/src/compiler/common/environment.rs:227:12 [INFO] [stdout] | [INFO] [stdout] 222 | pub fn declare_symbol(&mut self, var_name: &Token, symbol: Symbol) -> Result { [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 227 | Ok(self.symbols.declare(var_name.unwrap_string(), symbol)) [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] --> wrecc_compiler/src/compiler/common/environment.rs:241:12 [INFO] [stdout] | [INFO] [stdout] 231 | pub fn declare_global(&mut self, var_name: &Token, symbol: Symbol) -> Result { [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 238 | let func = Rc::new(RefCell::new(symbol)); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 241 | Ok(Rc::clone(&func)) [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] --> wrecc_compiler/src/compiler/common/environment.rs:378:49 [INFO] [stdout] | [INFO] [stdout] 378 | .ok_or_else(|| Error::new(var_name, ErrorKind::UndeclaredSymbol(var_name.unwrap_string()))) [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] --> wrecc_compiler/src/compiler/common/environment.rs:383:49 [INFO] [stdout] | [INFO] [stdout] 383 | .ok_or_else(|| Error::new(var_name, ErrorKind::UndeclaredType(var_name.unwrap_string()))) [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] --> wrecc_compiler/src/compiler/common/environment.rs:481:50 [INFO] [stdout] | [INFO] [stdout] 481 | env.symbols.get_current("n").map(|sy|sy.borrow().clone()), [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] --> wrecc_compiler/src/compiler/common/environment.rs:556:54 [INFO] [stdout] | [INFO] [stdout] 556 | env.symbols.get("a".to_string()).map(|sy|sy.borrow().clone()), [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] --> wrecc_compiler/src/compiler/common/environment.rs:562:54 [INFO] [stdout] | [INFO] [stdout] 562 | env.symbols.get("a".to_string()).map(|sy|sy.borrow().clone()), [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] --> wrecc_compiler/src/compiler/common/environment.rs:575:54 [INFO] [stdout] | [INFO] [stdout] 575 | env.symbols.get("a".to_string()).map(|sy|sy.borrow().clone()), [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] --> wrecc_compiler/src/compiler/common/environment.rs:583:54 [INFO] [stdout] | [INFO] [stdout] 583 | env.symbols.get("a".to_string()).map(|sy|sy.borrow().clone()), [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] --> wrecc_compiler/src/compiler/common/environment.rs:588:54 [INFO] [stdout] | [INFO] [stdout] 588 | env.symbols.get("a".to_string()).map(|sy|sy.borrow().clone()), [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] --> wrecc_compiler/src/compiler/common/environment.rs:609:56 [INFO] [stdout] | [INFO] [stdout] 609 | env.symbols.get("foo".to_string()).map(|sy|sy.borrow().clone()), [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] --> wrecc_compiler/src/compiler/common/error.rs:539:19 [INFO] [stdout] | [INFO] [stdout] 533 | pub fn new_multiple(errors: Vec) -> Self { [INFO] [stdout] | ------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 539 | kind: ErrorKind::Multiple(errors), [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] --> wrecc_compiler/src/compiler/common/types.rs:133:17 [INFO] [stdout] | [INFO] [stdout] 130 | pub fn pointer_to(self) -> QualType { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 133 | ty: Type::Pointer(Box::new(self.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] --> wrecc_compiler/src/compiler/common/types.rs:138:23 [INFO] [stdout] | [INFO] [stdout] 136 | pub fn function_of(self, params: Vec, variadic: bool) -> QualType { [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] 137 | // functions cannot have qualifiers since they only describe the return type [INFO] [stdout] 138 | QualType::new(Type::Function(FuncType { [INFO] [stdout] | _______________________^ [INFO] [stdout] 139 | | return_type: Box::new(self), [INFO] [stdout] 140 | | params, [INFO] [stdout] 141 | | variadic, [INFO] [stdout] 142 | | })) [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] --> wrecc_compiler/src/compiler/common/types.rs:352:33 [INFO] [stdout] | [INFO] [stdout] 352 | .all(|(p1, p2)| p1.unqualified() == p2.unqualified()) [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] --> wrecc_compiler/src/compiler/common/types.rs:352:53 [INFO] [stdout] | [INFO] [stdout] 352 | .all(|(p1, p2)| p1.unqualified() == p2.unqualified()) [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] --> wrecc_compiler/src/compiler/common/types.rs:685:33 [INFO] [stdout] | [INFO] [stdout] 685 | CUSTOMS.with(|list| list.borrow()[self.index].members.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] --> wrecc_compiler/src/compiler/common/types.rs:703:33 [INFO] [stdout] | [INFO] [stdout] 703 | CUSTOMS.with(|list| list.borrow()[self.index].is_complete) [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] --> wrecc_compiler/src/compiler/common/types.rs:706:33 [INFO] [stdout] | [INFO] [stdout] 706 | CUSTOMS.with(|list| list.borrow()[self.index].in_definition) [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] --> wrecc_compiler/src/compiler/parser/mod.rs:232:12 [INFO] [stdout] | [INFO] [stdout] 222 | let mut modifiers = Vec::new(); [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 225 | let (name, preceding_modifiers) = self.direct_declarator(kind)?; [INFO] [stdout] | ------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 232 | Ok(Declarator { name, modifiers }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:283:12 [INFO] [stdout] | [INFO] [stdout] 283 | Ok((name, None)) [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:317:12 [INFO] [stdout] | [INFO] [stdout] 306 | let size = if let TokenKind::RightBracket = self.tokens.peek("array-declaration")?.kind { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 317 | Ok(DeclModifier::Array(token, size)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:354:12 [INFO] [stdout] | [INFO] [stdout] 326 | let mut params = Vec::new(); [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 354 | Ok(DeclModifier::Function { token, params, variadic }) [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] --> wrecc_compiler/src/compiler/parser/mod.rs:364:12 [INFO] [stdout] | [INFO] [stdout] 361 | let decl_specs = self.declaration_specifiers(true)?; [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 362 | let declarator = self.declarator(DeclaratorKind::MaybeAbstract)?; [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 363 | [INFO] [stdout] 364 | Ok(ParamDecl { decl_specs, declarator }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:372:12 [INFO] [stdout] | [INFO] [stdout] 369 | let DeclSpecs { specifiers, qualifiers, .. } = self.declaration_specifiers(false)?; [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 370 | let Declarator { modifiers, .. } = self.declarator(DeclaratorKind::Abstract)?; [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 371 | [INFO] [stdout] 372 | Ok(DeclType { specifiers, qualifiers, modifiers }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:384:12 [INFO] [stdout] | [INFO] [stdout] 377 | decl_specs: DeclSpecs, [INFO] [stdout] | --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 378 | declarator: Declarator, [INFO] [stdout] | ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 382 | let body = self.block()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 383 | [INFO] [stdout] 384 | Ok(ExternalDeclaration::Function( [INFO] [stdout] | ____________^ [INFO] [stdout] 385 | | FuncDecl { [INFO] [stdout] 386 | | decl_specs, [INFO] [stdout] 387 | | name: declarator.name.expect("external-decls cannot be abstract"), [INFO] [stdout] ... | [INFO] [stdout] 390 | | body, [INFO] [stdout] 391 | | )) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:412:12 [INFO] [stdout] | [INFO] [stdout] 396 | decl_specs: DeclSpecs, [INFO] [stdout] | --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 397 | declarator: Declarator, [INFO] [stdout] | ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 398 | ) -> Result { [INFO] [stdout] 399 | let mut declarators = Vec::new(); [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 400 | let init = self.init_declarator(&decl_specs.storage_classes, &declarator)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 412 | Ok(ExternalDeclaration::Declaration(Declaration { [INFO] [stdout] | ____________^ [INFO] [stdout] 413 | | decl_specs, [INFO] [stdout] 414 | | declarators, [INFO] [stdout] 415 | | })) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |__________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:685:12 [INFO] [stdout] | [INFO] [stdout] 679 | let members = if match_next!(self, TokenKind::LeftBrace).is_some() { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 685 | Ok(match token.kind { [INFO] [stdout] | ____________^ [INFO] [stdout] 686 | | TokenKind::Struct => SpecifierKind::Struct(name, members), [INFO] [stdout] 687 | | TokenKind::Union => SpecifierKind::Union(name, members), [INFO] [stdout] 688 | | _ => unreachable!("not struct/union specifier"), [INFO] [stdout] 689 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:704:12 [INFO] [stdout] | [INFO] [stdout] 698 | let members = if match_next!(self, TokenKind::LeftBrace).is_some() { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 704 | Ok(SpecifierKind::Enum(name, members)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:755:12 [INFO] [stdout] | [INFO] [stdout] 755 | Ok(Stmt::Goto(ident)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:760:12 [INFO] [stdout] | [INFO] [stdout] 758 | let body = self.statement()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 759 | [INFO] [stdout] 760 | Ok(Stmt::Label(token, Box::new(body))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:770:12 [INFO] [stdout] | [INFO] [stdout] 764 | let cond = self.expression()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 768 | let body = self.statement()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 769 | [INFO] [stdout] 770 | Ok(Stmt::Switch(token, cond, Box::new(body))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:779:12 [INFO] [stdout] | [INFO] [stdout] 773 | let value = self.assignment()?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 777 | let body = self.statement()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 778 | [INFO] [stdout] 779 | Ok(Stmt::Case(token, value, Box::new(body))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:786:12 [INFO] [stdout] | [INFO] [stdout] 784 | let body = self.statement()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 785 | [INFO] [stdout] 786 | Ok(Stmt::Default(token, Box::new(body))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:811:12 [INFO] [stdout] | [INFO] [stdout] 789 | let body = self.statement()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 798 | let cond = self.expression()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 811 | Ok(Stmt::Do(keyword, Box::new(body), cond)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:832:12 [INFO] [stdout] | [INFO] [stdout] 826 | let value = match check!(self, TokenKind::Semicolon) { [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 832 | Ok(Stmt::Return(keyword, value)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:872:12 [INFO] [stdout] | [INFO] [stdout] 839 | let init = match self.is_specifier(self.tokens.peek("expected type-specifier")?) { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 856 | let cond = match check!(self, TokenKind::Semicolon) { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 862 | let inc = match check!(self, TokenKind::RightParen) { [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 868 | let body = Box::new(self.statement()?); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 872 | Ok(Stmt::For(left_paren, init, cond, inc, body)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:885:12 [INFO] [stdout] | [INFO] [stdout] 876 | let cond = self.expression()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 883 | let body = self.statement()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 884 | [INFO] [stdout] 885 | Ok(Stmt::While(left_paren, cond, Box::new(body))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:938:12 [INFO] [stdout] | [INFO] [stdout] 936 | let expr = self.expression()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 937 | consume!(self, TokenKind::Semicolon, "expected ';' after expression")?; [INFO] [stdout] 938 | Ok(Stmt::Expr(expr)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:955:12 [INFO] [stdout] | [INFO] [stdout] 942 | let condition = self.expression()?; [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 949 | let then_branch = self.statement()?; [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 950 | let else_branch = if match_next!(self, TokenKind::Else).is_some() { [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 955 | Ok(Stmt::If(keyword, condition, Box::new(then_branch), else_branch)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:1241:12 [INFO] [stdout] | [INFO] [stdout] 1233 | fn typecast(&mut self, token: Token, decl_type: DeclType) -> Result { [INFO] [stdout] | ------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1239 | let expr = self.unary()?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1240 | [INFO] [stdout] 1241 | Ok(ExprKind::Cast { token, decl_type, expr: Box::new(expr) }) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/parser/mod.rs:1306:12 [INFO] [stdout] | [INFO] [stdout] 1295 | fn call(&mut self, left_paren: Token, caller: ExprKind) -> Result { [INFO] [stdout] | ---------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1296 | let mut args = Vec::new(); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1306 | Ok(ExprKind::Call { [INFO] [stdout] | ____________^ [INFO] [stdout] 1307 | | left_paren, [INFO] [stdout] 1308 | | caller: Box::new(caller), [INFO] [stdout] 1309 | | args, [INFO] [stdout] 1310 | | }) [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] --> wrecc_compiler/src/compiler/parser/mod.rs:1335:13 [INFO] [stdout] | [INFO] [stdout] 1335 | Err(Error::new( [INFO] [stdout] | _____________^ [INFO] [stdout] 1336 | | token, [INFO] [stdout] 1337 | | ErrorKind::ExpectedExpression(token.kind.clone()), [INFO] [stdout] 1338 | | )) [INFO] [stdout] | | ^ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________| [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] --> wrecc_compiler/src/compiler/parser/mod.rs:1387:15 [INFO] [stdout] | [INFO] [stdout] 1383 | fn arrow_sugar(left: ExprKind, member: Token, arrow_token: Token) -> ExprKind { [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1387 | expr: Box::new(ExprKind::Unary { [INFO] [stdout] | _______________^ [INFO] [stdout] 1388 | | token: Token { kind: TokenKind::Star, ..member }, [INFO] [stdout] 1389 | | right: Box::new(left), [INFO] [stdout] 1390 | | }), [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] --> wrecc_compiler/src/compiler/parser/mod.rs:1398:16 [INFO] [stdout] | [INFO] [stdout] 1395 | pub fn index_sugar(token: Token, expr: ExprKind, index: ExprKind) -> ExprKind { [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] 1398 | right: Box::new(ExprKind::Binary { [INFO] [stdout] | ________________^ [INFO] [stdout] 1399 | | left: Box::new(expr), [INFO] [stdout] 1400 | | token: Token { kind: TokenKind::Plus, ..token }, [INFO] [stdout] 1401 | | right: Box::new(index), [INFO] [stdout] 1402 | | }), [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] --> wrecc_compiler/src/compiler/parser/double_peek.rs:14:18 [INFO] [stdout] | [INFO] [stdout] 12 | pub fn new(list: Vec) -> Self { [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 13 | DoublePeek { [INFO] [stdout] 14 | eof: list.last().cloned(), [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] --> wrecc_compiler/src/compiler/parser/double_peek.rs:15:20 [INFO] [stdout] | [INFO] [stdout] 12 | pub fn new(list: Vec) -> Self { [INFO] [stdout] | ------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 15 | inner: list.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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:48:15 [INFO] [stdout] | [INFO] [stdout] 45 | mut self, [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 46 | external_decls: Vec, [INFO] [stdout] | --------------------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 47 | ) -> Result<(Vec, ConstLabels), Vec> { [INFO] [stdout] 48 | match self.check_declarations(external_decls) { [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:350:12 [INFO] [stdout] | [INFO] [stdout] 258 | fn parse_specifiers(&mut self, specifiers: Vec) -> Result { [INFO] [stdout] | ------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 259 | let ty = if specifiers.is_empty() { [INFO] [stdout] | -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 266 | let mut specifier_kind_list: Vec = [INFO] [stdout] | ------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 350 | Ok(QualType::new(ty)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:396:12 [INFO] [stdout] | [INFO] [stdout] 353 | mut qtype: QualType, [INFO] [stdout] | ------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 396 | Ok(QualType { [INFO] [stdout] | ____________^ [INFO] [stdout] 397 | | qualifiers: Qualifiers { [INFO] [stdout] 398 | | is_const: new_qualifiers.is_const | qtype.qualifiers.is_const, [INFO] [stdout] 399 | | is_restrict: new_qualifiers.is_restrict | qtype.qualifiers.is_restrict, [INFO] [stdout] ... | [INFO] [stdout] 402 | | ..qtype [INFO] [stdout] 403 | | }) [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:440:63 [INFO] [stdout] | [INFO] [stdout] 440 | ... .ok_or_else(|| Error::new(&token, ErrorKind::ArraySizeOverflow))?; [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:526:12 [INFO] [stdout] | [INFO] [stdout] 484 | let members = match (&name, members) { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 490 | let members = self.struct_declaration(members.clone())?; [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 518 | let members = self.struct_declaration(members.clone())?; [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 526 | Ok(match token.kind { [INFO] [stdout] | ____________^ [INFO] [stdout] 527 | | TokenKind::Struct => Type::Struct(members), [INFO] [stdout] 528 | | TokenKind::Union => Type::Union(members), [INFO] [stdout] 529 | | _ => unreachable!("not struct/union specifier"), [INFO] [stdout] 530 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:594:51 [INFO] [stdout] | [INFO] [stdout] 594 | .map_err(|_| Error::new(name, ErrorKind::EnumForwardDecl))?; [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:793:12 [INFO] [stdout] | [INFO] [stdout] 770 | expr: hir::expr::ExprKind, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 777 | let expr = self.visit_expr(func, expr)?.decay(token)?.to_rval(); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 778 | Self::check_type_compatibility(token, qtype, &expr)?; [INFO] [stdout] 779 | let expr = Self::maybe_cast(qtype.clone(), expr); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 793 | Ok(mir::decl::Init::Scalar(expr)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:942:15 [INFO] [stdout] | [INFO] [stdout] 940 | designator: hir::decl::Designator, [INFO] [stdout] | --------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 941 | ) -> Result<(i64, i64, QualType), Error> { [INFO] [stdout] 942 | match (designator.kind, &qtype.ty) { [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:949:66 [INFO] [stdout] | [INFO] [stdout] 949 | .ok_or_else(|| Error::new(&designator.token, ErrorKind::ArraySizeOverflow))?; [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1256:12 [INFO] [stdout] | [INFO] [stdout] 1251 | body: hir::stmt::Stmt, [INFO] [stdout] | --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1254 | let body = self.visit_stmt(func, body)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1255 | [INFO] [stdout] 1256 | Ok(mir::stmt::Stmt::Label(name_token.unwrap_string(), Box::new(body))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1281:12 [INFO] [stdout] | [INFO] [stdout] 1262 | cond: hir::expr::ExprKind, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1263 | body: hir::stmt::Stmt, [INFO] [stdout] | --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1264 | ) -> Result { [INFO] [stdout] 1265 | let cond = self.visit_expr(&mut Some(func), cond)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1277 | let stmt = self.visit_stmt(func, body); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1281 | Ok(mir::stmt::Stmt::Switch(cond, Box::new(stmt?))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1318:12 [INFO] [stdout] | [INFO] [stdout] 1287 | expr: hir::expr::ExprKind, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1288 | body: hir::stmt::Stmt, [INFO] [stdout] | --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1289 | ) -> Result { [INFO] [stdout] 1290 | let mut expr = self.visit_expr(&mut Some(func), expr)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1316 | let body = self.visit_stmt(func, body)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1317 | [INFO] [stdout] 1318 | Ok(mir::stmt::Stmt::Case(Box::new(body))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1337:12 [INFO] [stdout] | [INFO] [stdout] 1324 | body: hir::stmt::Stmt, [INFO] [stdout] | --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1335 | let body = self.visit_stmt(func, body)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1336 | [INFO] [stdout] 1337 | Ok(mir::stmt::Stmt::Default(Box::new(body))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1360:12 [INFO] [stdout] | [INFO] [stdout] 1343 | body: hir::stmt::Stmt, [INFO] [stdout] | --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1344 | cond: hir::expr::ExprKind, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1347 | let body = self.visit_stmt(func, body)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1350 | let cond = self.visit_expr(&mut Some(func), cond)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1360 | Ok(mir::stmt::Stmt::Do(Box::new(body), cond)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1417:12 [INFO] [stdout] | [INFO] [stdout] 1366 | init: Option>, [INFO] [stdout] | ---------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1367 | cond: Option, [INFO] [stdout] | --------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1368 | inc: Option, [INFO] [stdout] | -------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1369 | body: hir::stmt::Stmt, [INFO] [stdout] | --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1373 | let init = match init.map(|stmt| *stmt) { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1374 | Some(hir::stmt::Stmt::Declaration(decl)) => { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1390 | Some(stmt) => Some(self.visit_stmt(func, stmt)?), [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1394 | let cond = if let Some(cond) = cond { [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] 1395 | let cond = self.visit_expr(&mut Some(func), cond)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1408 | let body = self.visit_stmt(func, body)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1409 | [INFO] [stdout] 1410 | let inc = inc.map(|inc| self.visit_expr(&mut Some(func), inc)).transpose()?; [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1417 | Ok(mir::stmt::Stmt::For( [INFO] [stdout] | ____________^ [INFO] [stdout] 1418 | | init.map(Box::new), [INFO] [stdout] 1419 | | cond, [INFO] [stdout] 1420 | | inc, [INFO] [stdout] 1421 | | Box::new(body), [INFO] [stdout] 1422 | | )) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1471:12 [INFO] [stdout] | [INFO] [stdout] 1454 | cond: hir::expr::ExprKind, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1455 | body: hir::stmt::Stmt, [INFO] [stdout] | --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1456 | ) -> Result { [INFO] [stdout] 1457 | let cond = self.visit_expr(&mut Some(func), cond)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1466 | let body = self.visit_stmt(func, body)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1471 | Ok(mir::stmt::Stmt::While(cond, Box::new(body))) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1506:12 [INFO] [stdout] | [INFO] [stdout] 1478 | cond: hir::expr::ExprKind, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1479 | then_branch: hir::stmt::Stmt, [INFO] [stdout] | ---------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1480 | else_branch: Option>, [INFO] [stdout] | ----------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1481 | ) -> Result { [INFO] [stdout] 1482 | let cond = self.visit_expr(&mut Some(func), cond)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1490 | let then_branch = self.visit_stmt(func, then_branch)?; [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1494 | let else_branch = else_branch [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1506 | Ok(mir::stmt::Stmt::If( [INFO] [stdout] | ____________^ [INFO] [stdout] 1507 | | cond, [INFO] [stdout] 1508 | | Box::new(then_branch), [INFO] [stdout] 1509 | | else_branch.map(Box::new), [INFO] [stdout] 1510 | | )) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1552:12 [INFO] [stdout] | [INFO] [stdout] 1517 | expr: Option, [INFO] [stdout] | --------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1521 | let expr = if let Some(expr) = expr { [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] 1522 | let expr = self.visit_expr(&mut Some(func), expr)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1523 | [INFO] [stdout] 1524 | let expr = expr.decay(&keyword)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1531 | let expr = Self::maybe_cast(func.return_type.clone(), expr); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1535 | let return_type = QualType::new(Type::Primitive(Primitive::Void)); [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1536 | let return_expr = mir::expr::Expr { [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1552 | Ok(mir::stmt::Stmt::Return(expr)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1674:12 [INFO] [stdout] | [INFO] [stdout] 1661 | expr: hir::expr::ExprKind, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1662 | decl_type: hir::decl::DeclType, [INFO] [stdout] | ------------------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1663 | ) -> Result { [INFO] [stdout] 1664 | let expr = self.visit_expr(func, expr)?.decay(&token)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1665 | let new_type = self.parse_type(&token, decl_type)?; [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1674 | Ok(Self::always_cast(expr, new_type).to_rval()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1699:12 [INFO] [stdout] | [INFO] [stdout] 1695 | decl_type: hir::decl::DeclType, [INFO] [stdout] | ------------------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1696 | ) -> Result { [INFO] [stdout] 1697 | let qtype = self.parse_type(&token, decl_type)?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1698 | [INFO] [stdout] 1699 | Ok(mir::expr::Expr { [INFO] [stdout] | ____________^ [INFO] [stdout] 1700 | | kind: mir::expr::ExprKind::Literal(LiteralKind::Unsigned(qtype.ty.size() as u64)), [INFO] [stdout] 1701 | | qtype: QualType::new(Type::Primitive(Primitive::Long(true))), [INFO] [stdout] 1702 | | value_kind: ValueKind::Rvalue, [INFO] [stdout] 1703 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1718:12 [INFO] [stdout] | [INFO] [stdout] 1710 | expr: hir::expr::ExprKind, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1711 | ) -> Result { [INFO] [stdout] 1712 | let expr = self.visit_expr(func, expr)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1718 | Ok(mir::expr::Expr { [INFO] [stdout] | ____________^ [INFO] [stdout] 1719 | | kind: mir::expr::ExprKind::Literal(LiteralKind::Unsigned(expr.qtype.ty.size() as u64)), [INFO] [stdout] 1720 | | qtype: QualType::new(Type::Primitive(Primitive::Long(true))), [INFO] [stdout] 1721 | | value_kind: ValueKind::Rvalue, [INFO] [stdout] 1722 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1733:12 [INFO] [stdout] | [INFO] [stdout] 1727 | left: hir::expr::ExprKind, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1728 | right: hir::expr::ExprKind, [INFO] [stdout] | -------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1729 | ) -> Result { [INFO] [stdout] 1730 | let left = self.visit_expr(func, left)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1731 | let right = self.visit_expr(func, right)?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1732 | [INFO] [stdout] 1733 | Ok(mir::expr::Expr { [INFO] [stdout] | ____________^ [INFO] [stdout] 1734 | | value_kind: ValueKind::Rvalue, [INFO] [stdout] 1735 | | qtype: right.qtype.clone(), [INFO] [stdout] 1736 | | kind: mir::expr::ExprKind::Comma { [INFO] [stdout] ... | [INFO] [stdout] 1739 | | }, [INFO] [stdout] 1740 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1774:12 [INFO] [stdout] | [INFO] [stdout] 1746 | cond: hir::expr::ExprKind, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1747 | true_expr: hir::expr::ExprKind, [INFO] [stdout] | ------------------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1748 | false_expr: hir::expr::ExprKind, [INFO] [stdout] | ------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1749 | ) -> Result { [INFO] [stdout] 1750 | let cond = self.visit_expr(func, cond)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1757 | let true_expr = self.visit_expr(func, true_expr)?; [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1758 | let false_expr = self.visit_expr(func, false_expr)?; [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1769 | let true_expr = true_expr.maybe_int_promote(); [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1770 | let false_expr = false_expr.maybe_int_promote(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1771 | [INFO] [stdout] 1772 | let (true_expr, false_expr) = Self::scalar_conversion(true_expr, false_expr); [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] 1773 | [INFO] [stdout] 1774 | Ok(mir::expr::Expr { [INFO] [stdout] | ____________^ [INFO] [stdout] 1775 | | qtype: true_expr.qtype.clone(), [INFO] [stdout] 1776 | | value_kind: ValueKind::Rvalue, [INFO] [stdout] 1777 | | kind: mir::expr::ExprKind::Ternary { [INFO] [stdout] ... | [INFO] [stdout] 1781 | | }, [INFO] [stdout] 1782 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1795:12 [INFO] [stdout] | [INFO] [stdout] 1785 | let symbol = self.env.get_symbol(&token)?; [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1794 | let qtype = symbol.borrow().qtype.clone(); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1795 | Ok(mir::expr::Expr { [INFO] [stdout] | ____________^ [INFO] [stdout] 1796 | | qtype, [INFO] [stdout] 1797 | | kind: mir::expr::ExprKind::Ident(Rc::clone(&symbol)), [INFO] [stdout] 1798 | | value_kind: ValueKind::Lvalue, [INFO] [stdout] 1799 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1865:12 [INFO] [stdout] | [INFO] [stdout] 1842 | expr: hir::expr::ExprKind, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1843 | ) -> Result { [INFO] [stdout] 1844 | let qtype = self.visit_expr(func, expr.clone())?.qtype; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1853 | let postunary_sugar = hir::expr::ExprKind::Binary { [INFO] [stdout] | --------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1865 | Ok(Self::maybe_cast(qtype, self.visit_expr(func, postunary_sugar)?)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:1968:12 [INFO] [stdout] | [INFO] [stdout] 1898 | l_expr: hir::expr::ExprKind, [INFO] [stdout] | --------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1899 | token: Token, [INFO] [stdout] 1900 | r_expr: hir::expr::ExprKind, [INFO] [stdout] | --------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1901 | ) -> Result { [INFO] [stdout] 1902 | let qtype = self.visit_expr(func, l_expr.clone())?.qtype; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1911 | let tmp_type = qtype.pointer_to(); [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1912 | let tmp_symbol = self [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1931 | let compound_sugar = hir::expr::ExprKind::Comma { [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1960 | let expr = self.visit_expr(func, compound_sugar).map_err(|err| { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 1968 | Ok(mir::expr::Expr { [INFO] [stdout] | ____________^ [INFO] [stdout] 1969 | | qtype: expr.qtype.clone(), [INFO] [stdout] 1970 | | kind: mir::expr::ExprKind::CompoundAssign { tmp_symbol, expr: Box::new(expr) }, [INFO] [stdout] 1971 | | value_kind: ValueKind::Rvalue, [INFO] [stdout] 1972 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:2008:12 [INFO] [stdout] | [INFO] [stdout] 1976 | left: mir::expr::Expr, [INFO] [stdout] | --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 1977 | token: Token, [INFO] [stdout] 1978 | right: mir::expr::Expr, [INFO] [stdout] | ---------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2004 | let right = right.decay(&token)?.to_rval(); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2005 | Self::check_type_compatibility(&token, &left.qtype, &right)?; [INFO] [stdout] 2006 | let right = Self::maybe_cast(left.qtype.clone(), right); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2007 | [INFO] [stdout] 2008 | Ok(mir::expr::Expr { [INFO] [stdout] | ____________^ [INFO] [stdout] 2009 | | // 6.5.16.3 The type of an assignment expression is the type [INFO] [stdout] 2010 | | // of the left operand unless the left operand has qualified type, [INFO] [stdout] 2011 | | // in which case it is the unqualified version of the type of the left operand [INFO] [stdout] ... | [INFO] [stdout] 2017 | | }, [INFO] [stdout] 2018 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:2081:12 [INFO] [stdout] | [INFO] [stdout] 2025 | caller: hir::expr::ExprKind, [INFO] [stdout] | --------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2026 | parsed_args: Vec, [INFO] [stdout] | ------------------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2027 | ) -> Result { [INFO] [stdout] 2028 | let caller = self.visit_expr(func, caller)?; [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2029 | [INFO] [stdout] 2030 | let mut args: Vec = Vec::new(); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2047 | let func_type = match caller.qtype.ty.clone() { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2048 | Type::Function(func_type) => func_type, [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2049 | ty => { [INFO] [stdout] | -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2050 | let mut pointer_to_func = None; [INFO] [stdout] | --------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2051 | if let Type::Pointer(to) = ty { [INFO] [stdout] | -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2052 | if let Type::Function(func_type) = to.ty { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2056 | if let Some(func_type) = pointer_to_func { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2072 | let args = self.args_and_params_match(&left_paren, &caller.qtype, func_type.params, args)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2073 | [INFO] [stdout] 2074 | let caller = if caller.qtype.ty.is_ptr() { [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2081 | Ok(mir::expr::Expr { [INFO] [stdout] | ____________^ [INFO] [stdout] 2082 | | kind: mir::expr::ExprKind::Call { caller: Box::new(caller), args }, [INFO] [stdout] 2083 | | qtype: *func_type.return_type, [INFO] [stdout] 2084 | | value_kind: ValueKind::Rvalue, [INFO] [stdout] 2085 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:2137:12 [INFO] [stdout] | [INFO] [stdout] 2123 | left: hir::expr::ExprKind, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2124 | token: Token, [INFO] [stdout] 2125 | right: hir::expr::ExprKind, [INFO] [stdout] | -------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2126 | ) -> Result { [INFO] [stdout] 2127 | let left = self.visit_expr(func, left)?.to_rval().decay(&token)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2128 | let right = self.visit_expr(func, right)?.to_rval().decay(&token)?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2137 | Ok(mir::expr::Expr { [INFO] [stdout] | ____________^ [INFO] [stdout] 2138 | | kind: mir::expr::ExprKind::Logical { [INFO] [stdout] 2139 | | token, [INFO] [stdout] 2140 | | left: Box::new(left), [INFO] [stdout] ... | [INFO] [stdout] 2144 | | value_kind: ValueKind::Rvalue, [INFO] [stdout] 2145 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:2169:12 [INFO] [stdout] | [INFO] [stdout] 2150 | left: hir::expr::ExprKind, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2151 | token: Token, [INFO] [stdout] 2152 | right: hir::expr::ExprKind, [INFO] [stdout] | -------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2153 | ) -> Result { [INFO] [stdout] 2154 | let left = self.visit_expr(func, left)?.to_rval().decay(&token)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2155 | let right = self.visit_expr(func, right)?.to_rval().decay(&token)?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2164 | let left = left.maybe_int_promote(); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2165 | let right = right.maybe_int_promote(); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2166 | [INFO] [stdout] 2167 | let (left, right) = Self::scalar_conversion(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] 2168 | [INFO] [stdout] 2169 | Ok(mir::expr::Expr { [INFO] [stdout] | ____________^ [INFO] [stdout] 2170 | | kind: mir::expr::ExprKind::Comparison { [INFO] [stdout] 2171 | | token, [INFO] [stdout] 2172 | | left: Box::new(left), [INFO] [stdout] ... | [INFO] [stdout] 2176 | | value_kind: ValueKind::Rvalue, [INFO] [stdout] 2177 | | }) [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:2221:12 [INFO] [stdout] | [INFO] [stdout] 2192 | left: hir::expr::ExprKind, [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2193 | token: Token, [INFO] [stdout] 2194 | right: hir::expr::ExprKind, [INFO] [stdout] | -------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2195 | ) -> Result { [INFO] [stdout] 2196 | let left = self.visit_expr(func, left)?.to_rval().decay(&token)?; [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2197 | let right = self.visit_expr(func, right)?.to_rval().decay(&token)?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2206 | let mut left = left.maybe_int_promote(); [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2207 | let mut right = right.maybe_int_promote(); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2221 | Ok(Self::binary_type_promotion(token, left, right)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/compiler/typechecker/mir/decl.rs:109:21 [INFO] [stdout] | [INFO] [stdout] 106 | pub fn new(name: String, return_type: QualType, variadic: bool, is_inline: bool) -> Self { [INFO] [stdout] | --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 109 | params: 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] --> wrecc_compiler/src/compiler/typechecker/mir/decl.rs:115:34 [INFO] [stdout] | [INFO] [stdout] 106 | pub fn new(name: String, return_type: QualType, variadic: bool, is_inline: bool) -> Self { [INFO] [stdout] | --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 115 | static_declarations: 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] --> wrecc_compiler/src/compiler/typechecker/mir/decl.rs:121:20 [INFO] [stdout] | [INFO] [stdout] 106 | pub fn new(name: String, return_type: QualType, variadic: bool, is_inline: bool) -> Self { [INFO] [stdout] | --------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 121 | scope: 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] --> wrecc_compiler/src/compiler/typechecker/mir/expr.rs:134:20 [INFO] [stdout] | [INFO] [stdout] 131 | pub fn to_rval(self) -> Expr { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 134 | qtype: QualType { [INFO] [stdout] | ____________________^ [INFO] [stdout] 135 | | qualifiers: Qualifiers::default(), [INFO] [stdout] 136 | | ..self.qtype [INFO] [stdout] 137 | | }, [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] --> wrecc_compiler/src/compiler/typechecker/mir/expr.rs:144:20 [INFO] [stdout] | [INFO] [stdout] 142 | pub fn cast_to(self, new_type: QualType, direction: CastDirection) -> Expr { [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] 143 | Expr { [INFO] [stdout] 144 | qtype: new_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] --> wrecc_compiler/src/compiler/typechecker/mir/expr.rs:146:19 [INFO] [stdout] | [INFO] [stdout] 142 | pub fn cast_to(self, new_type: QualType, direction: CastDirection) -> Expr { [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] 146 | kind: ExprKind::Cast { [INFO] [stdout] | ___________________^ [INFO] [stdout] 147 | | new_type: new_type.ty, [INFO] [stdout] 148 | | direction, [INFO] [stdout] 149 | | expr: Box::new(self), [INFO] [stdout] 150 | | }, [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:2474:15 [INFO] [stdout] | [INFO] [stdout] 2473 | let external_decls = setup(input).parse().unwrap(); [INFO] [stdout] | -------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2474 | match TypeChecker::new().check_declarations(external_decls) { [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] --> wrecc_compiler/src/compiler/typechecker/mod.rs:2565:12 [INFO] [stdout] | [INFO] [stdout] 2549 | let hir::decl::ExternalDeclaration::Declaration(decls) = [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2552 | let hir::decl::Declaration { decl_specs, declarators } = decls; [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] 2553 | let mut typechecker = TypeChecker::new(); [INFO] [stdout] | ----------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2554 | [INFO] [stdout] 2555 | let declarator = declarators[0].clone(); [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2559 | let qtype = typechecker.parse_specifiers(decl_specs.specifiers).unwrap(); [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2560 | let qtype = TypeChecker::parse_qualifiers(qtype, &decl_specs.qualifiers)?; [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 2561 | [INFO] [stdout] 2562 | let declarator = [INFO] [stdout] | ---------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 2565 | Ok(declarator.unwrap().init.unwrap()) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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] --> wrecc_compiler/src/preprocessor/mod.rs:452:9 [INFO] [stdout] | [INFO] [stdout] 438 | let expr = parser.expression().map_err(|mut err| { [INFO] [stdout] | ---- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 452 | / TypeChecker::new() [INFO] [stdout] 453 | | .visit_expr(&mut None, expr)? [INFO] [stdout] | | ^ [INFO] [stdout] | | | [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | | these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] | |_________________________________________these values have significant drop implementation and will observe changes in drop order under Edition 2024 [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 94 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `wrecc_compiler` (lib test) due to 95 previous errors [INFO] running `Command { std: "docker" "inspect" "05c779303c1d1467c02e2859fcd8436cd908e618aa24530c765c6ecec938d921", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "05c779303c1d1467c02e2859fcd8436cd908e618aa24530c765c6ecec938d921", kill_on_drop: false }` [INFO] [stdout] 05c779303c1d1467c02e2859fcd8436cd908e618aa24530c765c6ecec938d921