- Notifications
You must be signed in to change notification settings - Fork 13.8k
Closed
Labels
C-bugCategory: This is a bug.Category: This is a bug.F-async_drop`#![feature(async_drop)]``#![feature(async_drop)]`I-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️S-has-mcveStatus: A Minimal Complete and Verifiable Example has been found for this issueStatus: A Minimal Complete and Verifiable Example has been found for this issueT-compilerRelevant to the compiler team, which will review and decide on the PR/issue.Relevant to the compiler team, which will review and decide on the PR/issue.requires-incomplete-featuresThis issue requires the use of incomplete features.This issue requires the use of incomplete features.
Description
Code
the lib.rs https://play.rust-lang.org/?version=nightly&mode=debug&edition=2024&gist=e3445d1d48c59d1535129148ff8ff681
the main.rs https://play.rust-lang.org/?version=nightly&mode=debug&edition=2024&gist=71b08ed816421d78b89b213eaedba212
the user_stack
crate is a local project and not yet open source, but it enabled the async_drop
nightly feature by add dep in Cargo.toml
user_stack = { path = "../user_stack", features = ["async_drop"] }
Meta
rustc --version --verbose
:
rustc 1.88.0-nightly (50aa04180 2025-05-08) binary: rustc commit-hash: 50aa04180709189a03dde5fd1c05751b2625ed37 commit-date: 2025-05-08 host: x86_64-unknown-linux-gnu release: 1.88.0-nightly LLVM version: 20.1.4
Error output
thread 'rustc' panicked at /rustc/50aa04180709189a03dde5fd1c05751b2625ed37/compiler/rustc_span/src/def_id.rs:393:26: DefId::expect_local: `DefId(56:141 ~ user_stack[92be]::tcp::{impl#3})` isn't local stack backtrace: 0: 0x77398a763923 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h35b8f72326f85230 1: 0x77398ae05c07 - core::fmt::write::h73f5af0fa08ac030 2: 0x77398bee42d1 - std::io::Write::write_fmt::h0140e0dae4becf43 3: 0x77398a763782 - std::sys::backtrace::BacktraceLock::print::h2c50f8265df4edf7 4: 0x77398a76737a - std::panicking::default_hook::{{closure}}::h4f831a137f70e67f 5: 0x77398a766eff - std::panicking::default_hook::h47af645a18677257 6: 0x773989795ef3 - std[e444442488e5ea2d]::panicking::update_hook::<alloc[24374ce535a764d]::boxed::Box<rustc_driver_impl[d80da60e87609ad4]::install_ice_hook::{closure#1}>>::{closure#0} 7: 0x77398a767bf3 - std::panicking::rust_panic_with_hook::h2b8636e09e17cf97 8: 0x77398a7678ea - std::panicking::begin_panic_handler::{{closure}}::h21b513d3b95c0c8c 9: 0x77398a763de9 - std::sys::backtrace::__rust_end_short_backtrace::h1fff5f9fcecd2e0e 10: 0x77398a7675ad - __rustc[f67a3b4e60d8f4c4]::rust_begin_unwind 11: 0x773987085ce0 - core::panicking::panic_fmt::h0a5d5e7acfcd4e48 12: 0x773989d88c58 - <rustc_span[e6282e50b7a97c05]::def_id::LocalDefId as rustc_serialize[c7460d2e773e40d7]::serialize::Decodable<rustc_metadata[7b714db6b508e6c0]::rmeta::decoder::DecodeContext>>::decode 13: 0x773989d9d77a - rustc_metadata[7b714db6b508e6c0]::rmeta::decoder::cstore_impl::provide_extern::adt_async_destructor 14: 0x77398c8ab872 - rustc_query_impl[d196c070bbe03594]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[d196c070bbe03594]::query_impl::adt_async_destructor::dynamic_query::{closure#2}::{closure#0}, rustc_middle[dca19e53efad7b1b]::query::erase::Erased<[u8; 4usize]>>.cold 15: 0x77398b7f67fd - rustc_query_system[ff49814a586d4008]::query::plumbing::try_execute_query::<rustc_query_impl[d196c070bbe03594]::DynamicConfig<rustc_query_system[ff49814a586d4008]::query::caches::DefIdCache<rustc_middle[dca19e53efad7b1b]::query::erase::Erased<[u8; 4usize]>>, false, false, false>, rustc_query_impl[d196c070bbe03594]::plumbing::QueryCtxt, true> 16: 0x77398b7f60b9 - rustc_query_impl[d196c070bbe03594]::query_impl::adt_async_destructor::get_query_incr::__rust_end_short_backtrace 17: 0x773989e1e10a - <rustc_middle[dca19e53efad7b1b]::ty::adt::AdtDef>::async_destructor 18: 0x77398a6f3606 - rustc_ty_utils[76373251995fa178]::needs_drop::needs_async_drop_raw 19: 0x77398a24847e - rustc_query_impl[d196c070bbe03594]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[d196c070bbe03594]::query_impl::needs_async_drop_raw::dynamic_query::{closure#2}::{closure#0}, rustc_middle[dca19e53efad7b1b]::query::erase::Erased<[u8; 1usize]>> 20: 0x77398a219803 - <rustc_query_impl[d196c070bbe03594]::query_impl::needs_async_drop_raw::dynamic_query::{closure#2} as core[ce1fa00964895ff1]::ops::function::FnOnce<(rustc_middle[dca19e53efad7b1b]::ty::context::TyCtxt, rustc_middle[dca19e53efad7b1b]::ty::PseudoCanonicalInput<rustc_middle[dca19e53efad7b1b]::ty::Ty>)>>::call_once 21: 0x77398b0a28fa - rustc_query_system[ff49814a586d4008]::query::plumbing::try_execute_query::<rustc_query_impl[d196c070bbe03594]::DynamicConfig<rustc_query_system[ff49814a586d4008]::query::caches::DefaultCache<rustc_middle[dca19e53efad7b1b]::ty::PseudoCanonicalInput<rustc_middle[dca19e53efad7b1b]::ty::Ty>, rustc_middle[dca19e53efad7b1b]::query::erase::Erased<[u8; 1usize]>>, false, false, false>, rustc_query_impl[d196c070bbe03594]::plumbing::QueryCtxt, true> 22: 0x77398a2688eb - rustc_query_impl[d196c070bbe03594]::query_impl::needs_async_drop_raw::get_query_incr::__rust_end_short_backtrace 23: 0x773989eb1b34 - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::is_async_drop_impl 24: 0x77398b1d7dd1 - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::pop_scope 25: 0x77398ba62a2a - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::ast_block_stmts 26: 0x77398ba61e2a - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::ast_block 27: 0x77398b206605 - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::expr_into_dest 28: 0x77398b20ad56 - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::expr_into_dest 29: 0x77398b208c0c - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::expr_into_dest 30: 0x77398b208564 - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::expr_into_dest 31: 0x77398b1f0c24 - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::as_temp::{closure#0} 32: 0x77398b1dfa9c - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::expr_as_place 33: 0x77398b1e0164 - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::expr_as_place 34: 0x77398ba00bb7 - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::lower_scrutinee 35: 0x77398ba007e2 - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::lower_let_expr 36: 0x77398c0cf3ec - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::then_else_break_inner 37: 0x77398c0cee2b - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::then_else_break_inner 38: 0x77398b2091ea - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::expr_into_dest 39: 0x77398b208c0c - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::expr_into_dest 40: 0x77398ba63120 - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::ast_block_stmts 41: 0x77398ba61e2a - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::ast_block 42: 0x77398b206605 - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::expr_into_dest 43: 0x77398b20ad56 - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::expr_into_dest 44: 0x77398b1f0c24 - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::as_temp::{closure#0} 45: 0x77398b42abbb - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::stmt_expr 46: 0x77398b42adcd - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::stmt_expr 47: 0x77398ba629ff - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::ast_block_stmts 48: 0x77398ba61e2a - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::ast_block 49: 0x77398b206605 - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::expr_into_dest 50: 0x77398b208c0c - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::expr_into_dest 51: 0x77398b20a98e - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::expr_into_dest 52: 0x77398b208c0c - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::expr_into_dest 53: 0x77398ba63120 - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::ast_block_stmts 54: 0x77398ba61e2a - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::ast_block 55: 0x77398b206605 - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::expr_into_dest 56: 0x77398b208c0c - <rustc_mir_build[c5b38e827ba5bd28]::builder::Builder>::expr_into_dest 57: 0x77398b1d2ccf - rustc_mir_build[c5b38e827ba5bd28]::builder::build_mir 58: 0x77398ae0a035 - rustc_mir_transform[c6aefdac698137fa]::mir_built 59: 0x77398ae0a007 - rustc_query_impl[d196c070bbe03594]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[d196c070bbe03594]::query_impl::mir_built::dynamic_query::{closure#2}::{closure#0}, rustc_middle[dca19e53efad7b1b]::query::erase::Erased<[u8; 8usize]>> 60: 0x77398b1ab91a - rustc_query_system[ff49814a586d4008]::query::plumbing::try_execute_query::<rustc_query_impl[d196c070bbe03594]::DynamicConfig<rustc_data_structures[c2151ea158282339]::vec_cache::VecCache<rustc_span[e6282e50b7a97c05]::def_id::LocalDefId, rustc_middle[dca19e53efad7b1b]::query::erase::Erased<[u8; 8usize]>, rustc_query_system[ff49814a586d4008]::dep_graph::graph::DepNodeIndex>, false, false, false>, rustc_query_impl[d196c070bbe03594]::plumbing::QueryCtxt, true> 61: 0x77398b0ab87f - rustc_query_impl[d196c070bbe03594]::query_impl::mir_built::get_query_incr::__rust_end_short_backtrace 62: 0x77398ae3192f - rustc_mir_transform[c6aefdac698137fa]::ffi_unwind_calls::has_ffi_unwind_calls 63: 0x77398ae314d9 - rustc_query_impl[d196c070bbe03594]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[d196c070bbe03594]::query_impl::has_ffi_unwind_calls::dynamic_query::{closure#2}::{closure#0}, rustc_middle[dca19e53efad7b1b]::query::erase::Erased<[u8; 1usize]>> 64: 0x77398b0a87dd - rustc_query_system[ff49814a586d4008]::query::plumbing::try_execute_query::<rustc_query_impl[d196c070bbe03594]::DynamicConfig<rustc_data_structures[c2151ea158282339]::vec_cache::VecCache<rustc_span[e6282e50b7a97c05]::def_id::LocalDefId, rustc_middle[dca19e53efad7b1b]::query::erase::Erased<[u8; 1usize]>, rustc_query_system[ff49814a586d4008]::dep_graph::graph::DepNodeIndex>, false, false, false>, rustc_query_impl[d196c070bbe03594]::plumbing::QueryCtxt, true> 65: 0x77398b0a817a - rustc_query_impl[d196c070bbe03594]::query_impl::has_ffi_unwind_calls::get_query_incr::__rust_end_short_backtrace 66: 0x77398867ac11 - rustc_mir_transform[c6aefdac698137fa]::mir_promoted 67: 0x77398b32c9d2 - rustc_query_impl[d196c070bbe03594]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[d196c070bbe03594]::query_impl::mir_promoted::dynamic_query::{closure#2}::{closure#0}, rustc_middle[dca19e53efad7b1b]::query::erase::Erased<[u8; 16usize]>> 68: 0x77398b09d4e7 - rustc_query_system[ff49814a586d4008]::query::plumbing::try_execute_query::<rustc_query_impl[d196c070bbe03594]::DynamicConfig<rustc_data_structures[c2151ea158282339]::vec_cache::VecCache<rustc_span[e6282e50b7a97c05]::def_id::LocalDefId, rustc_middle[dca19e53efad7b1b]::query::erase::Erased<[u8; 16usize]>, rustc_query_system[ff49814a586d4008]::dep_graph::graph::DepNodeIndex>, false, false, false>, rustc_query_impl[d196c070bbe03594]::plumbing::QueryCtxt, true> 69: 0x77398b09cc80 - rustc_query_impl[d196c070bbe03594]::query_impl::mir_promoted::get_query_incr::__rust_end_short_backtrace 70: 0x77398be5fcc1 - rustc_borrowck[283361fc4b34cd2a]::do_mir_borrowck 71: 0x77398be5c8fe - <rustc_borrowck[283361fc4b34cd2a]::root_cx::BorrowCheckRootCtxt>::get_or_insert_nested 72: 0x77398b1a9b6f - rustc_borrowck[283361fc4b34cd2a]::mir_borrowck 73: 0x77398b1a981f - rustc_query_impl[d196c070bbe03594]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[d196c070bbe03594]::query_impl::mir_borrowck::dynamic_query::{closure#2}::{closure#0}, rustc_middle[dca19e53efad7b1b]::query::erase::Erased<[u8; 8usize]>> 74: 0x77398b1ab91a - rustc_query_system[ff49814a586d4008]::query::plumbing::try_execute_query::<rustc_query_impl[d196c070bbe03594]::DynamicConfig<rustc_data_structures[c2151ea158282339]::vec_cache::VecCache<rustc_span[e6282e50b7a97c05]::def_id::LocalDefId, rustc_middle[dca19e53efad7b1b]::query::erase::Erased<[u8; 8usize]>, rustc_query_system[ff49814a586d4008]::dep_graph::graph::DepNodeIndex>, false, false, false>, rustc_query_impl[d196c070bbe03594]::plumbing::QueryCtxt, true> 75: 0x77398b0abc52 - rustc_query_impl[d196c070bbe03594]::query_impl::mir_borrowck::get_query_incr::__rust_end_short_backtrace 76: 0x77398c07caab - rustc_hir_analysis[e577ebb869d6e7c7]::collect::type_of::opaque::find_opaque_ty_constraints_for_rpit 77: 0x77398c07c834 - rustc_hir_analysis[e577ebb869d6e7c7]::collect::type_of::type_of_opaque 78: 0x77398c07c6f7 - rustc_query_impl[d196c070bbe03594]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[d196c070bbe03594]::query_impl::type_of_opaque::dynamic_query::{closure#2}::{closure#0}, rustc_middle[dca19e53efad7b1b]::query::erase::Erased<[u8; 8usize]>> 79: 0x77398b0aed3f - rustc_query_system[ff49814a586d4008]::query::plumbing::try_execute_query::<rustc_query_impl[d196c070bbe03594]::DynamicConfig<rustc_query_system[ff49814a586d4008]::query::caches::DefIdCache<rustc_middle[dca19e53efad7b1b]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[d196c070bbe03594]::plumbing::QueryCtxt, true> 80: 0x77398c100e8a - rustc_query_impl[d196c070bbe03594]::query_impl::type_of_opaque::get_query_incr::__rust_end_short_backtrace 81: 0x77398b2411ca - rustc_hir_analysis[e577ebb869d6e7c7]::collect::type_of::type_of 82: 0x77398b23bb36 - rustc_query_impl[d196c070bbe03594]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[d196c070bbe03594]::query_impl::type_of::dynamic_query::{closure#2}::{closure#0}, rustc_middle[dca19e53efad7b1b]::query::erase::Erased<[u8; 8usize]>> 83: 0x77398b0aed3f - rustc_query_system[ff49814a586d4008]::query::plumbing::try_execute_query::<rustc_query_impl[d196c070bbe03594]::DynamicConfig<rustc_query_system[ff49814a586d4008]::query::caches::DefIdCache<rustc_middle[dca19e53efad7b1b]::query::erase::Erased<[u8; 8usize]>>, false, false, false>, rustc_query_impl[d196c070bbe03594]::plumbing::QueryCtxt, true> 84: 0x77398b0aab36 - rustc_query_impl[d196c070bbe03594]::query_impl::type_of::get_query_incr::__rust_end_short_backtrace 85: 0x77398c07cfd9 - rustc_hir_analysis[e577ebb869d6e7c7]::check::check::check_opaque 86: 0x77398b2ebfff - rustc_hir_analysis[e577ebb869d6e7c7]::check::check::check_item_type 87: 0x77398b62c7b7 - rustc_hir_analysis[e577ebb869d6e7c7]::check::wfcheck::check_well_formed 88: 0x77398b629e4b - rustc_query_impl[d196c070bbe03594]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[d196c070bbe03594]::query_impl::check_well_formed::dynamic_query::{closure#2}::{closure#0}, rustc_middle[dca19e53efad7b1b]::query::erase::Erased<[u8; 1usize]>> 89: 0x77398b0a8b2d - rustc_query_system[ff49814a586d4008]::query::plumbing::try_execute_query::<rustc_query_impl[d196c070bbe03594]::DynamicConfig<rustc_data_structures[c2151ea158282339]::vec_cache::VecCache<rustc_span[e6282e50b7a97c05]::def_id::LocalDefId, rustc_middle[dca19e53efad7b1b]::query::erase::Erased<[u8; 1usize]>, rustc_query_system[ff49814a586d4008]::dep_graph::graph::DepNodeIndex>, false, false, false>, rustc_query_impl[d196c070bbe03594]::plumbing::QueryCtxt, true> 90: 0x77398b0a82b2 - rustc_query_impl[d196c070bbe03594]::query_impl::check_well_formed::get_query_incr::__rust_end_short_backtrace 91: 0x77398b626b3b - rustc_hir_analysis[e577ebb869d6e7c7]::check::wfcheck::check_mod_type_wf 92: 0x77398b626595 - rustc_query_impl[d196c070bbe03594]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[d196c070bbe03594]::query_impl::check_mod_type_wf::dynamic_query::{closure#2}::{closure#0}, rustc_middle[dca19e53efad7b1b]::query::erase::Erased<[u8; 1usize]>> 93: 0x77398bde6bb1 - rustc_query_system[ff49814a586d4008]::query::plumbing::try_execute_query::<rustc_query_impl[d196c070bbe03594]::DynamicConfig<rustc_query_system[ff49814a586d4008]::query::caches::DefaultCache<rustc_span[e6282e50b7a97c05]::def_id::LocalModDefId, rustc_middle[dca19e53efad7b1b]::query::erase::Erased<[u8; 1usize]>>, false, false, false>, rustc_query_impl[d196c070bbe03594]::plumbing::QueryCtxt, true> 94: 0x77398bde7685 - rustc_query_impl[d196c070bbe03594]::query_impl::check_mod_type_wf::get_query_incr::__rust_end_short_backtrace 95: 0x77398b1a5ef2 - rustc_hir_analysis[e577ebb869d6e7c7]::check_crate 96: 0x77398b199237 - rustc_interface[4b2c44076e9c0aea]::passes::run_required_analyses 97: 0x77398bde8ade - rustc_interface[4b2c44076e9c0aea]::passes::analysis 98: 0x77398bde8ab5 - rustc_query_impl[d196c070bbe03594]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[d196c070bbe03594]::query_impl::analysis::dynamic_query::{closure#2}::{closure#0}, rustc_middle[dca19e53efad7b1b]::query::erase::Erased<[u8; 0usize]>> 99: 0x77398bde3584 - rustc_query_system[ff49814a586d4008]::query::plumbing::try_execute_query::<rustc_query_impl[d196c070bbe03594]::DynamicConfig<rustc_query_system[ff49814a586d4008]::query::caches::SingleCache<rustc_middle[dca19e53efad7b1b]::query::erase::Erased<[u8; 0usize]>>, false, false, false>, rustc_query_impl[d196c070bbe03594]::plumbing::QueryCtxt, true> 100: 0x77398bde2ea8 - rustc_query_impl[d196c070bbe03594]::query_impl::analysis::get_query_incr::__rust_end_short_backtrace 101: 0x77398c034b87 - rustc_interface[4b2c44076e9c0aea]::passes::create_and_enter_global_ctxt::<core[ce1fa00964895ff1]::option::Option<rustc_interface[4b2c44076e9c0aea]::queries::Linker>, rustc_driver_impl[d80da60e87609ad4]::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0} 102: 0x77398bf0b5a6 - rustc_interface[4b2c44076e9c0aea]::interface::run_compiler::<(), rustc_driver_impl[d80da60e87609ad4]::run_compiler::{closure#0}>::{closure#1} 103: 0x77398bedad7e - std[e444442488e5ea2d]::sys::backtrace::__rust_begin_short_backtrace::<rustc_interface[4b2c44076e9c0aea]::util::run_in_thread_with_globals<rustc_interface[4b2c44076e9c0aea]::util::run_in_thread_pool_with_globals<rustc_interface[4b2c44076e9c0aea]::interface::run_compiler<(), rustc_driver_impl[d80da60e87609ad4]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()> 104: 0x77398bedb1f4 - <<std[e444442488e5ea2d]::thread::Builder>::spawn_unchecked_<rustc_interface[4b2c44076e9c0aea]::util::run_in_thread_with_globals<rustc_interface[4b2c44076e9c0aea]::util::run_in_thread_pool_with_globals<rustc_interface[4b2c44076e9c0aea]::interface::run_compiler<(), rustc_driver_impl[d80da60e87609ad4]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>::{closure#1} as core[ce1fa00964895ff1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} 105: 0x77398bedc5eb - std::sys::pal::unix::thread::Thread::new::thread_start::h8985427f793e6fe1 106: 0x773985ca57eb - <unknown> 107: 0x773985d2918c - <unknown> 108: 0x0 - <unknown> error: the compiler unexpectedly panicked. this is a bug. note: we would appreciate a bug report: https://github.com/rust-lang/rust-clippy/issues/new?template=ice.yml note: please make sure that you have updated to the latest nightly note: please attach the file at `/home/sherlock/git/user_stack_tests/rustc-ice-2025-05-09T15_58_52-637216.txt` to your bug report note: compiler flags: --crate-type lib -C embed-bitcode=no -C debuginfo=2 -C linker=clang -C incremental=[REDACTED] -C link-arg=-fuse-ld=mold -C target_cpu=x86-64-v2 note: some of the compiler flags provided by cargo are hidden query stack during panic: #0 [adt_async_destructor] computing `AsyncDrop` impl for `user_stack::tcp::TcpStream` #1 [needs_async_drop_raw] computing whether `core::task::poll::Poll<core::option::Option<user_stack::tcp::TcpStream<CompioRuntime>>>` needs async drop ... and 9 other queries... use `env RUST_BACKTRACE=1` to see the full query stack note: Clippy version: clippy 0.1.88 (50aa041807 2025-05-08) error: could not compile `user_stack_tests` (lib) Caused by: process didn't exit successfully: `/home/sherlock/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/clippy-driver /home/sherlock/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/rustc --crate-name user_stack_tests --edition=2021 src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --diagnostic-width=145 --crate-type lib --emit=dep-info,metadata -C embed-bitcode=no -C debuginfo=2 --check-cfg 'cfg(docsrs,test)' --check-cfg 'cfg(feature, values())' -C metadata=3a6711b9f7eff165 -C extra-filename=-66fcce6876169693 --out-dir /home/sherlock/git/user_stack_tests/target/debug/deps -C linker=clang -C incremental=/home/sherlock/git/user_stack_tests/target/debug/incremental -L dependency=/home/sherlock/git/user_stack_tests/target/debug/deps --extern bytes=/home/sherlock/git/user_stack_tests/target/debug/deps/libbytes-92e724eac1bcf0ce.rmeta --extern compio=/home/sherlock/git/user_stack_tests/target/debug/deps/libcompio-bd57dee5af941ab9.rmeta --extern futures_util=/home/sherlock/git/user_stack_tests/target/debug/deps/libfutures_util-d306a4b6994ef2bf.rmeta --extern libc=/home/sherlock/git/user_stack_tests/target/debug/deps/liblibc-de4d3989bdb8bc31.rmeta --extern rustix=/home/sherlock/git/user_stack_tests/target/debug/deps/librustix-20d7fc6df9387815.rmeta --extern user_stack=/home/sherlock/git/user_stack_tests/target/debug/deps/libuser_stack-412f67aaa4efeed7.rmeta -C link-arg=-fuse-ld=mold -C target_cpu=x86-64-v2` (exit status: 101)
Backtrace
thread 'rustc' panicked at /rustc/50aa04180709189a03dde5fd1c05751b2625ed37/compiler/rustc_span/src/def_id.rs:393:26: DefId::expect_local: `DefId(56:141 ~ user_stack[92be]::tcp::{impl#3})` isn't local stack backtrace: 0: __rustc::rust_begin_unwind 1: core::panicking::panic_fmt 2: <rustc_span::def_id::LocalDefId as rustc_serialize::serialize::Decodable<rustc_metadata::rmeta::decoder::DecodeContext>>::decode 3: rustc_metadata::rmeta::decoder::cstore_impl::provide_extern::adt_async_destructor [... omitted 1 frame ...] 4: <rustc_middle::ty::adt::AdtDef>::async_destructor 5: rustc_ty_utils::needs_drop::needs_async_drop_raw [... omitted 2 frames ...] 6: <rustc_mir_build::builder::Builder>::is_async_drop_impl 7: <rustc_mir_build::builder::Builder>::pop_scope 8: <rustc_mir_build::builder::Builder>::ast_block_stmts 9: <rustc_mir_build::builder::Builder>::ast_block 10: <rustc_mir_build::builder::Builder>::expr_into_dest 11: <rustc_mir_build::builder::Builder>::expr_into_dest 12: <rustc_mir_build::builder::Builder>::expr_into_dest 13: <rustc_mir_build::builder::Builder>::expr_into_dest 14: <rustc_mir_build::builder::Builder>::as_temp::{closure#0} 15: <rustc_mir_build::builder::Builder>::expr_as_place 16: <rustc_mir_build::builder::Builder>::expr_as_place 17: <rustc_mir_build::builder::Builder>::lower_scrutinee 18: <rustc_mir_build::builder::Builder>::lower_let_expr 19: <rustc_mir_build::builder::Builder>::then_else_break_inner 20: <rustc_mir_build::builder::Builder>::then_else_break_inner 21: <rustc_mir_build::builder::Builder>::expr_into_dest 22: <rustc_mir_build::builder::Builder>::expr_into_dest 23: <rustc_mir_build::builder::Builder>::ast_block_stmts 24: <rustc_mir_build::builder::Builder>::ast_block 25: <rustc_mir_build::builder::Builder>::expr_into_dest 26: <rustc_mir_build::builder::Builder>::expr_into_dest 27: <rustc_mir_build::builder::Builder>::as_temp::{closure#0} 28: <rustc_mir_build::builder::Builder>::stmt_expr 29: <rustc_mir_build::builder::Builder>::stmt_expr 30: <rustc_mir_build::builder::Builder>::ast_block_stmts 31: <rustc_mir_build::builder::Builder>::ast_block 32: <rustc_mir_build::builder::Builder>::expr_into_dest 33: <rustc_mir_build::builder::Builder>::expr_into_dest 34: <rustc_mir_build::builder::Builder>::expr_into_dest 35: <rustc_mir_build::builder::Builder>::expr_into_dest 36: <rustc_mir_build::builder::Builder>::ast_block_stmts 37: <rustc_mir_build::builder::Builder>::ast_block 38: <rustc_mir_build::builder::Builder>::expr_into_dest 39: <rustc_mir_build::builder::Builder>::expr_into_dest 40: rustc_mir_build::builder::build_mir 41: rustc_mir_transform::mir_built [... omitted 1 frame ...] 42: rustc_mir_transform::ffi_unwind_calls::has_ffi_unwind_calls [... omitted 1 frame ...] 43: rustc_mir_transform::mir_promoted [... omitted 1 frame ...] 44: rustc_borrowck::do_mir_borrowck 45: <rustc_borrowck::root_cx::BorrowCheckRootCtxt>::get_or_insert_nested 46: rustc_borrowck::mir_borrowck [... omitted 1 frame ...] 47: rustc_hir_analysis::collect::type_of::opaque::find_opaque_ty_constraints_for_rpit 48: rustc_hir_analysis::collect::type_of::type_of_opaque [... omitted 1 frame ...] 49: rustc_hir_analysis::collect::type_of::type_of [... omitted 1 frame ...] 50: rustc_hir_analysis::check::check::check_opaque 51: rustc_hir_analysis::check::check::check_item_type 52: rustc_hir_analysis::check::wfcheck::check_well_formed [... omitted 1 frame ...] 53: rustc_hir_analysis::check::wfcheck::check_mod_type_wf [... omitted 1 frame ...] 54: rustc_hir_analysis::check_crate 55: rustc_interface::passes::run_required_analyses 56: rustc_interface::passes::analysis note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace. error: the compiler unexpectedly panicked. this is a bug. note: we would appreciate a bug report: https://github.com/rust-lang/rust-clippy/issues/new?template=ice.yml note: please make sure that you have updated to the latest nightly note: please attach the file at `/home/sherlock/git/user_stack_tests/rustc-ice-2025-05-09T15_59_33-638263.txt` to your bug report note: compiler flags: --crate-type lib -C embed-bitcode=no -C debuginfo=2 -C linker=clang -C incremental=[REDACTED] -C link-arg=-fuse-ld=mold -C target_cpu=x86-64-v2 note: some of the compiler flags provided by cargo are hidden query stack during panic: #0 [adt_async_destructor] computing `AsyncDrop` impl for `user_stack::tcp::TcpStream` #1 [needs_async_drop_raw] computing whether `core::task::poll::Poll<core::option::Option<user_stack::tcp::TcpStream<CompioRuntime>>>` needs async drop #2 [mir_built] building MIR for `run::{closure#0}` #3 [has_ffi_unwind_calls] checking if `run::{closure#0}` contains FFI-unwind calls #4 [mir_promoted] promoting constants in MIR for `run::{closure#0}` #5 [mir_borrowck] borrow-checking `run` #6 [type_of_opaque] computing type of opaque `run::{opaque#0}` #7 [type_of] computing type of `run::{opaque#0}` #8 [check_well_formed] checking that `run::{opaque#0}` is well-formed #9 [check_mod_type_wf] checking that types are well-formed in top-level module #10 [analysis] running analysis passes on this crate end of query stack note: Clippy version: clippy 0.1.88 (50aa041807 2025-05-08) error: could not compile `user_stack_tests` (lib) Caused by: process didn't exit successfully: `/home/sherlock/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/clippy-driver /home/sherlock/.rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/rustc --crate-name user_stack_tests --edition=2021 src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --diagnostic-width=145 --crate-type lib --emit=dep-info,metadata -C embed-bitcode=no -C debuginfo=2 --check-cfg 'cfg(docsrs,test)' --check-cfg 'cfg(feature, values())' -C metadata=3a6711b9f7eff165 -C extra-filename=-66fcce6876169693 --out-dir /home/sherlock/git/user_stack_tests/target/debug/deps -C linker=clang -C incremental=/home/sherlock/git/user_stack_tests/target/debug/incremental -L dependency=/home/sherlock/git/user_stack_tests/target/debug/deps --extern bytes=/home/sherlock/git/user_stack_tests/target/debug/deps/libbytes-92e724eac1bcf0ce.rmeta --extern compio=/home/sherlock/git/user_stack_tests/target/debug/deps/libcompio-bd57dee5af941ab9.rmeta --extern futures_util=/home/sherlock/git/user_stack_tests/target/debug/deps/libfutures_util-d306a4b6994ef2bf.rmeta --extern libc=/home/sherlock/git/user_stack_tests/target/debug/deps/liblibc-de4d3989bdb8bc31.rmeta --extern rustix=/home/sherlock/git/user_stack_tests/target/debug/deps/librustix-20d7fc6df9387815.rmeta --extern user_stack=/home/sherlock/git/user_stack_tests/target/debug/deps/libuser_stack-412f67aaa4efeed7.rmeta -C link-arg=-fuse-ld=mold -C target_cpu=x86-64-v2` (exit status: 101)
Metadata
Metadata
Assignees
Labels
C-bugCategory: This is a bug.Category: This is a bug.F-async_drop`#![feature(async_drop)]``#![feature(async_drop)]`I-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️S-has-mcveStatus: A Minimal Complete and Verifiable Example has been found for this issueStatus: A Minimal Complete and Verifiable Example has been found for this issueT-compilerRelevant to the compiler team, which will review and decide on the PR/issue.Relevant to the compiler team, which will review and decide on the PR/issue.requires-incomplete-featuresThis issue requires the use of incomplete features.This issue requires the use of incomplete features.