warning: the feature `async_drop` is incomplete and may not be safe to use and/or cause compiler crashes
--> /tmp/icemaker_global_tempdir.eWzJdz2LuuZU/rustc_testrunner_tmpdir_reporting.3KMPI2icPkwH/mvce.rs:1:12
|
1 | #![feature(async_drop)]
| ^^^^^^^^^^
|
= note: see issue #126482 <https://github.com/rust-lang/rust/issues/126482> for more information
= note: `#[warn(incomplete_features)]` on by default
warning: value assigned to `f` is never read
--> /tmp/icemaker_global_tempdir.eWzJdz2LuuZU/rustc_testrunner_tmpdir_reporting.3KMPI2icPkwH/mvce.rs:4:21
|
4 | let mut f = None;
| ^^^^ this value is reassigned later and never used
5 | f = Some(async {});
| - `f` is overwritten here before the previous value is read
|
= note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
warning: unused implementer of `Future` that must be used
--> /tmp/icemaker_global_tempdir.eWzJdz2LuuZU/rustc_testrunner_tmpdir_reporting.3KMPI2icPkwH/mvce.rs:3:5
|
3 | / async {
4 | | let mut f = None;
5 | | f = Some(async {});
6 | | f
7 | | };
| |_____^
|
= note: futures do nothing unless you `.await` or poll them
= note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
error: internal compiler error: /rustc-dev/0cf96812614b8250543d749629867b36f2757f4d/compiler/rustc_mir_transform/src/validate.rs:82:25: broken MIR in DropGlue(DefId(2:3278 ~ core[e0f7]::ptr::drop_glue), Some(Coroutine(DefId(0:4 ~ mvce[9705]::main::{closure#0}), [(), std::future::ResumeTy, (), std::option::Option<Coroutine(DefId(0:5 ~ mvce[9705]::main::{closure#0}::{closure#0}), [(), std::future::ResumeTy, (), (), ()])>, ()]))) (after phase change to runtime-optimized) at bb5[0]:
encountered `_0 = std::task::Poll::<std::option::Option<{async block@/tmp/icemaker_global_tempdir.eWzJdz2LuuZU/rustc_testrunner_tmpdir_reporting.3KMPI2icPkwH/mvce.rs:5:18: 5:23}>>::Ready(move _16)` with incompatible types:
left-hand side has type: ()
right-hand side has type: std::task::Poll<std::option::Option<{async block@/tmp/icemaker_global_tempdir.eWzJdz2LuuZU/rustc_testrunner_tmpdir_reporting.3KMPI2icPkwH/mvce.rs:5:18: 5:23}>>
--> /tmp/icemaker_global_tempdir.eWzJdz2LuuZU/rustc_testrunner_tmpdir_reporting.3KMPI2icPkwH/mvce.rs:7:6
|
7 | };
| ^
thread 'rustc' (2678349) panicked at /rustc-dev/0cf96812614b8250543d749629867b36f2757f4d/compiler/rustc_mir_transform/src/validate.rs:82:25:
Box<dyn Any>
stack backtrace:
0: 0x7f5a06688299 - <<std[e1d9dc41703d3c77]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[e0f79a309d5a3d5c]::fmt::Display>::fmt
1: 0x7f5a06e22e88 - core[e0f79a309d5a3d5c]::fmt::write
2: 0x7f5a0669e326 - <std[e1d9dc41703d3c77]::sys::stdio::unix::Stderr as std[e1d9dc41703d3c77]::io::Write>::write_fmt
3: 0x7f5a0665da5e - std[e1d9dc41703d3c77]::panicking::default_hook::{closure#0}
4: 0x7f5a0667b163 - std[e1d9dc41703d3c77]::panicking::default_hook
5: 0x7f5a05476eb1 - std[e1d9dc41703d3c77]::panicking::update_hook::<alloc[ddaee4004cd2d224]::boxed::Box<rustc_driver_impl[a975172c0be376f0]::install_ice_hook::{closure#1}>>::{closure#0}
6: 0x7f5a0667b442 - std[e1d9dc41703d3c77]::panicking::panic_with_hook
7: 0x7f5a054a4671 - std[e1d9dc41703d3c77]::panicking::begin_panic::<rustc_errors[4f43504df6b439c3]::ExplicitBug>::{closure#0}
8: 0x7f5a0549d666 - std[e1d9dc41703d3c77]::sys::backtrace::__rust_end_short_backtrace::<std[e1d9dc41703d3c77]::panicking::begin_panic<rustc_errors[4f43504df6b439c3]::ExplicitBug>::{closure#0}, !>
9: 0x7f5a0549d3cb - std[e1d9dc41703d3c77]::panicking::begin_panic::<rustc_errors[4f43504df6b439c3]::ExplicitBug>
10: 0x7f5a054afb61 - <rustc_errors[4f43504df6b439c3]::diagnostic::BugAbort as rustc_errors[4f43504df6b439c3]::diagnostic::EmissionGuarantee>::emit_producing_guarantee
11: 0x7f5a05b1393c - <rustc_errors[4f43504df6b439c3]::DiagCtxtHandle>::span_bug::<rustc_span[48046fdc775f1ad7]::span_encoding::Span, alloc[ddaee4004cd2d224]::string::String>
12: 0x7f5a05b3efc6 - rustc_middle[c9c104d2dfb47290]::util::bug::opt_span_bug_fmt::<rustc_span[48046fdc775f1ad7]::span_encoding::Span>::{closure#0}
13: 0x7f5a05b3f152 - rustc_middle[c9c104d2dfb47290]::ty::context::tls::with_opt::<rustc_middle[c9c104d2dfb47290]::util::bug::opt_span_bug_fmt<rustc_span[48046fdc775f1ad7]::span_encoding::Span>::{closure#0}, !>::{closure#0}
14: 0x7f5a05b2d80b - rustc_middle[c9c104d2dfb47290]::ty::context::tls::with_context_opt::<rustc_middle[c9c104d2dfb47290]::ty::context::tls::with_opt<rustc_middle[c9c104d2dfb47290]::util::bug::opt_span_bug_fmt<rustc_span[48046fdc775f1ad7]::span_encoding::Span>::{closure#0}, !>::{closure#0}, !>
15: 0x7f5a03683038 - rustc_middle[c9c104d2dfb47290]::util::bug::span_bug_fmt::<rustc_span[48046fdc775f1ad7]::span_encoding::Span>
16: 0x7f5a041cf8b5 - <rustc_mir_transform[8d0497c8b7978976]::validate::CfgChecker>::fail::<alloc[ddaee4004cd2d224]::string::String>
17: 0x7f5a07b77601 - <rustc_mir_transform[8d0497c8b7978976]::validate::Validator as rustc_mir_transform[8d0497c8b7978976]::pass_manager::MirPass>::run_pass
18: 0x7f5a07b5b96e - rustc_mir_transform[8d0497c8b7978976]::pass_manager::run_passes_inner
19: 0x7f5a07b08e59 - rustc_mir_transform[8d0497c8b7978976]::shim::make_shim
20: 0x7f5a07b08220 - rustc_query_impl[85ac94c76a033c3c]::query_impl::mir_shims::invoke_provider_fn::__rust_begin_short_backtrace
21: 0x7f5a07b0e66d - rustc_query_impl[85ac94c76a033c3c]::execution::try_execute_query::<rustc_middle[c9c104d2dfb47290]::query::caches::DefaultCache<rustc_middle[c9c104d2dfb47290]::ty::instance::InstanceKind, rustc_middle[c9c104d2dfb47290]::query::erase::ErasedData<[u8; 8usize]>>, false>
22: 0x7f5a07b0e37f - rustc_query_impl[85ac94c76a033c3c]::query_impl::mir_shims::execute_query_non_incr::__rust_end_short_backtrace
23: 0x7f5a07892c3d - <rustc_middle[c9c104d2dfb47290]::ty::context::TyCtxt>::instance_mir
24: 0x7f5a07896b4b - rustc_monomorphize[415bfb07c478fbce]::collector::items_of_instance
25: 0x7f5a07896ad1 - rustc_query_impl[85ac94c76a033c3c]::query_impl::items_of_instance::invoke_provider_fn::__rust_begin_short_backtrace
26: 0x7f5a0789376a - rustc_query_impl[85ac94c76a033c3c]::execution::try_execute_query::<rustc_middle[c9c104d2dfb47290]::query::caches::DefaultCache<(rustc_middle[c9c104d2dfb47290]::ty::instance::Instance, rustc_middle[c9c104d2dfb47290]::mono::CollectionMode), rustc_middle[c9c104d2dfb47290]::query::erase::ErasedData<[u8; 32usize]>>, false>
27: 0x7f5a078933d3 - rustc_query_impl[85ac94c76a033c3c]::query_impl::items_of_instance::execute_query_non_incr::__rust_end_short_backtrace
28: 0x7f5a07bd8bef - rustc_monomorphize[415bfb07c478fbce]::collector::collect_items_rec
29: 0x7f5a07bda9f5 - rustc_monomorphize[415bfb07c478fbce]::collector::collect_items_rec
30: 0x7f5a07bde379 - rustc_monomorphize[415bfb07c478fbce]::collector::collect_crate_mono_items::{closure#1}::{closure#0}
31: 0x7f5a07bdf035 - rustc_monomorphize[415bfb07c478fbce]::partitioning::collect_and_partition_mono_items
32: 0x7f5a07bdece4 - rustc_query_impl[85ac94c76a033c3c]::query_impl::collect_and_partition_mono_items::invoke_provider_fn::__rust_begin_short_backtrace
33: 0x7f5a07fd07ac - rustc_query_impl[85ac94c76a033c3c]::execution::try_execute_query::<rustc_middle[c9c104d2dfb47290]::query::caches::SingleCache<rustc_middle[c9c104d2dfb47290]::query::erase::ErasedData<[u8; 24usize]>>, false>
34: 0x7f5a07fd053c - rustc_query_impl[85ac94c76a033c3c]::query_impl::collect_and_partition_mono_items::execute_query_non_incr::__rust_end_short_backtrace
35: 0x7f5a080c5672 - rustc_codegen_ssa[4ddc32a98fb5b30b]::base::codegen_crate::<rustc_codegen_llvm[95658c7795df270]::LlvmCodegenBackend, rustc_codegen_llvm[95658c7795df270]::ModuleLlvm>
36: 0x7f5a080c538d - <rustc_codegen_llvm[95658c7795df270]::LlvmCodegenBackend as rustc_codegen_ssa[4ddc32a98fb5b30b]::traits::backend::CodegenBackend>::codegen_crate
37: 0x7f5a0801be9c - <rustc_interface[de505257a3491ef8]::queries::Linker>::codegen_and_build_linker
38: 0x7f5a0801652b - rustc_interface[de505257a3491ef8]::interface::run_compiler::<(), rustc_driver_impl[a975172c0be376f0]::run_compiler::{closure#0}>::{closure#1}
39: 0x7f5a07f9dd3e - std[e1d9dc41703d3c77]::sys::backtrace::__rust_begin_short_backtrace::<rustc_interface[de505257a3491ef8]::util::run_in_thread_with_globals<rustc_interface[de505257a3491ef8]::util::run_in_thread_pool_with_globals<rustc_interface[de505257a3491ef8]::interface::run_compiler<(), rustc_driver_impl[a975172c0be376f0]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>
40: 0x7f5a07f9e42d - <std[e1d9dc41703d3c77]::thread::lifecycle::spawn_unchecked<rustc_interface[de505257a3491ef8]::util::run_in_thread_with_globals<rustc_interface[de505257a3491ef8]::util::run_in_thread_pool_with_globals<rustc_interface[de505257a3491ef8]::interface::run_compiler<(), rustc_driver_impl[a975172c0be376f0]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>::{closure#1} as core[e0f79a309d5a3d5c]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
41: 0x7f5a07f9f22c - <std[e1d9dc41703d3c77]::sys::thread::unix::Thread>::new::thread_start
42: 0x7f5a014981b9 - <unknown>
43: 0x7f5a0151d21c - <unknown>
44: 0x0 - <unknown>
note: we would appreciate a bug report: https://github.com/rust-lang/rust/issues/new?labels=C-bug%2C+I-ICE%2C+T-compiler&template=ice.md
note: please make sure that you have updated to the latest nightly
note: rustc 1.98.0-nightly (0cf968126 2026-06-04) running on x86_64-unknown-linux-gnu
note: compiler flags: -Z dump-mir-dir=dir
query stack during panic:
#0 [mir_shims] generating MIR shim for `core::ptr::drop_glue`, instance=DropGlue(DefId(2:3278 ~ core[e0f7]::ptr::drop_glue), Some(Coroutine(DefId(0:4 ~ mvce[9705]::main::{closure#0}), [(), core::future::ResumeTy, (), core::option::Option<Coroutine(DefId(0:5 ~ mvce[9705]::main::{closure#0}::{closure#0}), [(), core::future::ResumeTy, (), (), ()])>, ()])))
#1 [items_of_instance] collecting items used by `core::ptr::drop_glue::<{async block@/tmp/icemaker_global_tempdir.eWzJdz2LuuZU/rustc_testrunner_tmpdir_reporting.3KMPI2icPkwH/mvce.rs:3:5: 3:10}> - shim(Some({async block@/tmp/icemaker_global_tempdir.eWzJdz2LuuZU/rustc_testrunner_tmpdir_reporting.3KMPI2icPkwH/mvce.rs:3:5: 3:10}))`
#2 [collect_and_partition_mono_items] collect_and_partition_mono_items
end of query stack
error: aborting due to 1 previous error; 3 warnings emitted
This is happening since #156649
snippet:
Version information
Possibly related line of code:
rust/compiler/rustc_mir_transform/src/validate.rs
Lines 76 to 88 in 0cf9681
Command:
/home/matthias/.rustup/toolchains/master/bin/rustc --edition=2024Program output
@rustbot label +F-async_drop