[INFO] crate thin_trait_object 1.1.2 is already in cache [INFO] checking thin_trait_object-1.1.2 against try#4d98531622e1718ae0bc3c7a1ab9cd8938428452+rustflags=-Dtail_expr_drop_order for pr-129604 [INFO] extracting crate thin_trait_object 1.1.2 into /workspace/builds/worker-0-tc2/source [INFO] validating manifest of crates.io crate thin_trait_object 1.1.2 on toolchain 4d98531622e1718ae0bc3c7a1ab9cd8938428452 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4d98531622e1718ae0bc3c7a1ab9cd8938428452" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking crates.io crate thin_trait_object 1.1.2 [INFO] finished tweaking crates.io crate thin_trait_object 1.1.2 [INFO] tweaked toml for crates.io crate thin_trait_object 1.1.2 written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] crate crates.io crate thin_trait_object 1.1.2 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] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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] a3690c89b5d1644085f7977080e9a4506033a419e09231065945ddcf68094bb7 [INFO] running `Command { std: "docker" "start" "-a" "a3690c89b5d1644085f7977080e9a4506033a419e09231065945ddcf68094bb7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "a3690c89b5d1644085f7977080e9a4506033a419e09231065945ddcf68094bb7", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "a3690c89b5d1644085f7977080e9a4506033a419e09231065945ddcf68094bb7", kill_on_drop: false }` [INFO] [stdout] a3690c89b5d1644085f7977080e9a4506033a419e09231065945ddcf68094bb7 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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] 48f522188d39c44c39577fa70a7519b998d6558b45ae357fc287e6d2b2c89e87 [INFO] running `Command { std: "docker" "start" "-a" "48f522188d39c44c39577fa70a7519b998d6558b45ae357fc287e6d2b2c89e87", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.24 [INFO] [stderr] Compiling syn v1.0.62 [INFO] [stderr] Compiling unicode-xid v0.2.1 [INFO] [stderr] Compiling once_cell v1.7.2 [INFO] [stderr] Compiling replace_with v0.1.7 [INFO] [stderr] Checking quote v1.0.9 [INFO] [stderr] Checking thin_trait_object v1.1.2 (/opt/rustwide/workdir) [INFO] [stdout] warning: fields `name` and `paren` are never read [INFO] [stdout] --> src/options.rs:37:9 [INFO] [stdout] | [INFO] [stdout] 36 | Vtable { [INFO] [stdout] | ------ fields in this variant [INFO] [stdout] 37 | name: custom_token::Vtable, [INFO] [stdout] | ^^^^ [INFO] [stdout] 38 | paren: token::Paren, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `eq` are never read [INFO] [stdout] --> src/options.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 51 | InlineVtable { [INFO] [stdout] | ------------ fields in this variant [INFO] [stdout] 52 | name: custom_token::InlineVtable, [INFO] [stdout] | ^^^^ [INFO] [stdout] 53 | eq: Token![=], [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `paren` are never read [INFO] [stdout] --> src/options.rs:71:9 [INFO] [stdout] | [INFO] [stdout] 70 | TraitObject { [INFO] [stdout] | ----------- fields in this variant [INFO] [stdout] 71 | name: custom_token::TraitObject, [INFO] [stdout] | ^^^^ [INFO] [stdout] 72 | paren: token::Paren, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `eq` are never read [INFO] [stdout] --> src/options.rs:86:9 [INFO] [stdout] | [INFO] [stdout] 85 | DropAbi { [INFO] [stdout] | ------- fields in this variant [INFO] [stdout] 86 | name: custom_token::DropAbi, [INFO] [stdout] | ^^^^ [INFO] [stdout] 87 | eq: Token![=], [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `paren` are never read [INFO] [stdout] --> src/options.rs:107:9 [INFO] [stdout] | [INFO] [stdout] 106 | MarkerTraits { [INFO] [stdout] | ------------ fields in this variant [INFO] [stdout] 107 | name: custom_token::MarkerTraits, [INFO] [stdout] | ^^^^ [INFO] [stdout] 108 | paren: token::Paren, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `eq` are never read [INFO] [stdout] --> src/options.rs:122:9 [INFO] [stdout] | [INFO] [stdout] 121 | StoreLayout { [INFO] [stdout] | ----------- fields in this variant [INFO] [stdout] 122 | name: custom_token::StoreLayout, [INFO] [stdout] | ^^^^ [INFO] [stdout] 123 | eq: Token![=], [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/options.rs:208:31 [INFO] [stdout] | [INFO] [stdout] 208 | pub struct $name (pub Span); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 230 | / custom_tokens! { [INFO] [stdout] 231 | | (Vtable, "vtable"), [INFO] [stdout] | | ------ field in this struct [INFO] [stdout] 232 | | (InlineVtable, "inline_vtable"), [INFO] [stdout] 233 | | (TraitObject, "trait_object"), [INFO] [stdout] ... | [INFO] [stdout] 236 | | (StoreLayout, "store_layout"), [INFO] [stdout] 237 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] = note: this warning originates in the macro `custom_tokens` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/options.rs:208:31 [INFO] [stdout] | [INFO] [stdout] 208 | pub struct $name (pub Span); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 230 | / custom_tokens! { [INFO] [stdout] 231 | | (Vtable, "vtable"), [INFO] [stdout] 232 | | (InlineVtable, "inline_vtable"), [INFO] [stdout] | | ------------ field in this struct [INFO] [stdout] 233 | | (TraitObject, "trait_object"), [INFO] [stdout] ... | [INFO] [stdout] 236 | | (StoreLayout, "store_layout"), [INFO] [stdout] 237 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] = note: this warning originates in the macro `custom_tokens` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/options.rs:208:31 [INFO] [stdout] | [INFO] [stdout] 208 | pub struct $name (pub Span); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 230 | / custom_tokens! { [INFO] [stdout] 231 | | (Vtable, "vtable"), [INFO] [stdout] 232 | | (InlineVtable, "inline_vtable"), [INFO] [stdout] 233 | | (TraitObject, "trait_object"), [INFO] [stdout] | | ----------- field in this struct [INFO] [stdout] ... | [INFO] [stdout] 236 | | (StoreLayout, "store_layout"), [INFO] [stdout] 237 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] = note: this warning originates in the macro `custom_tokens` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/options.rs:208:31 [INFO] [stdout] | [INFO] [stdout] 208 | pub struct $name (pub Span); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 230 | / custom_tokens! { [INFO] [stdout] 231 | | (Vtable, "vtable"), [INFO] [stdout] 232 | | (InlineVtable, "inline_vtable"), [INFO] [stdout] 233 | | (TraitObject, "trait_object"), [INFO] [stdout] 234 | | (DropAbi, "drop_abi"), [INFO] [stdout] | | ------- field in this struct [INFO] [stdout] 235 | | (MarkerTraits, "marker_traits"), [INFO] [stdout] 236 | | (StoreLayout, "store_layout"), [INFO] [stdout] 237 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] = note: this warning originates in the macro `custom_tokens` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/options.rs:208:31 [INFO] [stdout] | [INFO] [stdout] 208 | pub struct $name (pub Span); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 230 | / custom_tokens! { [INFO] [stdout] 231 | | (Vtable, "vtable"), [INFO] [stdout] 232 | | (InlineVtable, "inline_vtable"), [INFO] [stdout] 233 | | (TraitObject, "trait_object"), [INFO] [stdout] 234 | | (DropAbi, "drop_abi"), [INFO] [stdout] 235 | | (MarkerTraits, "marker_traits"), [INFO] [stdout] | | ------------ field in this struct [INFO] [stdout] 236 | | (StoreLayout, "store_layout"), [INFO] [stdout] 237 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] = note: this warning originates in the macro `custom_tokens` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/options.rs:208:31 [INFO] [stdout] | [INFO] [stdout] 208 | pub struct $name (pub Span); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 230 | / custom_tokens! { [INFO] [stdout] 231 | | (Vtable, "vtable"), [INFO] [stdout] 232 | | (InlineVtable, "inline_vtable"), [INFO] [stdout] 233 | | (TraitObject, "trait_object"), [INFO] [stdout] ... | [INFO] [stdout] 236 | | (StoreLayout, "store_layout"), [INFO] [stdout] | | ----------- field in this struct [INFO] [stdout] 237 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] = note: this warning originates in the macro `custom_tokens` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/attr.rs:46:26 [INFO] [stdout] | [INFO] [stdout] 45 | |markers| { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 46 | Box::new(move |bound: TraitBound| { [INFO] [stdout] | __________________________^ [INFO] [stdout] 47 | | for marker in &markers { [INFO] [stdout] 48 | | if bound.path == marker.path { [INFO] [stdout] 49 | | return Some((bound, marker.unsafety.is_some())); [INFO] [stdout] ... | [INFO] [stdout] 52 | | None [INFO] [stdout] 53 | | }) [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/marker_traits.rs:98:23 [INFO] [stdout] | [INFO] [stdout] 97 | pub fn default_marker_filter(bound: TraitBound) -> Option<(TraitBound, bool)> { [INFO] [stdout] | ----------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 98 | LOOKUP_TABLE.with(|lookup_table| { [INFO] [stdout] | _______________________^ [INFO] [stdout] 99 | | for (short_name, full_path, is_unsafe) in lookup_table.borrow().iter().cloned() { [INFO] [stdout] 100 | | if bound.path == make_path!(mkseg(short_name)) || bound.path == full_path { [INFO] [stdout] 101 | | return Some((bound, is_unsafe)); [INFO] [stdout] ... | [INFO] [stdout] 104 | | None [INFO] [stdout] 105 | | }) [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/vtable.rs:281:23 [INFO] [stdout] | [INFO] [stdout] 267 | pub fn into_signature(self, mut default_argname: impl FnMut(u32) -> Ident) -> Signature { [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] 281 | generics: lifetimes_to_generics(self.lifetimes), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/vtable.rs:283:21 [INFO] [stdout] | [INFO] [stdout] 267 | pub fn into_signature(self, mut default_argname: impl FnMut(u32) -> Ident) -> Signature { [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] 283 | inputs: self [INFO] [stdout] | _____________________^ [INFO] [stdout] 284 | | .inputs [INFO] [stdout] 285 | | .into_iter() [INFO] [stdout] 286 | | .map(|x| match x { [INFO] [stdout] ... | [INFO] [stdout] 291 | | }) [INFO] [stdout] 292 | | .collect(), [INFO] [stdout] | |__________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/vtable.rs:304:17 [INFO] [stdout] | [INFO] [stdout] 300 | replace_with_or_abort(input, |x| { [INFO] [stdout] | - these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 304 | x.into_bare_arg_with_ptr_receiver().into() [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/vtable.rs:326:12 [INFO] [stdout] | [INFO] [stdout] 312 | fn try_from(method: TraitItemMethod) -> Result { [INFO] [stdout] | ----------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 313 | let signature = method.sig; [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 326 | Ok(Self { [INFO] [stdout] | ____________^ [INFO] [stdout] 327 | | lifetimes: generics_to_lifetimes(signature.generics)?, [INFO] [stdout] 328 | | // The function pointer will be made unsafe later, [INFO] [stdout] 329 | | // don't touch its unsafety just yet. [INFO] [stdout] ... | [INFO] [stdout] 339 | | output: signature.output, [INFO] [stdout] 340 | | }) [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/vtable.rs:357:18 [INFO] [stdout] | [INFO] [stdout] 343 | fn bare_fn_arg_to_fn_arg(argument: BareFnArg, default_argname: impl FnOnce() -> Ident) -> FnArg { [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] 344 | let pat = { [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 345 | let pat = PatIdent { [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 357 | FnArg::Typed(PatType { [INFO] [stdout] | __________________^ [INFO] [stdout] 358 | | attrs: argument.attrs, [INFO] [stdout] 359 | | pat, [INFO] [stdout] 360 | | colon_token: Colon { [INFO] [stdout] ... | [INFO] [stdout] 363 | | ty: Box::new(argument.ty), [INFO] [stdout] 364 | | }) [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/vtable.rs:395:8 [INFO] [stdout] | [INFO] [stdout] 367 | fn generics_to_lifetimes(generics: Generics) -> Result { [INFO] [stdout] | ------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 374 | let lifetimes = { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 375 | let mut lifetimes = Punctuated::new(); [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 376 | for param in generics.params { [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 377 | match param { [INFO] [stdout] 378 | GenericParam::Lifetime(lifetime) => lifetimes.push(lifetime), [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 379 | GenericParam::Type(ty) => { [INFO] [stdout] | -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 385 | GenericParam::Const(constant) => { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 395 | Ok(BoundLifetimes { [INFO] [stdout] | ________^ [INFO] [stdout] 396 | | for_token: Default::default(), [INFO] [stdout] 397 | | lt_token: generics.lt_token.unwrap_or_else(Default::default), [INFO] [stdout] 398 | | lifetimes, [INFO] [stdout] 399 | | gt_token: generics.gt_token.unwrap_or_else(Default::default), [INFO] [stdout] 400 | | }) [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] --> src/vtable.rs:412:23 [INFO] [stdout] | [INFO] [stdout] 402 | fn lifetimes_to_generics(lifetimes: BoundLifetimes) -> Generics { [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 403 | let params = lifetimes [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 412 | where_clause: 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: aborting due to 9 previous errors; 12 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `paren` are never read [INFO] [stdout] --> src/options.rs:37:9 [INFO] [stdout] | [INFO] [stdout] 36 | Vtable { [INFO] [stdout] | ------ fields in this variant [INFO] [stdout] 37 | name: custom_token::Vtable, [INFO] [stdout] | ^^^^ [INFO] [stdout] 38 | paren: token::Paren, [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `eq` are never read [INFO] [stdout] --> src/options.rs:52:9 [INFO] [stdout] | [INFO] [stdout] 51 | InlineVtable { [INFO] [stdout] | ------------ fields in this variant [INFO] [stdout] 52 | name: custom_token::InlineVtable, [INFO] [stdout] | ^^^^ [INFO] [stdout] 53 | eq: Token![=], [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `paren` are never read [INFO] [stdout] --> src/options.rs:71:9 [INFO] [stdout] | [INFO] [stdout] 70 | TraitObject { [INFO] [stdout] | ----------- fields in this variant [INFO] [stdout] 71 | name: custom_token::TraitObject, [INFO] [stdout] | ^^^^ [INFO] [stdout] 72 | paren: token::Paren, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `eq` are never read [INFO] [stdout] --> src/options.rs:86:9 [INFO] [stdout] | [INFO] [stdout] 85 | DropAbi { [INFO] [stdout] | ------- fields in this variant [INFO] [stdout] 86 | name: custom_token::DropAbi, [INFO] [stdout] | ^^^^ [INFO] [stdout] 87 | eq: Token![=], [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `paren` are never read [INFO] [stdout] --> src/options.rs:107:9 [INFO] [stdout] | [INFO] [stdout] 106 | MarkerTraits { [INFO] [stdout] | ------------ fields in this variant [INFO] [stdout] 107 | name: custom_token::MarkerTraits, [INFO] [stdout] | ^^^^ [INFO] [stdout] 108 | paren: token::Paren, [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: fields `name` and `eq` are never read [INFO] [stdout] --> src/options.rs:122:9 [INFO] [stdout] | [INFO] [stdout] 121 | StoreLayout { [INFO] [stdout] | ----------- fields in this variant [INFO] [stdout] 122 | name: custom_token::StoreLayout, [INFO] [stdout] | ^^^^ [INFO] [stdout] 123 | eq: Token![=], [INFO] [stdout] | ^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/options.rs:208:31 [INFO] [stdout] | [INFO] [stdout] 208 | pub struct $name (pub Span); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 230 | / custom_tokens! { [INFO] [stdout] 231 | | (Vtable, "vtable"), [INFO] [stdout] | | ------ field in this struct [INFO] [stdout] 232 | | (InlineVtable, "inline_vtable"), [INFO] [stdout] 233 | | (TraitObject, "trait_object"), [INFO] [stdout] ... | [INFO] [stdout] 236 | | (StoreLayout, "store_layout"), [INFO] [stdout] 237 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] = note: this warning originates in the macro `custom_tokens` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/options.rs:208:31 [INFO] [stdout] | [INFO] [stdout] 208 | pub struct $name (pub Span); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 230 | / custom_tokens! { [INFO] [stdout] 231 | | (Vtable, "vtable"), [INFO] [stdout] 232 | | (InlineVtable, "inline_vtable"), [INFO] [stdout] | | ------------ field in this struct [INFO] [stdout] 233 | | (TraitObject, "trait_object"), [INFO] [stdout] ... | [INFO] [stdout] 236 | | (StoreLayout, "store_layout"), [INFO] [stdout] 237 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] = note: this warning originates in the macro `custom_tokens` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/options.rs:208:31 [INFO] [stdout] | [INFO] [stdout] 208 | pub struct $name (pub Span); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 230 | / custom_tokens! { [INFO] [stdout] 231 | | (Vtable, "vtable"), [INFO] [stdout] 232 | | (InlineVtable, "inline_vtable"), [INFO] [stdout] 233 | | (TraitObject, "trait_object"), [INFO] [stdout] | | ----------- field in this struct [INFO] [stdout] ... | [INFO] [stdout] 236 | | (StoreLayout, "store_layout"), [INFO] [stdout] 237 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] = note: this warning originates in the macro `custom_tokens` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/options.rs:208:31 [INFO] [stdout] | [INFO] [stdout] 208 | pub struct $name (pub Span); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 230 | / custom_tokens! { [INFO] [stdout] 231 | | (Vtable, "vtable"), [INFO] [stdout] 232 | | (InlineVtable, "inline_vtable"), [INFO] [stdout] 233 | | (TraitObject, "trait_object"), [INFO] [stdout] 234 | | (DropAbi, "drop_abi"), [INFO] [stdout] | | ------- field in this struct [INFO] [stdout] 235 | | (MarkerTraits, "marker_traits"), [INFO] [stdout] 236 | | (StoreLayout, "store_layout"), [INFO] [stdout] 237 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] = note: this warning originates in the macro `custom_tokens` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/options.rs:208:31 [INFO] [stdout] | [INFO] [stdout] 208 | pub struct $name (pub Span); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 230 | / custom_tokens! { [INFO] [stdout] 231 | | (Vtable, "vtable"), [INFO] [stdout] 232 | | (InlineVtable, "inline_vtable"), [INFO] [stdout] 233 | | (TraitObject, "trait_object"), [INFO] [stdout] 234 | | (DropAbi, "drop_abi"), [INFO] [stdout] 235 | | (MarkerTraits, "marker_traits"), [INFO] [stdout] | | ------------ field in this struct [INFO] [stdout] 236 | | (StoreLayout, "store_layout"), [INFO] [stdout] 237 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] = note: this warning originates in the macro `custom_tokens` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `0` is never read [INFO] [stdout] --> src/options.rs:208:31 [INFO] [stdout] | [INFO] [stdout] 208 | pub struct $name (pub Span); [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 230 | / custom_tokens! { [INFO] [stdout] 231 | | (Vtable, "vtable"), [INFO] [stdout] 232 | | (InlineVtable, "inline_vtable"), [INFO] [stdout] 233 | | (TraitObject, "trait_object"), [INFO] [stdout] ... | [INFO] [stdout] 236 | | (StoreLayout, "store_layout"), [INFO] [stdout] | | ----------- field in this struct [INFO] [stdout] 237 | | } [INFO] [stdout] | |_____- in this macro invocation [INFO] [stdout] | [INFO] [stdout] = help: consider removing this field [INFO] [stdout] = note: this warning originates in the macro `custom_tokens` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/attr.rs:46:26 [INFO] [stdout] | [INFO] [stdout] 45 | |markers| { [INFO] [stdout] | ------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 46 | Box::new(move |bound: TraitBound| { [INFO] [stdout] | __________________________^ [INFO] [stdout] 47 | | for marker in &markers { [INFO] [stdout] 48 | | if bound.path == marker.path { [INFO] [stdout] 49 | | return Some((bound, marker.unsafety.is_some())); [INFO] [stdout] ... | [INFO] [stdout] 52 | | None [INFO] [stdout] 53 | | }) [INFO] [stdout] | |_________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] = note: requested on the command line with `-D tail-expr-drop-order` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/marker_traits.rs:98:23 [INFO] [stdout] | [INFO] [stdout] 97 | pub fn default_marker_filter(bound: TraitBound) -> Option<(TraitBound, bool)> { [INFO] [stdout] | ----------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 98 | LOOKUP_TABLE.with(|lookup_table| { [INFO] [stdout] | _______________________^ [INFO] [stdout] 99 | | for (short_name, full_path, is_unsafe) in lookup_table.borrow().iter().cloned() { [INFO] [stdout] 100 | | if bound.path == make_path!(mkseg(short_name)) || bound.path == full_path { [INFO] [stdout] 101 | | return Some((bound, is_unsafe)); [INFO] [stdout] ... | [INFO] [stdout] 104 | | None [INFO] [stdout] 105 | | }) [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/vtable.rs:281:23 [INFO] [stdout] | [INFO] [stdout] 267 | pub fn into_signature(self, mut default_argname: impl FnMut(u32) -> Ident) -> Signature { [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] 281 | generics: lifetimes_to_generics(self.lifetimes), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/vtable.rs:283:21 [INFO] [stdout] | [INFO] [stdout] 267 | pub fn into_signature(self, mut default_argname: impl FnMut(u32) -> Ident) -> Signature { [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] 283 | inputs: self [INFO] [stdout] | _____________________^ [INFO] [stdout] 284 | | .inputs [INFO] [stdout] 285 | | .into_iter() [INFO] [stdout] 286 | | .map(|x| match x { [INFO] [stdout] ... | [INFO] [stdout] 291 | | }) [INFO] [stdout] 292 | | .collect(), [INFO] [stdout] | |__________________________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `thin_trait_object` (lib test) due to 10 previous errors; 12 warnings emitted [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/vtable.rs:304:17 [INFO] [stdout] | [INFO] [stdout] 300 | replace_with_or_abort(input, |x| { [INFO] [stdout] | - these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 304 | x.into_bare_arg_with_ptr_receiver().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] [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] --> src/vtable.rs:326:12 [INFO] [stdout] | [INFO] [stdout] 312 | fn try_from(method: TraitItemMethod) -> Result { [INFO] [stdout] | ----------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 313 | let signature = method.sig; [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 326 | Ok(Self { [INFO] [stdout] | ____________^ [INFO] [stdout] 327 | | lifetimes: generics_to_lifetimes(signature.generics)?, [INFO] [stdout] 328 | | // The function pointer will be made unsafe later, [INFO] [stdout] 329 | | // don't touch its unsafety just yet. [INFO] [stdout] ... | [INFO] [stdout] 339 | | output: signature.output, [INFO] [stdout] 340 | | }) [INFO] [stdout] | |_________^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/vtable.rs:357:18 [INFO] [stdout] | [INFO] [stdout] 343 | fn bare_fn_arg_to_fn_arg(argument: BareFnArg, default_argname: impl FnOnce() -> Ident) -> FnArg { [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] 344 | let pat = { [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 345 | let pat = PatIdent { [INFO] [stdout] | --- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 357 | FnArg::Typed(PatType { [INFO] [stdout] | __________________^ [INFO] [stdout] 358 | | attrs: argument.attrs, [INFO] [stdout] 359 | | pat, [INFO] [stdout] 360 | | colon_token: Colon { [INFO] [stdout] ... | [INFO] [stdout] 363 | | ty: Box::new(argument.ty), [INFO] [stdout] 364 | | }) [INFO] [stdout] | |_____^ [INFO] [stdout] | [INFO] [stdout] = warning: this changes meaning in Rust 2024 [INFO] [stdout] = note: for more information, see issue #123739 [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: these values and local bindings have significant drop implementation that will have a different drop order from that of Edition 2021 [INFO] [stdout] --> src/vtable.rs:395:8 [INFO] [stdout] | [INFO] [stdout] 367 | fn generics_to_lifetimes(generics: Generics) -> Result { [INFO] [stdout] | ------------------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 374 | let lifetimes = { [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 375 | let mut lifetimes = Punctuated::new(); [INFO] [stdout] | --------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 376 | for param in generics.params { [INFO] [stdout] | ----- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 377 | match param { [INFO] [stdout] 378 | GenericParam::Lifetime(lifetime) => lifetimes.push(lifetime), [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 379 | GenericParam::Type(ty) => { [INFO] [stdout] | -- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 385 | GenericParam::Const(constant) => { [INFO] [stdout] | -------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 395 | Ok(BoundLifetimes { [INFO] [stdout] | ________^ [INFO] [stdout] 396 | | for_token: Default::default(), [INFO] [stdout] 397 | | lt_token: generics.lt_token.unwrap_or_else(Default::default), [INFO] [stdout] 398 | | lifetimes, [INFO] [stdout] 399 | | gt_token: generics.gt_token.unwrap_or_else(Default::default), [INFO] [stdout] 400 | | }) [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] --> src/vtable.rs:412:23 [INFO] [stdout] | [INFO] [stdout] 402 | fn lifetimes_to_generics(lifetimes: BoundLifetimes) -> Generics { [INFO] [stdout] | ------------------------- these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] 403 | let params = lifetimes [INFO] [stdout] | ------ these values have significant drop implementation and will observe changes in drop order under Edition 2024 [INFO] [stdout] ... [INFO] [stdout] 412 | where_clause: 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: aborting due to 9 previous errors; 12 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] error: could not compile `thin_trait_object` (lib) due to 10 previous errors; 12 warnings emitted [INFO] running `Command { std: "docker" "inspect" "48f522188d39c44c39577fa70a7519b998d6558b45ae357fc287e6d2b2c89e87", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "48f522188d39c44c39577fa70a7519b998d6558b45ae357fc287e6d2b2c89e87", kill_on_drop: false }` [INFO] [stdout] 48f522188d39c44c39577fa70a7519b998d6558b45ae357fc287e6d2b2c89e87