Skip to content

thread 'rustc' panicked at compiler/rustc_metadata/src/rmeta/def_path_hash_map.rs:23:54 #143626

@mohoff

Description

@mohoff

Code

no minimal reproducible example available

Meta

rustc --version --verbose:

rustc 1.87.0 (17067e9ac 2025-05-09)
binary: rustc
commit-hash: 17067e9ac6d7ecb70e50f92c1944e545188d2359
commit-date: 2025-05-09
host: aarch64-apple-darwin
release: 1.87.0
LLVM version: 20.1.1

Error output

thread 'rustc' panicked at compiler/rustc_metadata/src/rmeta/def_path_hash_map.rs:23:54:
called `Option::unwrap()` on a `None` value
stack backtrace:
   0:        0x1123f04bc - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h92dda645f072dcaf
   1:        0x10faa3bbc - core::fmt::write::hbc92919d8e8f9a96
   2:        0x1123e5310 - std::io::Write::write_fmt::hcee3b5dc9ab531be
   3:        0x1123f037c - std::sys::backtrace::BacktraceLock::print::h0f497abce563e5d2
   4:        0x1123f297c - std::panicking::default_hook::{{closure}}::h62595143a6c21f05
   5:        0x1123f2648 - std::panicking::default_hook::hd800536ed1df5085
   6:        0x11057baf0 - std[dece160403b877c5]::panicking::update_hook::<alloc[b2f5842f192e62d9]::boxed::Box<rustc_driver_impl[10b09d078f964436]::install_ice_hook::{closure#1}>>::{closure#0}
   7:        0x1123f3368 - std::panicking::rust_panic_with_hook::h1882a30575fbb763
   8:        0x1123f2f34 - std::panicking::begin_panic_handler::{{closure}}::h39275ef3005e6337
   9:        0x1123f094c - std::sys::backtrace::__rust_end_short_backtrace::h6ede323c05a76849
  10:        0x1123f2c24 - __rustc[95feac21a9532783]::rust_begin_unwind
  11:        0x11504c144 - core::panicking::panic_fmt::h529fda7ea817ba4f
  12:        0x11504c1b4 - core::panicking::panic::hdf8b426f88b5fed0
  13:        0x11504c0dc - core::option::unwrap_failed::hee0a0365f557b127
  14:        0x1110388d8 - <rustc_metadata[a4b5afc9c4dff6df]::rmeta::decoder::cstore_impl::provide_cstore_hooks::{closure#0} as core[7ef867844175194f]::ops::function::FnOnce<(rustc_middle[19a1a29194537e3]::ty::context::TyCtxt, rustc_span[bdc7bbf190eca6b2]::def_id::DefPathHash, rustc_span[bdc7bbf190eca6b2]::def_id::StableCrateId)>>::call_once
  15:        0x1111d9c70 - <rustc_middle[19a1a29194537e3]::ty::context::TyCtxt>::def_path_hash_to_def_id
  16:        0x111b4ab3c - rustc_query_impl[ddeb1b8cb2654587]::plumbing::force_from_dep_node::<rustc_query_impl[ddeb1b8cb2654587]::DynamicConfig<rustc_query_system[5bcf2b842147579]::query::caches::DefIdCache<rustc_middle[19a1a29194537e3]::query::erase::Erased<[u8; 8usize]>>, false, false, false>>
  17:        0x111ad8050 - <rustc_query_impl[ddeb1b8cb2654587]::plumbing::query_callback<rustc_query_impl[ddeb1b8cb2654587]::query_impl::type_of::QueryType>::{closure#0} as core[7ef867844175194f]::ops::function::FnOnce<(rustc_middle[19a1a29194537e3]::ty::context::TyCtxt, rustc_query_system[5bcf2b842147579]::dep_graph::dep_node::DepNode, rustc_query_system[5bcf2b842147579]::dep_graph::serialized::SerializedDepNodeIndex)>>::call_once
  18:        0x1118d1868 - <rustc_query_system[5bcf2b842147579]::dep_graph::graph::DepGraphData<rustc_middle[19a1a29194537e3]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[ddeb1b8cb2654587]::plumbing::QueryCtxt>
  19:        0x1118d1814 - <rustc_query_system[5bcf2b842147579]::dep_graph::graph::DepGraphData<rustc_middle[19a1a29194537e3]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[ddeb1b8cb2654587]::plumbing::QueryCtxt>
  20:        0x1118d1814 - <rustc_query_system[5bcf2b842147579]::dep_graph::graph::DepGraphData<rustc_middle[19a1a29194537e3]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[ddeb1b8cb2654587]::plumbing::QueryCtxt>
  21:        0x1118d1814 - <rustc_query_system[5bcf2b842147579]::dep_graph::graph::DepGraphData<rustc_middle[19a1a29194537e3]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[ddeb1b8cb2654587]::plumbing::QueryCtxt>
  22:        0x1118d1814 - <rustc_query_system[5bcf2b842147579]::dep_graph::graph::DepGraphData<rustc_middle[19a1a29194537e3]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[ddeb1b8cb2654587]::plumbing::QueryCtxt>
  23:        0x1118d1814 - <rustc_query_system[5bcf2b842147579]::dep_graph::graph::DepGraphData<rustc_middle[19a1a29194537e3]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[ddeb1b8cb2654587]::plumbing::QueryCtxt>
  24:        0x1118d1814 - <rustc_query_system[5bcf2b842147579]::dep_graph::graph::DepGraphData<rustc_middle[19a1a29194537e3]::dep_graph::DepsType>>::try_mark_previous_green::<rustc_query_impl[ddeb1b8cb2654587]::plumbing::QueryCtxt>
  25:        0x1118d1614 - <rustc_query_system[5bcf2b842147579]::dep_graph::graph::DepGraphData<rustc_middle[19a1a29194537e3]::dep_graph::DepsType>>::try_mark_green::<rustc_query_impl[ddeb1b8cb2654587]::plumbing::QueryCtxt>
  26:        0x111939dfc - rustc_query_system[5bcf2b842147579]::query::plumbing::try_execute_query::<rustc_query_impl[ddeb1b8cb2654587]::DynamicConfig<rustc_query_system[5bcf2b842147579]::query::caches::DefaultCache<rustc_type_ir[3720f73e6b6c3cbf]::canonical::CanonicalQueryInput<rustc_middle[19a1a29194537e3]::ty::context::TyCtxt, rustc_middle[19a1a29194537e3]::ty::ParamEnvAnd<rustc_middle[19a1a29194537e3]::ty::predicate::Predicate>>, rustc_middle[19a1a29194537e3]::query::erase::Erased<[u8; 2usize]>>, false, false, false>, rustc_query_impl[ddeb1b8cb2654587]::plumbing::QueryCtxt, true>
  27:        0x111bc93e0 - rustc_query_impl[ddeb1b8cb2654587]::query_impl::evaluate_obligation::get_query_incr::__rust_end_short_backtrace
  28:        0x11220fe94 - <rustc_infer[edfff41919fa5539]::infer::InferCtxt as rustc_trait_selection[613fa6bad650c666]::traits::query::evaluate_obligation::InferCtxtExt>::evaluate_obligation
  29:        0x112210484 - <rustc_infer[edfff41919fa5539]::infer::InferCtxt as rustc_trait_selection[613fa6bad650c666]::traits::query::evaluate_obligation::InferCtxtExt>::evaluate_obligation_no_overflow
  30:        0x1122028ec - <rustc_trait_selection[613fa6bad650c666]::traits::fulfill::FulfillProcessor>::process_trait_obligation
  31:        0x11220190c - <rustc_trait_selection[613fa6bad650c666]::traits::fulfill::FulfillProcessor as rustc_data_structures[bea8c90478f728]::obligation_forest::ObligationProcessor>::process_obligation
  32:        0x111f8f1a0 - <rustc_data_structures[bea8c90478f728]::obligation_forest::ObligationForest<rustc_trait_selection[613fa6bad650c666]::traits::fulfill::PendingPredicateObligation>>::process_obligations::<rustc_trait_selection[613fa6bad650c666]::traits::fulfill::FulfillProcessor>
  33:        0x1121ac490 - <rustc_trait_selection[613fa6bad650c666]::traits::fulfill::FulfillmentContext<rustc_infer[edfff41919fa5539]::traits::engine::ScrubbedTraitError> as rustc_infer[edfff41919fa5539]::traits::engine::TraitEngine<rustc_infer[edfff41919fa5539]::traits::engine::ScrubbedTraitError>>::select_where_possible
  34:        0x1120ef7a4 - <rustc_trait_selection[613fa6bad650c666]::traits::fulfill::FulfillmentContext<rustc_infer[edfff41919fa5539]::traits::engine::ScrubbedTraitError> as rustc_infer[edfff41919fa5539]::traits::engine::TraitEngine<rustc_infer[edfff41919fa5539]::traits::engine::ScrubbedTraitError>>::select_all_or_error
  35:        0x1122ad5b8 - rustc_traits[e5355b40ae1d5c67]::codegen::codegen_select_candidate
  36:        0x111b50290 - rustc_query_impl[ddeb1b8cb2654587]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[ddeb1b8cb2654587]::query_impl::codegen_select_candidate::dynamic_query::{closure#2}::{closure#0}, rustc_middle[19a1a29194537e3]::query::erase::Erased<[u8; 16usize]>>
  37:        0x111b107a0 - <rustc_query_impl[ddeb1b8cb2654587]::query_impl::codegen_select_candidate::dynamic_query::{closure#2} as core[7ef867844175194f]::ops::function::FnOnce<(rustc_middle[19a1a29194537e3]::ty::context::TyCtxt, rustc_middle[19a1a29194537e3]::ty::PseudoCanonicalInput<rustc_type_ir[3720f73e6b6c3cbf]::predicate::TraitRef<rustc_middle[19a1a29194537e3]::ty::context::TyCtxt>>)>>::call_once
  38:        0x1119447e0 - rustc_query_system[5bcf2b842147579]::query::plumbing::try_execute_query::<rustc_query_impl[ddeb1b8cb2654587]::DynamicConfig<rustc_query_system[5bcf2b842147579]::query::caches::DefaultCache<rustc_middle[19a1a29194537e3]::ty::PseudoCanonicalInput<rustc_type_ir[3720f73e6b6c3cbf]::predicate::TraitRef<rustc_middle[19a1a29194537e3]::ty::context::TyCtxt>>, rustc_middle[19a1a29194537e3]::query::erase::Erased<[u8; 16usize]>>, false, false, false>, rustc_query_impl[ddeb1b8cb2654587]::plumbing::QueryCtxt, true>
  39:        0x111b99e58 - rustc_query_impl[ddeb1b8cb2654587]::query_impl::codegen_select_candidate::get_query_incr::__rust_end_short_backtrace
  40:        0x1115b0ddc - rustc_monomorphize[a58eb060f53c9b07]::collector::find_vtable_types_for_unsizing
  41:        0x1115aea88 - <rustc_monomorphize[a58eb060f53c9b07]::collector::MirUsedCollector as rustc_middle[19a1a29194537e3]::mir::visit::Visitor>::visit_rvalue
  42:        0x1115b30b0 - rustc_monomorphize[a58eb060f53c9b07]::collector::items_of_instance
  43:        0x111b4dd7c - rustc_query_impl[ddeb1b8cb2654587]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[ddeb1b8cb2654587]::query_impl::items_of_instance::dynamic_query::{closure#2}::{closure#0}, rustc_middle[19a1a29194537e3]::query::erase::Erased<[u8; 32usize]>>
  44:        0x111af897c - <rustc_query_impl[ddeb1b8cb2654587]::query_impl::items_of_instance::dynamic_query::{closure#2} as core[7ef867844175194f]::ops::function::FnOnce<(rustc_middle[19a1a29194537e3]::ty::context::TyCtxt, (rustc_middle[19a1a29194537e3]::ty::instance::Instance, rustc_middle[19a1a29194537e3]::mir::mono::CollectionMode))>>::call_once
  45:        0x111993af4 - rustc_query_system[5bcf2b842147579]::query::plumbing::try_execute_query::<rustc_query_impl[ddeb1b8cb2654587]::DynamicConfig<rustc_query_system[5bcf2b842147579]::query::caches::DefaultCache<(rustc_middle[19a1a29194537e3]::ty::instance::Instance, rustc_middle[19a1a29194537e3]::mir::mono::CollectionMode), rustc_middle[19a1a29194537e3]::query::erase::Erased<[u8; 32usize]>>, false, false, false>, rustc_query_impl[ddeb1b8cb2654587]::plumbing::QueryCtxt, true>
  46:        0x111be4bd0 - rustc_query_impl[ddeb1b8cb2654587]::query_impl::items_of_instance::get_query_incr::__rust_end_short_backtrace
  47:        0x1115c71bc - rustc_monomorphize[a58eb060f53c9b07]::collector::collect_items_rec::{closure#0}
  48:        0x1115c559c - rustc_monomorphize[a58eb060f53c9b07]::collector::collect_items_rec
  49:        0x1115c66d8 - rustc_monomorphize[a58eb060f53c9b07]::collector::collect_items_rec
  50:        0x1115c66d8 - rustc_monomorphize[a58eb060f53c9b07]::collector::collect_items_rec
  51:        0x1115c0bd0 - rustc_monomorphize[a58eb060f53c9b07]::partitioning::collect_and_partition_mono_items
  52:        0x111b50f34 - rustc_query_impl[ddeb1b8cb2654587]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[ddeb1b8cb2654587]::query_impl::collect_and_partition_mono_items::dynamic_query::{closure#2}::{closure#0}, rustc_middle[19a1a29194537e3]::query::erase::Erased<[u8; 40usize]>>
  53:        0x111925bdc - rustc_query_system[5bcf2b842147579]::query::plumbing::try_execute_query::<rustc_query_impl[ddeb1b8cb2654587]::DynamicConfig<rustc_query_system[5bcf2b842147579]::query::caches::SingleCache<rustc_middle[19a1a29194537e3]::query::erase::Erased<[u8; 40usize]>>, false, false, false>, rustc_query_impl[ddeb1b8cb2654587]::plumbing::QueryCtxt, true>
  54:        0x111bc1a94 - rustc_query_impl[ddeb1b8cb2654587]::query_impl::collect_and_partition_mono_items::get_query_incr::__rust_end_short_backtrace
  55:        0x1103b5b94 - rustc_codegen_ssa[cf8cf4c6a062e0f6]::back::symbol_export::exported_symbols_provider_local
  56:        0x111b4d3a8 - rustc_query_impl[ddeb1b8cb2654587]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[ddeb1b8cb2654587]::query_impl::exported_symbols::dynamic_query::{closure#2}::{closure#0}, rustc_middle[19a1a29194537e3]::query::erase::Erased<[u8; 16usize]>>
  57:        0x1119a6ef4 - rustc_query_system[5bcf2b842147579]::query::plumbing::try_execute_query::<rustc_query_impl[ddeb1b8cb2654587]::DynamicConfig<rustc_data_structures[bea8c90478f728]::vec_cache::VecCache<rustc_span[bdc7bbf190eca6b2]::def_id::CrateNum, rustc_middle[19a1a29194537e3]::query::erase::Erased<[u8; 16usize]>, rustc_query_system[5bcf2b842147579]::dep_graph::graph::DepNodeIndex>, false, false, false>, rustc_query_impl[ddeb1b8cb2654587]::plumbing::QueryCtxt, true>
  58:        0x111bc15bc - rustc_query_impl[ddeb1b8cb2654587]::query_impl::exported_symbols::get_query_incr::__rust_end_short_backtrace
  59:        0x11105fca4 - <rustc_metadata[a4b5afc9c4dff6df]::rmeta::encoder::EncodeContext>::encode_crate_root
  60:        0x111074940 - rustc_metadata[a4b5afc9c4dff6df]::rmeta::encoder::encode_metadata
  61:        0x111086a14 - rustc_metadata[a4b5afc9c4dff6df]::fs::encode_and_write_metadata
  62:        0x110e45668 - <rustc_interface[36d0dc89b6111b4f]::queries::Linker>::codegen_and_build_linker
  63:        0x110529e24 - rustc_interface[36d0dc89b6111b4f]::passes::create_and_enter_global_ctxt::<core[7ef867844175194f]::option::Option<rustc_interface[36d0dc89b6111b4f]::queries::Linker>, rustc_driver_impl[10b09d078f964436]::run_compiler::{closure#0}::{closure#2}>
  64:        0x11057894c - rustc_interface[36d0dc89b6111b4f]::interface::run_compiler::<(), rustc_driver_impl[10b09d078f964436]::run_compiler::{closure#0}>::{closure#1}
  65:        0x110568dcc - std[dece160403b877c5]::sys::backtrace::__rust_begin_short_backtrace::<rustc_interface[36d0dc89b6111b4f]::util::run_in_thread_with_globals<rustc_interface[36d0dc89b6111b4f]::util::run_in_thread_pool_with_globals<rustc_interface[36d0dc89b6111b4f]::interface::run_compiler<(), rustc_driver_impl[10b09d078f964436]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>
  66:        0x11057f7f8 - <<std[dece160403b877c5]::thread::Builder>::spawn_unchecked_<rustc_interface[36d0dc89b6111b4f]::util::run_in_thread_with_globals<rustc_interface[36d0dc89b6111b4f]::util::run_in_thread_pool_with_globals<rustc_interface[36d0dc89b6111b4f]::interface::run_compiler<(), rustc_driver_impl[10b09d078f964436]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>::{closure#1} as core[7ef867844175194f]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  67:        0x1123f73fc - std::sys::pal::unix::thread::Thread::new::thread_start::he7774aa0ca446eef
  68:        0x198f7ec0c - __pthread_cond_wait

error: the compiler unexpectedly panicked. this is a bug.

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: rustc 1.87.0 (17067e9ac 2025-05-09) running on aarch64-apple-darwin

note: compiler flags: --crate-type lib -C embed-bitcode=no -C debuginfo=2 -C split-debuginfo=unpacked -C incremental=[REDACTED]

note: some of the compiler flags provided by cargo are hidden

query stack during panic:
#0 [evaluate_obligation] evaluating trait selection obligation `{coroutine witness@snip::handler::ProcessorAdapter<snip::concrete::DbPool, handlers::snip::Handler>::dispatch::{closure#0}}: core::marker::Send`
#1 [codegen_select_candidate] computing candidate for `<core::pin::Pin<alloc::boxed::Box<{async block@<snip::handler::ProcessorAdapter<snip::concrete::DbPool, handlers::snip::Handler> as snip::handler::TypeErasedProcessor>::process<'_, '_, '_>::{closure#0}}>> as core::ops::unsize::CoerceUnsized<core::pin::Pin<alloc::boxed::Box<dyn core::future::future::Future<Output = core::result::Result<(), snip::handler::ResponseError>> + core::marker::Send>>>>`  |  = note: this failure-note originates in the attribute macro `tracing::instrument` (in Nightly builds, run with -Z macro-backtrace for more info)

... and 3 other queries... use `env RUST_BACKTRACE=1` to see the full query stack
there was a panic while trying to force a dep node
try_mark_green dep node stack:
#0 TraitSelect(13f9e04295d9f80c-5f73eb24807d8599)
#1 TraitSelect(39aec68f02ba6aa7-bb09bc15d1e91952)
#2 TraitSelect(4651b690a3d1fd16-6962195050d3ae5e)
#3 TraitSelect(95ca7f9c1f64e6a5-7fc47dd76abcbd19)
#4 TraitSelect(d1314ac53b39c5a9-74a7ad31579c604a)
#5 TraitSelect(881a7855d71ea7d3-38fe47e8757f002c)
#6 evaluate_obligation(c537656771d14541-1117833a48b366ad)
end of try_mark_green dep node stack
Backtrace

<backtrace>

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-incr-compArea: Incremental compilationC-bugCategory: This is a bug.I-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️S-needs-reproStatus: This issue has no reproduction and needs a reproduction to make progress.T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions