Skip to content

Introduce -Z coroutine-layout flag#159795

Open
dingxiangfei2009 wants to merge 2 commits into
rust-lang:mainfrom
dingxiangfei2009:coro-layout-flag
Open

Introduce -Z coroutine-layout flag#159795
dingxiangfei2009 wants to merge 2 commits into
rust-lang:mainfrom
dingxiangfei2009:coro-layout-flag

Conversation

@dingxiangfei2009

@dingxiangfei2009 dingxiangfei2009 commented Jul 23, 2026

Copy link
Copy Markdown
Contributor

This is still mostly cosmetic, but more stuff is coming over from #135527.

Only the tip of the branch matters, the other commit will be shipped from another PR. It will go away after a rebase, hopefully.

r? @cjgillot

This small utility provides a familiar key-value view of an `IndexMap`
in the debugging output.

Co-authored-by: Dario Nieuwenhuis <dirbaio@dirbaio.net>

Signed-off-by: Xiangfei Ding <dingxiangfei2009@protonmail.ch>
@rustbot

rustbot commented Jul 23, 2026

Copy link
Copy Markdown
Collaborator

Some changes occurred to MIR optimizations

cc @rust-lang/wg-mir-opt

These commits modify the Cargo.lock file. Unintentional changes to Cargo.lock can be introduced when switching branches and rebasing PRs.

If this was unintentional then you should revert the changes before this PR is merged.
Otherwise, you can ignore this comment.

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Jul 23, 2026
@rust-log-analyzer

This comment has been minimized.

We will now give users two options, to go with the traditional coroutine
layout as of Dec 2025 or the new proposed compact layout.

The compact layout will be documented in the RelocateUpvar MIR pass
later.

Co-authored-by: Dario Nieuwenhuis <dirbaio@dirbaio.net>

Signed-off-by: Xiangfei Ding <dingxiangfei2009@protonmail.ch>

add rustc-hash dependency to rustc_abi
@rust-log-analyzer

Copy link
Copy Markdown
Collaborator

The job aarch64-gnu-llvm-21-1 failed! Check out the build log: (web) (plain enhanced) (plain)

Click to see the possible cause of the failure (guessed by this bot)
---- [ui] tests/ui/async-await/async-closures/debuginfo-by-move-body.rs stdout ----

error: test compilation failed although it shouldn't!
status: exit status: 101
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/async-await/async-closures/debuginfo-by-move-body.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/async-await/async-closures/debuginfo-by-move-body" "-A" "unused" "-W" "unused_attributes" "-A" "internal_features" "-A" "incomplete_features" "-A" "unused_parens" "-A" "unused_braces" "-Crpath" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers" "-L" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/async-await/async-closures/debuginfo-by-move-body/auxiliary" "--edition=2021" "-Cdebuginfo=2"
stdout: none
--- stderr -------------------------------

thread 'rustc' (31732) panicked at compiler/rustc_codegen_llvm/src/debuginfo/metadata/enums/mod.rs:330:25:
index out of bounds: the len is 0 but the index is 0
stack backtrace:
   0: __rustc::rust_begin_unwind
   1: core::panicking::panic_fmt
   2: core::panicking::panic_bounds_check
   3: <core::iter::adapters::map::Map<core::ops::range::Range<usize>, rustc_codegen_llvm::debuginfo::metadata::enums::build_coroutine_variant_struct_type_di_node::{closure#0}::{closure#0}> as core::iter::traits::iterator::Iterator>::next
   4: <smallvec::SmallVec<[&rustc_codegen_llvm::llvm::ffi::Metadata; 16]> as core::iter::traits::collect::Extend<&rustc_codegen_llvm::llvm::ffi::Metadata>>::extend::<core::iter::adapters::map::Map<core::ops::range::Range<usize>, rustc_codegen_llvm::debuginfo::metadata::enums::build_coroutine_variant_struct_type_di_node::{closure#0}::{closure#0}>>
   5: rustc_codegen_llvm::debuginfo::metadata::type_map::build_type_with_children::<rustc_codegen_llvm::debuginfo::metadata::enums::build_coroutine_variant_struct_type_di_node::{closure#0}, rustc_codegen_llvm::debuginfo::metadata::enums::build_coroutine_variant_struct_type_di_node::{closure#1}>
   6: rustc_codegen_llvm::debuginfo::metadata::enums::build_coroutine_variant_struct_type_di_node
   7: <core::iter::adapters::map::Map<core::iter::adapters::map::Map<core::ops::range::Range<usize>, <rustc_index::slice::IndexSlice<rustc_abi::layout::VariantIdx, rustc_abi::VariantLayout<rustc_abi::layout::FieldIdx>>>::indices::{closure#0}>, rustc_codegen_llvm::debuginfo::metadata::enums::native::build_coroutine_di_node::{closure#0}::{closure#0}> as core::iter::traits::iterator::Iterator>::next
   8: <smallvec::SmallVec<[rustc_codegen_llvm::debuginfo::metadata::enums::native::VariantMemberInfo; 16]> as core::iter::traits::collect::Extend<rustc_codegen_llvm::debuginfo::metadata::enums::native::VariantMemberInfo>>::extend::<core::iter::adapters::map::Map<core::iter::adapters::map::Map<core::ops::range::Range<usize>, <rustc_index::slice::IndexSlice<rustc_abi::layout::VariantIdx, rustc_abi::VariantLayout<rustc_abi::layout::FieldIdx>>>::indices::{closure#0}>, rustc_codegen_llvm::debuginfo::metadata::enums::native::build_coroutine_di_node::{closure#0}::{closure#0}>>
   9: rustc_codegen_llvm::debuginfo::metadata::type_map::build_type_with_children::<rustc_codegen_llvm::debuginfo::metadata::enums::native::build_coroutine_di_node::{closure#0}, for<'a, 'b, 'c> fn(&'a rustc_codegen_llvm::context::GenericCx<'b, rustc_codegen_llvm::context::FullCx<'b, 'c>>) -> smallvec::SmallVec<[core::option::Option<&'b rustc_codegen_llvm::llvm::ffi::Metadata>; 16]>>
  10: rustc_codegen_llvm::debuginfo::metadata::enums::build_coroutine_di_node
  11: rustc_codegen_llvm::debuginfo::metadata::spanned_type_di_node
  12: <core::iter::adapters::map::Map<core::ops::range::Range<usize>, rustc_codegen_llvm::debuginfo::metadata::enums::build_coroutine_variant_struct_type_di_node::{closure#0}::{closure#0}> as core::iter::traits::iterator::Iterator>::next
  13: <smallvec::SmallVec<[&rustc_codegen_llvm::llvm::ffi::Metadata; 16]> as core::iter::traits::collect::Extend<&rustc_codegen_llvm::llvm::ffi::Metadata>>::extend::<core::iter::adapters::map::Map<core::ops::range::Range<usize>, rustc_codegen_llvm::debuginfo::metadata::enums::build_coroutine_variant_struct_type_di_node::{closure#0}::{closure#0}>>
  14: rustc_codegen_llvm::debuginfo::metadata::type_map::build_type_with_children::<rustc_codegen_llvm::debuginfo::metadata::enums::build_coroutine_variant_struct_type_di_node::{closure#0}, rustc_codegen_llvm::debuginfo::metadata::enums::build_coroutine_variant_struct_type_di_node::{closure#1}>
  15: rustc_codegen_llvm::debuginfo::metadata::enums::build_coroutine_variant_struct_type_di_node
  16: <core::iter::adapters::map::Map<core::iter::adapters::map::Map<core::ops::range::Range<usize>, <rustc_index::slice::IndexSlice<rustc_abi::layout::VariantIdx, rustc_abi::VariantLayout<rustc_abi::layout::FieldIdx>>>::indices::{closure#0}>, rustc_codegen_llvm::debuginfo::metadata::enums::native::build_coroutine_di_node::{closure#0}::{closure#0}> as core::iter::traits::iterator::Iterator>::next
  17: <smallvec::SmallVec<[rustc_codegen_llvm::debuginfo::metadata::enums::native::VariantMemberInfo; 16]> as core::iter::traits::collect::Extend<rustc_codegen_llvm::debuginfo::metadata::enums::native::VariantMemberInfo>>::extend::<core::iter::adapters::map::Map<core::iter::adapters::map::Map<core::ops::range::Range<usize>, <rustc_index::slice::IndexSlice<rustc_abi::layout::VariantIdx, rustc_abi::VariantLayout<rustc_abi::layout::FieldIdx>>>::indices::{closure#0}>, rustc_codegen_llvm::debuginfo::metadata::enums::native::build_coroutine_di_node::{closure#0}::{closure#0}>>
  18: rustc_codegen_llvm::debuginfo::metadata::type_map::build_type_with_children::<rustc_codegen_llvm::debuginfo::metadata::enums::native::build_coroutine_di_node::{closure#0}, for<'a, 'b, 'c> fn(&'a rustc_codegen_llvm::context::GenericCx<'b, rustc_codegen_llvm::context::FullCx<'b, 'c>>) -> smallvec::SmallVec<[core::option::Option<&'b rustc_codegen_llvm::llvm::ffi::Metadata>; 16]>>
  19: rustc_codegen_llvm::debuginfo::metadata::enums::build_coroutine_di_node
  20: rustc_codegen_llvm::debuginfo::metadata::spanned_type_di_node
  21: <core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_target::callconv::ArgAbi<rustc_middle::ty::Ty>>, <rustc_codegen_llvm::builder::GenericBuilder<rustc_codegen_llvm::context::FullCx> as rustc_codegen_ssa::traits::debuginfo::DebugInfoBuilderMethods>::dbg_scope_fn::get_function_signature::{closure#1}> as core::iter::traits::iterator::Iterator>::fold::<(), core::iter::traits::iterator::Iterator::for_each::call<core::option::Option<&rustc_codegen_llvm::llvm::ffi::Metadata>, <alloc::vec::Vec<core::option::Option<&rustc_codegen_llvm::llvm::ffi::Metadata>>>::extend_trusted<core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_target::callconv::ArgAbi<rustc_middle::ty::Ty>>, <rustc_codegen_llvm::builder::GenericBuilder<rustc_codegen_llvm::context::FullCx> as rustc_codegen_ssa::traits::debuginfo::DebugInfoBuilderMethods>::dbg_scope_fn::get_function_signature::{closure#1}>>::{closure#0}>::{closure#0}>
  22: <alloc::vec::Vec<core::option::Option<&rustc_codegen_llvm::llvm::ffi::Metadata>>>::extend_trusted::<core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_target::callconv::ArgAbi<rustc_middle::ty::Ty>>, <rustc_codegen_llvm::builder::GenericBuilder<rustc_codegen_llvm::context::FullCx> as rustc_codegen_ssa::traits::debuginfo::DebugInfoBuilderMethods>::dbg_scope_fn::get_function_signature::{closure#1}>>
  23: <rustc_codegen_llvm::builder::GenericBuilder<rustc_codegen_llvm::context::FullCx> as rustc_codegen_ssa::traits::debuginfo::DebugInfoBuilderMethods>::dbg_scope_fn::get_function_signature
  24: <rustc_codegen_llvm::builder::GenericBuilder<rustc_codegen_llvm::context::FullCx> as rustc_codegen_ssa::traits::debuginfo::DebugInfoBuilderMethods>::dbg_scope_fn
  25: rustc_codegen_ssa::mir::codegen_mir::<rustc_codegen_llvm::builder::GenericBuilder<rustc_codegen_llvm::context::FullCx>>
  26: rustc_codegen_ssa::base::codegen_instance::<rustc_codegen_llvm::builder::GenericBuilder<rustc_codegen_llvm::context::FullCx>>
  27: <rustc_middle::mono::MonoItem as rustc_codegen_ssa::mono_item::MonoItemExt>::define::<rustc_codegen_llvm::builder::GenericBuilder<rustc_codegen_llvm::context::FullCx>>
  28: rustc_codegen_llvm::base::compile_codegen_unit::module_codegen
  29: rustc_codegen_llvm::base::compile_codegen_unit
  30: <rustc_codegen_llvm::LlvmCodegenBackend as rustc_codegen_ssa::traits::backend::CodegenBackend>::codegen_crate
  31: <rustc_session::session::Session>::time::<alloc::boxed::Box<dyn core::any::Any>, rustc_interface::passes::start_codegen::{closure#0}>
  32: rustc_interface::passes::start_codegen
  33: <rustc_interface::queries::Linker>::codegen_and_build_linker
  34: std::panicking::catch_unwind::<core::option::Option<rustc_interface::queries::Linker>, core::panic::unwind_safe::AssertUnwindSafe<rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#1}>::{closure#2}::{closure#0}>>
  35: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<<rustc_middle::ty::context::GlobalCtxt>::enter<rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#1}>::{closure#2}, core::option::Option<rustc_interface::queries::Linker>>::{closure#1}, core::option::Option<rustc_interface::queries::Linker>>::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>
  36: <rustc_middle::ty::context::TyCtxt>::create_global_ctxt::<core::option::Option<rustc_interface::queries::Linker>, rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#1}>::{closure#2}>
  37: rustc_interface::passes::create_and_enter_global_ctxt::<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#1}>
  38: std::panicking::catch_unwind::<(), core::panic::unwind_safe::AssertUnwindSafe<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#2}::{closure#0}>>
  39: rustc_interface::interface::run_compiler::<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#2}
  40: <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#2}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}, ()>
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---
note: please make sure that you have updated to the latest nightly

note: rustc 1.99.0-nightly (7c1dfdb90 2026-07-24) running on aarch64-unknown-linux-gnu

note: compiler flags: -Z threads=1 -Z simulate-remapped-rust-src-base=/rustc/FAKE_PREFIX -Z translate-remapped-path-to-local-path=no -Z ignore-directory-in-diagnostics-source-blocks=/cargo -Z ignore-directory-in-diagnostics-source-blocks=/checkout/vendor -C codegen-units=1 -Z ui-testing -Z deduplicate-diagnostics=no -Z write-long-types-to-disk=no -C strip=debuginfo -C prefer-dynamic -C rpath -C debuginfo=2

query stack during panic:
end of query stack
------------------------------------------

---- [ui] tests/ui/async-await/async-closures/debuginfo-by-move-body.rs stdout end ----
---- [ui] tests/ui/async-await/in-trait/normalize-opaque-with-bound-vars.rs stdout ----

error: test compilation failed although it shouldn't!
status: exit status: 101
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/async-await/in-trait/normalize-opaque-with-bound-vars.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/async-await/in-trait/normalize-opaque-with-bound-vars" "-A" "unused" "-W" "unused_attributes" "-A" "internal_features" "-A" "incomplete_features" "-A" "unused_parens" "-A" "unused_braces" "-Crpath" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers" "--edition=2021" "-Cdebuginfo=2"
stdout: none
--- stderr -------------------------------

thread 'rustc' (33805) panicked at compiler/rustc_codegen_llvm/src/debuginfo/metadata/enums/mod.rs:330:25:
index out of bounds: the len is 0 but the index is 0
stack backtrace:
   0: __rustc::rust_begin_unwind
   1: core::panicking::panic_fmt
   2: core::panicking::panic_bounds_check
   3: <core::iter::adapters::map::Map<core::ops::range::Range<usize>, rustc_codegen_llvm::debuginfo::metadata::enums::build_coroutine_variant_struct_type_di_node::{closure#0}::{closure#0}> as core::iter::traits::iterator::Iterator>::next
   4: <smallvec::SmallVec<[&rustc_codegen_llvm::llvm::ffi::Metadata; 16]> as core::iter::traits::collect::Extend<&rustc_codegen_llvm::llvm::ffi::Metadata>>::extend::<core::iter::adapters::map::Map<core::ops::range::Range<usize>, rustc_codegen_llvm::debuginfo::metadata::enums::build_coroutine_variant_struct_type_di_node::{closure#0}::{closure#0}>>
   5: rustc_codegen_llvm::debuginfo::metadata::type_map::build_type_with_children::<rustc_codegen_llvm::debuginfo::metadata::enums::build_coroutine_variant_struct_type_di_node::{closure#0}, rustc_codegen_llvm::debuginfo::metadata::enums::build_coroutine_variant_struct_type_di_node::{closure#1}>
   6: rustc_codegen_llvm::debuginfo::metadata::enums::build_coroutine_variant_struct_type_di_node
   7: <core::iter::adapters::map::Map<core::iter::adapters::map::Map<core::ops::range::Range<usize>, <rustc_index::slice::IndexSlice<rustc_abi::layout::VariantIdx, rustc_abi::VariantLayout<rustc_abi::layout::FieldIdx>>>::indices::{closure#0}>, rustc_codegen_llvm::debuginfo::metadata::enums::native::build_coroutine_di_node::{closure#0}::{closure#0}> as core::iter::traits::iterator::Iterator>::next
   8: <smallvec::SmallVec<[rustc_codegen_llvm::debuginfo::metadata::enums::native::VariantMemberInfo; 16]> as core::iter::traits::collect::Extend<rustc_codegen_llvm::debuginfo::metadata::enums::native::VariantMemberInfo>>::extend::<core::iter::adapters::map::Map<core::iter::adapters::map::Map<core::ops::range::Range<usize>, <rustc_index::slice::IndexSlice<rustc_abi::layout::VariantIdx, rustc_abi::VariantLayout<rustc_abi::layout::FieldIdx>>>::indices::{closure#0}>, rustc_codegen_llvm::debuginfo::metadata::enums::native::build_coroutine_di_node::{closure#0}::{closure#0}>>
   9: rustc_codegen_llvm::debuginfo::metadata::type_map::build_type_with_children::<rustc_codegen_llvm::debuginfo::metadata::enums::native::build_coroutine_di_node::{closure#0}, for<'a, 'b, 'c> fn(&'a rustc_codegen_llvm::context::GenericCx<'b, rustc_codegen_llvm::context::FullCx<'b, 'c>>) -> smallvec::SmallVec<[core::option::Option<&'b rustc_codegen_llvm::llvm::ffi::Metadata>; 16]>>
  10: rustc_codegen_llvm::debuginfo::metadata::enums::build_coroutine_di_node
  11: rustc_codegen_llvm::debuginfo::metadata::spanned_type_di_node
  12: rustc_codegen_llvm::debuginfo::metadata::build_pointer_or_reference_di_node
  13: rustc_codegen_llvm::debuginfo::metadata::spanned_type_di_node
  14: <core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_target::callconv::ArgAbi<rustc_middle::ty::Ty>>, <rustc_codegen_llvm::builder::GenericBuilder<rustc_codegen_llvm::context::FullCx> as rustc_codegen_ssa::traits::debuginfo::DebugInfoBuilderMethods>::dbg_scope_fn::get_function_signature::{closure#1}> as core::iter::traits::iterator::Iterator>::fold::<(), core::iter::traits::iterator::Iterator::for_each::call<core::option::Option<&rustc_codegen_llvm::llvm::ffi::Metadata>, <alloc::vec::Vec<core::option::Option<&rustc_codegen_llvm::llvm::ffi::Metadata>>>::extend_trusted<core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_target::callconv::ArgAbi<rustc_middle::ty::Ty>>, <rustc_codegen_llvm::builder::GenericBuilder<rustc_codegen_llvm::context::FullCx> as rustc_codegen_ssa::traits::debuginfo::DebugInfoBuilderMethods>::dbg_scope_fn::get_function_signature::{closure#1}>>::{closure#0}>::{closure#0}>
  15: <alloc::vec::Vec<core::option::Option<&rustc_codegen_llvm::llvm::ffi::Metadata>>>::extend_trusted::<core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_target::callconv::ArgAbi<rustc_middle::ty::Ty>>, <rustc_codegen_llvm::builder::GenericBuilder<rustc_codegen_llvm::context::FullCx> as rustc_codegen_ssa::traits::debuginfo::DebugInfoBuilderMethods>::dbg_scope_fn::get_function_signature::{closure#1}>>
  16: <rustc_codegen_llvm::builder::GenericBuilder<rustc_codegen_llvm::context::FullCx> as rustc_codegen_ssa::traits::debuginfo::DebugInfoBuilderMethods>::dbg_scope_fn::get_function_signature
  17: <rustc_codegen_llvm::builder::GenericBuilder<rustc_codegen_llvm::context::FullCx> as rustc_codegen_ssa::traits::debuginfo::DebugInfoBuilderMethods>::dbg_scope_fn
  18: rustc_codegen_ssa::mir::codegen_mir::<rustc_codegen_llvm::builder::GenericBuilder<rustc_codegen_llvm::context::FullCx>>
  19: rustc_codegen_ssa::base::codegen_instance::<rustc_codegen_llvm::builder::GenericBuilder<rustc_codegen_llvm::context::FullCx>>
  20: <rustc_middle::mono::MonoItem as rustc_codegen_ssa::mono_item::MonoItemExt>::define::<rustc_codegen_llvm::builder::GenericBuilder<rustc_codegen_llvm::context::FullCx>>
  21: rustc_codegen_llvm::base::compile_codegen_unit::module_codegen
  22: rustc_codegen_llvm::base::compile_codegen_unit
  23: <rustc_codegen_llvm::LlvmCodegenBackend as rustc_codegen_ssa::traits::backend::CodegenBackend>::codegen_crate
  24: <rustc_session::session::Session>::time::<alloc::boxed::Box<dyn core::any::Any>, rustc_interface::passes::start_codegen::{closure#0}>
  25: rustc_interface::passes::start_codegen
  26: <rustc_interface::queries::Linker>::codegen_and_build_linker
  27: std::panicking::catch_unwind::<core::option::Option<rustc_interface::queries::Linker>, core::panic::unwind_safe::AssertUnwindSafe<rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#1}>::{closure#2}::{closure#0}>>
  28: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<<rustc_middle::ty::context::GlobalCtxt>::enter<rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#1}>::{closure#2}, core::option::Option<rustc_interface::queries::Linker>>::{closure#1}, core::option::Option<rustc_interface::queries::Linker>>::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>
  29: <rustc_middle::ty::context::TyCtxt>::create_global_ctxt::<core::option::Option<rustc_interface::queries::Linker>, rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#1}>::{closure#2}>
  30: rustc_interface::passes::create_and_enter_global_ctxt::<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#1}>
  31: std::panicking::catch_unwind::<(), core::panic::unwind_safe::AssertUnwindSafe<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#2}::{closure#0}>>
  32: rustc_interface::interface::run_compiler::<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#2}
  33: <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#2}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}, ()>
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---
note: please make sure that you have updated to the latest nightly

note: rustc 1.99.0-nightly (7c1dfdb90 2026-07-24) running on aarch64-unknown-linux-gnu

note: compiler flags: -Z threads=1 -Z simulate-remapped-rust-src-base=/rustc/FAKE_PREFIX -Z translate-remapped-path-to-local-path=no -Z ignore-directory-in-diagnostics-source-blocks=/cargo -Z ignore-directory-in-diagnostics-source-blocks=/checkout/vendor -C codegen-units=1 -Z ui-testing -Z deduplicate-diagnostics=no -Z write-long-types-to-disk=no -C strip=debuginfo -C prefer-dynamic -C rpath -C debuginfo=2

query stack during panic:
end of query stack
------------------------------------------

---- [ui] tests/ui/async-await/in-trait/normalize-opaque-with-bound-vars.rs stdout end ----
---- [ui] tests/ui/coroutine/issue-58888.rs stdout ----

error: test compilation failed although it shouldn't!
status: exit status: 101
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coroutine/issue-58888.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "-O" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "-o" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/coroutine/issue-58888/a" "-A" "internal_features" "-A" "incomplete_features" "-A" "unused_parens" "-A" "unused_braces" "-Crpath" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers" "-g"
stdout: none
--- stderr -------------------------------

thread 'rustc' (60953) panicked at compiler/rustc_codegen_llvm/src/debuginfo/metadata/enums/mod.rs:330:25:
index out of bounds: the len is 0 but the index is 0
stack backtrace:
   0: __rustc::rust_begin_unwind
   1: core::panicking::panic_fmt
   2: core::panicking::panic_bounds_check
   3: <core::iter::adapters::map::Map<core::ops::range::Range<usize>, rustc_codegen_llvm::debuginfo::metadata::enums::build_coroutine_variant_struct_type_di_node::{closure#0}::{closure#0}> as core::iter::traits::iterator::Iterator>::next
   4: <smallvec::SmallVec<[&rustc_codegen_llvm::llvm::ffi::Metadata; 16]> as core::iter::traits::collect::Extend<&rustc_codegen_llvm::llvm::ffi::Metadata>>::extend::<core::iter::adapters::map::Map<core::ops::range::Range<usize>, rustc_codegen_llvm::debuginfo::metadata::enums::build_coroutine_variant_struct_type_di_node::{closure#0}::{closure#0}>>
   5: rustc_codegen_llvm::debuginfo::metadata::type_map::build_type_with_children::<rustc_codegen_llvm::debuginfo::metadata::enums::build_coroutine_variant_struct_type_di_node::{closure#0}, rustc_codegen_llvm::debuginfo::metadata::enums::build_coroutine_variant_struct_type_di_node::{closure#1}>
   6: rustc_codegen_llvm::debuginfo::metadata::enums::build_coroutine_variant_struct_type_di_node
   7: <core::iter::adapters::map::Map<core::iter::adapters::map::Map<core::ops::range::Range<usize>, <rustc_index::slice::IndexSlice<rustc_abi::layout::VariantIdx, rustc_abi::VariantLayout<rustc_abi::layout::FieldIdx>>>::indices::{closure#0}>, rustc_codegen_llvm::debuginfo::metadata::enums::native::build_coroutine_di_node::{closure#0}::{closure#0}> as core::iter::traits::iterator::Iterator>::next
   8: <smallvec::SmallVec<[rustc_codegen_llvm::debuginfo::metadata::enums::native::VariantMemberInfo; 16]> as core::iter::traits::collect::Extend<rustc_codegen_llvm::debuginfo::metadata::enums::native::VariantMemberInfo>>::extend::<core::iter::adapters::map::Map<core::iter::adapters::map::Map<core::ops::range::Range<usize>, <rustc_index::slice::IndexSlice<rustc_abi::layout::VariantIdx, rustc_abi::VariantLayout<rustc_abi::layout::FieldIdx>>>::indices::{closure#0}>, rustc_codegen_llvm::debuginfo::metadata::enums::native::build_coroutine_di_node::{closure#0}::{closure#0}>>
   9: rustc_codegen_llvm::debuginfo::metadata::type_map::build_type_with_children::<rustc_codegen_llvm::debuginfo::metadata::enums::native::build_coroutine_di_node::{closure#0}, for<'a, 'b, 'c> fn(&'a rustc_codegen_llvm::context::GenericCx<'b, rustc_codegen_llvm::context::FullCx<'b, 'c>>) -> smallvec::SmallVec<[core::option::Option<&'b rustc_codegen_llvm::llvm::ffi::Metadata>; 16]>>
  10: rustc_codegen_llvm::debuginfo::metadata::enums::build_coroutine_di_node
  11: rustc_codegen_llvm::debuginfo::metadata::spanned_type_di_node
  12: rustc_codegen_llvm::debuginfo::metadata::build_pointer_or_reference_di_node
  13: rustc_codegen_llvm::debuginfo::metadata::spanned_type_di_node
  14: <core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_target::callconv::ArgAbi<rustc_middle::ty::Ty>>, <rustc_codegen_llvm::builder::GenericBuilder<rustc_codegen_llvm::context::FullCx> as rustc_codegen_ssa::traits::debuginfo::DebugInfoBuilderMethods>::dbg_scope_fn::get_function_signature::{closure#1}> as core::iter::traits::iterator::Iterator>::fold::<(), core::iter::traits::iterator::Iterator::for_each::call<core::option::Option<&rustc_codegen_llvm::llvm::ffi::Metadata>, <alloc::vec::Vec<core::option::Option<&rustc_codegen_llvm::llvm::ffi::Metadata>>>::extend_trusted<core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_target::callconv::ArgAbi<rustc_middle::ty::Ty>>, <rustc_codegen_llvm::builder::GenericBuilder<rustc_codegen_llvm::context::FullCx> as rustc_codegen_ssa::traits::debuginfo::DebugInfoBuilderMethods>::dbg_scope_fn::get_function_signature::{closure#1}>>::{closure#0}>::{closure#0}>
  15: <alloc::vec::Vec<core::option::Option<&rustc_codegen_llvm::llvm::ffi::Metadata>>>::extend_trusted::<core::iter::adapters::map::Map<core::slice::iter::Iter<rustc_target::callconv::ArgAbi<rustc_middle::ty::Ty>>, <rustc_codegen_llvm::builder::GenericBuilder<rustc_codegen_llvm::context::FullCx> as rustc_codegen_ssa::traits::debuginfo::DebugInfoBuilderMethods>::dbg_scope_fn::get_function_signature::{closure#1}>>
  16: <rustc_codegen_llvm::builder::GenericBuilder<rustc_codegen_llvm::context::FullCx> as rustc_codegen_ssa::traits::debuginfo::DebugInfoBuilderMethods>::dbg_scope_fn::get_function_signature
  17: <rustc_codegen_llvm::builder::GenericBuilder<rustc_codegen_llvm::context::FullCx> as rustc_codegen_ssa::traits::debuginfo::DebugInfoBuilderMethods>::dbg_scope_fn
  18: rustc_codegen_ssa::mir::codegen_mir::<rustc_codegen_llvm::builder::GenericBuilder<rustc_codegen_llvm::context::FullCx>>
  19: rustc_codegen_ssa::base::codegen_instance::<rustc_codegen_llvm::builder::GenericBuilder<rustc_codegen_llvm::context::FullCx>>
  20: <rustc_middle::mono::MonoItem as rustc_codegen_ssa::mono_item::MonoItemExt>::define::<rustc_codegen_llvm::builder::GenericBuilder<rustc_codegen_llvm::context::FullCx>>
  21: rustc_codegen_llvm::base::compile_codegen_unit::module_codegen
  22: rustc_codegen_llvm::base::compile_codegen_unit
  23: <rustc_codegen_llvm::LlvmCodegenBackend as rustc_codegen_ssa::traits::backend::CodegenBackend>::codegen_crate
  24: <rustc_session::session::Session>::time::<alloc::boxed::Box<dyn core::any::Any>, rustc_interface::passes::start_codegen::{closure#0}>
  25: rustc_interface::passes::start_codegen
  26: <rustc_interface::queries::Linker>::codegen_and_build_linker
  27: std::panicking::catch_unwind::<core::option::Option<rustc_interface::queries::Linker>, core::panic::unwind_safe::AssertUnwindSafe<rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#1}>::{closure#2}::{closure#0}>>
  28: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<<rustc_middle::ty::context::GlobalCtxt>::enter<rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#1}>::{closure#2}, core::option::Option<rustc_interface::queries::Linker>>::{closure#1}, core::option::Option<rustc_interface::queries::Linker>>::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>
  29: <rustc_middle::ty::context::TyCtxt>::create_global_ctxt::<core::option::Option<rustc_interface::queries::Linker>, rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#1}>::{closure#2}>
  30: rustc_interface::passes::create_and_enter_global_ctxt::<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#1}>
  31: std::panicking::catch_unwind::<(), core::panic::unwind_safe::AssertUnwindSafe<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#2}::{closure#0}>>
  32: rustc_interface::interface::run_compiler::<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#2}
  33: <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#2}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}, ()>
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---
note: please make sure that you have updated to the latest nightly

note: rustc 1.99.0-nightly (7c1dfdb90 2026-07-24) running on aarch64-unknown-linux-gnu

note: compiler flags: -Z threads=1 -Z simulate-remapped-rust-src-base=/rustc/FAKE_PREFIX -Z translate-remapped-path-to-local-path=no -Z ignore-directory-in-diagnostics-source-blocks=/cargo -Z ignore-directory-in-diagnostics-source-blocks=/checkout/vendor -C codegen-units=1 -Z ui-testing -Z deduplicate-diagnostics=no -Z write-long-types-to-disk=no -C strip=debuginfo -C prefer-dynamic -C rpath

query stack during panic:
end of query stack
------------------------------------------

---- [ui] tests/ui/coroutine/issue-58888.rs stdout end ----
---- [ui] tests/ui/coroutine/issue-87142.rs stdout ----

error: test compilation failed although it shouldn't!
status: exit status: 101
command: env -u RUSTC_LOG_COLOR RUSTC_ICE="0" RUST_BACKTRACE="short" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2/bin/rustc" "/checkout/tests/ui/coroutine/issue-87142.rs" "-Zthreads=1" "-Zsimulate-remapped-rust-src-base=/rustc/FAKE_PREFIX" "-Ztranslate-remapped-path-to-local-path=no" "-Z" "ignore-directory-in-diagnostics-source-blocks=/cargo" "-Z" "ignore-directory-in-diagnostics-source-blocks=/checkout/vendor" "--sysroot" "/checkout/obj/build/aarch64-unknown-linux-gnu/stage2" "--target=aarch64-unknown-linux-gnu" "--check-cfg" "cfg(test,FALSE)" "--error-format" "json" "--json" "future-incompat" "-Ccodegen-units=1" "-Zui-testing" "-Zdeduplicate-diagnostics=no" "-Zwrite-long-types-to-disk=no" "-Cstrip=debuginfo" "-C" "prefer-dynamic" "--out-dir" "/checkout/obj/build/aarch64-unknown-linux-gnu/test/ui/coroutine/issue-87142" "-A" "unused" "-W" "unused_attributes" "-A" "internal_features" "-A" "incomplete_features" "-A" "unused_parens" "-A" "unused_braces" "-Crpath" "-Lnative=/checkout/obj/build/aarch64-unknown-linux-gnu/native/rust-test-helpers" "-Cdebuginfo=2"
stdout: none
--- stderr -------------------------------

thread 'rustc' (60985) panicked at compiler/rustc_codegen_llvm/src/debuginfo/metadata/enums/mod.rs:330:25:
index out of bounds: the len is 0 but the index is 0
stack backtrace:
   0: __rustc::rust_begin_unwind
   1: core::panicking::panic_fmt
   2: core::panicking::panic_bounds_check
   3: <core::iter::adapters::map::Map<core::ops::range::Range<usize>, rustc_codegen_llvm::debuginfo::metadata::enums::build_coroutine_variant_struct_type_di_node::{closure#0}::{closure#0}> as core::iter::traits::iterator::Iterator>::next
   4: <smallvec::SmallVec<[&rustc_codegen_llvm::llvm::ffi::Metadata; 16]> as core::iter::traits::collect::Extend<&rustc_codegen_llvm::llvm::ffi::Metadata>>::extend::<core::iter::adapters::map::Map<core::ops::range::Range<usize>, rustc_codegen_llvm::debuginfo::metadata::enums::build_coroutine_variant_struct_type_di_node::{closure#0}::{closure#0}>>
   5: rustc_codegen_llvm::debuginfo::metadata::type_map::build_type_with_children::<rustc_codegen_llvm::debuginfo::metadata::enums::build_coroutine_variant_struct_type_di_node::{closure#0}, rustc_codegen_llvm::debuginfo::metadata::enums::build_coroutine_variant_struct_type_di_node::{closure#1}>
   6: rustc_codegen_llvm::debuginfo::metadata::enums::build_coroutine_variant_struct_type_di_node
   7: <core::iter::adapters::map::Map<core::iter::adapters::map::Map<core::ops::range::Range<usize>, <rustc_index::slice::IndexSlice<rustc_abi::layout::VariantIdx, rustc_abi::VariantLayout<rustc_abi::layout::FieldIdx>>>::indices::{closure#0}>, rustc_codegen_llvm::debuginfo::metadata::enums::native::build_coroutine_di_node::{closure#0}::{closure#0}> as core::iter::traits::iterator::Iterator>::next
   8: <smallvec::SmallVec<[rustc_codegen_llvm::debuginfo::metadata::enums::native::VariantMemberInfo; 16]> as core::iter::traits::collect::Extend<rustc_codegen_llvm::debuginfo::metadata::enums::native::VariantMemberInfo>>::extend::<core::iter::adapters::map::Map<core::iter::adapters::map::Map<core::ops::range::Range<usize>, <rustc_index::slice::IndexSlice<rustc_abi::layout::VariantIdx, rustc_abi::VariantLayout<rustc_abi::layout::FieldIdx>>>::indices::{closure#0}>, rustc_codegen_llvm::debuginfo::metadata::enums::native::build_coroutine_di_node::{closure#0}::{closure#0}>>
   9: rustc_codegen_llvm::debuginfo::metadata::type_map::build_type_with_children::<rustc_codegen_llvm::debuginfo::metadata::enums::native::build_coroutine_di_node::{closure#0}, for<'a, 'b, 'c> fn(&'a rustc_codegen_llvm::context::GenericCx<'b, rustc_codegen_llvm::context::FullCx<'b, 'c>>) -> smallvec::SmallVec<[core::option::Option<&'b rustc_codegen_llvm::llvm::ffi::Metadata>; 16]>>
  10: rustc_codegen_llvm::debuginfo::metadata::enums::build_coroutine_di_node
  11: rustc_codegen_llvm::debuginfo::metadata::spanned_type_di_node
  12: <rustc_codegen_llvm::builder::GenericBuilder<rustc_codegen_llvm::context::FullCx> as rustc_codegen_ssa::traits::debuginfo::DebugInfoBuilderMethods>::dbg_scope_fn::get_function_signature
  13: <rustc_codegen_llvm::builder::GenericBuilder<rustc_codegen_llvm::context::FullCx> as rustc_codegen_ssa::traits::debuginfo::DebugInfoBuilderMethods>::dbg_scope_fn
  14: rustc_codegen_ssa::mir::codegen_mir::<rustc_codegen_llvm::builder::GenericBuilder<rustc_codegen_llvm::context::FullCx>>
  15: rustc_codegen_ssa::base::codegen_instance::<rustc_codegen_llvm::builder::GenericBuilder<rustc_codegen_llvm::context::FullCx>>
  16: <rustc_middle::mono::MonoItem as rustc_codegen_ssa::mono_item::MonoItemExt>::define::<rustc_codegen_llvm::builder::GenericBuilder<rustc_codegen_llvm::context::FullCx>>
  17: rustc_codegen_llvm::base::compile_codegen_unit::module_codegen
  18: rustc_codegen_llvm::base::compile_codegen_unit
  19: <rustc_codegen_llvm::LlvmCodegenBackend as rustc_codegen_ssa::traits::backend::CodegenBackend>::codegen_crate
  20: <rustc_session::session::Session>::time::<alloc::boxed::Box<dyn core::any::Any>, rustc_interface::passes::start_codegen::{closure#0}>
  21: rustc_interface::passes::start_codegen
  22: <rustc_interface::queries::Linker>::codegen_and_build_linker
  23: std::panicking::catch_unwind::<core::option::Option<rustc_interface::queries::Linker>, core::panic::unwind_safe::AssertUnwindSafe<rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#1}>::{closure#2}::{closure#0}>>
  24: <std::thread::local::LocalKey<core::cell::Cell<*const ()>>>::with::<rustc_middle::ty::context::tls::enter_context<<rustc_middle::ty::context::GlobalCtxt>::enter<rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#1}>::{closure#2}, core::option::Option<rustc_interface::queries::Linker>>::{closure#1}, core::option::Option<rustc_interface::queries::Linker>>::{closure#0}, core::option::Option<rustc_interface::queries::Linker>>
  25: <rustc_middle::ty::context::TyCtxt>::create_global_ctxt::<core::option::Option<rustc_interface::queries::Linker>, rustc_interface::passes::create_and_enter_global_ctxt<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#1}>::{closure#2}>
  26: rustc_interface::passes::create_and_enter_global_ctxt::<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#1}>
  27: std::panicking::catch_unwind::<(), core::panic::unwind_safe::AssertUnwindSafe<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#2}::{closure#0}>>
  28: rustc_interface::interface::run_compiler::<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#2}
  29: <scoped_tls::ScopedKey<rustc_span::SessionGlobals>>::set::<rustc_interface::util::run_in_thread_with_globals<rustc_interface::util::run_in_thread_pool_with_globals<rustc_interface::interface::run_compiler<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#2}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}::{closure#0}, ()>
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
---
note: please make sure that you have updated to the latest nightly

note: rustc 1.99.0-nightly (7c1dfdb90 2026-07-24) running on aarch64-unknown-linux-gnu

note: compiler flags: -Z threads=1 -Z simulate-remapped-rust-src-base=/rustc/FAKE_PREFIX -Z translate-remapped-path-to-local-path=no -Z ignore-directory-in-diagnostics-source-blocks=/cargo -Z ignore-directory-in-diagnostics-source-blocks=/checkout/vendor -C codegen-units=1 -Z ui-testing -Z deduplicate-diagnostics=no -Z write-long-types-to-disk=no -C strip=debuginfo -C prefer-dynamic -C rpath -C debuginfo=2

query stack during panic:
end of query stack
------------------------------------------

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants