thread 'rustc' (866989) panicked at /rustc-dev/23903d01c237d7c7d4fb62b82ca846bc45de4e0c/compiler/rustc_hir_typeck/src/upvar.rs:1946:34:
Box<dyn Any>
stack backtrace:
0: 0x7f81edeea9bb - <<std[b302fb27a3f91e2e]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[eeb74f28e99c9360]::fmt::Display>::fmt
1: 0x7f81ee596348 - core[eeb74f28e99c9360]::fmt::write
2: 0x7f81edf019c6 - <std[b302fb27a3f91e2e]::sys::stdio::unix::Stderr as std[b302fb27a3f91e2e]::io::Write>::write_fmt
3: 0x7f81edec09c8 - std[b302fb27a3f91e2e]::panicking::default_hook::{closure#0}
4: 0x7f81ededddc3 - std[b302fb27a3f91e2e]::panicking::default_hook
5: 0x7f81ecee329c - std[b302fb27a3f91e2e]::panicking::update_hook::<alloc[ae169e729e5df420]::boxed::Box<rustc_driver_impl[1043facd4a3b5a1e]::install_ice_hook::{closure#1}>>::{closure#0}
6: 0x7f81edede0a2 - std[b302fb27a3f91e2e]::panicking::panic_with_hook
7: 0x7f81ecf13151 - std[b302fb27a3f91e2e]::panicking::begin_panic::<rustc_errors[ec9f4083974ba164]::ExplicitBug>::{closure#0}
8: 0x7f81ecf0bcc6 - std[b302fb27a3f91e2e]::sys::backtrace::__rust_end_short_backtrace::<std[b302fb27a3f91e2e]::panicking::begin_panic<rustc_errors[ec9f4083974ba164]::ExplicitBug>::{closure#0}, !>
9: 0x7f81ecf09ab8 - std[b302fb27a3f91e2e]::panicking::begin_panic::<rustc_errors[ec9f4083974ba164]::ExplicitBug>
10: 0x7f81ecf1e791 - <rustc_errors[ec9f4083974ba164]::diagnostic::BugAbort as rustc_errors[ec9f4083974ba164]::diagnostic::EmissionGuarantee>::emit_producing_guarantee
11: 0x7f81ed4d7e4c - <rustc_errors[ec9f4083974ba164]::DiagCtxtHandle>::span_bug::<rustc_span[e6c053b2fe5f7640]::span_encoding::Span, alloc[ae169e729e5df420]::string::String>
12: 0x7f81ed4ff976 - rustc_middle[fca09ee1eeeaccd3]::util::bug::opt_span_bug_fmt::<rustc_span[e6c053b2fe5f7640]::span_encoding::Span>::{closure#0}
13: 0x7f81ed4ffb22 - rustc_middle[fca09ee1eeeaccd3]::ty::context::tls::with_opt::<rustc_middle[fca09ee1eeeaccd3]::util::bug::opt_span_bug_fmt<rustc_span[e6c053b2fe5f7640]::span_encoding::Span>::{closure#0}, !>::{closure#0}
14: 0x7f81ed4f05eb - rustc_middle[fca09ee1eeeaccd3]::ty::context::tls::with_context_opt::<rustc_middle[fca09ee1eeeaccd3]::ty::context::tls::with_opt<rustc_middle[fca09ee1eeeaccd3]::util::bug::opt_span_bug_fmt<rustc_span[e6c053b2fe5f7640]::span_encoding::Span>::{closure#0}, !>::{closure#0}, !>
15: 0x7f81eb76b128 - rustc_middle[fca09ee1eeeaccd3]::util::bug::span_bug_fmt::<rustc_span[e6c053b2fe5f7640]::span_encoding::Span>
16: 0x7f81f0394b14 - <rustc_hir_typeck[3b413b8b1bef4b3b]::fn_ctxt::FnCtxt>::determine_capture_mutability.cold
17: 0x7f81ef34504e - <rustc_hir_typeck[3b413b8b1bef4b3b]::fn_ctxt::FnCtxt>::compute_min_captures
18: 0x7f81ef34854f - <rustc_hir_typeck[3b413b8b1bef4b3b]::fn_ctxt::FnCtxt>::analyze_closure
19: 0x7f81eeba67d2 - <rustc_hir_typeck[3b413b8b1bef4b3b]::upvar::InferBorrowKindVisitor as rustc_hir[346db3e924c19d1a]::intravisit::Visitor>::visit_expr
20: 0x7f81eeba6930 - <rustc_hir_typeck[3b413b8b1bef4b3b]::upvar::InferBorrowKindVisitor as rustc_hir[346db3e924c19d1a]::intravisit::Visitor>::visit_expr
21: 0x7f81eeba6aca - <rustc_hir_typeck[3b413b8b1bef4b3b]::upvar::InferBorrowKindVisitor as rustc_hir[346db3e924c19d1a]::intravisit::Visitor>::visit_expr
22: 0x7f81eebab014 - rustc_hir_typeck[3b413b8b1bef4b3b]::typeck_with_inspect::{closure#0}
23: 0x7f81eeba7bc4 - rustc_query_impl[36767619dcd2566]::query_impl::typeck::invoke_provider_fn::__rust_begin_short_backtrace
24: 0x7f81ee682366 - rustc_query_impl[36767619dcd2566]::execution::try_execute_query::<rustc_data_structures[18b11a475be38cee]::vec_cache::VecCache<rustc_span[e6c053b2fe5f7640]::def_id::LocalDefId, rustc_middle[fca09ee1eeeaccd3]::query::erase::ErasedData<[u8; 8usize]>, rustc_middle[fca09ee1eeeaccd3]::dep_graph::graph::DepNodeIndex>, false>
25: 0x7f81ee681dc3 - rustc_query_impl[36767619dcd2566]::query_impl::typeck::execute_query_non_incr::__rust_end_short_backtrace
26: 0x7f81eef7d658 - <rustc_middle[fca09ee1eeeaccd3]::ty::context::TyCtxt>::par_hir_body_owners::<rustc_hir_analysis[6a03357fbbae8c8c]::check_crate::{closure#2}>::{closure#0}
27: 0x7f81eef7cfc9 - rustc_hir_analysis[6a03357fbbae8c8c]::check_crate
28: 0x7f81ee67eb20 - rustc_interface[e1e6c05c12b55e19]::passes::analysis
29: 0x7f81ef795289 - rustc_query_impl[36767619dcd2566]::execution::try_execute_query::<rustc_middle[fca09ee1eeeaccd3]::query::caches::SingleCache<rustc_middle[fca09ee1eeeaccd3]::query::erase::ErasedData<[u8; 0usize]>>, false>
30: 0x7f81ef795069 - rustc_query_impl[36767619dcd2566]::query_impl::analysis::execute_query_non_incr::__rust_end_short_backtrace
31: 0x7f81ef7533d4 - rustc_interface[e1e6c05c12b55e19]::interface::run_compiler::<(), rustc_driver_impl[1043facd4a3b5a1e]::run_compiler::{closure#0}>::{closure#1}
32: 0x7f81ef73e5fe - std[b302fb27a3f91e2e]::sys::backtrace::__rust_begin_short_backtrace::<rustc_interface[e1e6c05c12b55e19]::util::run_in_thread_with_globals<rustc_interface[e1e6c05c12b55e19]::util::run_in_thread_pool_with_globals<rustc_interface[e1e6c05c12b55e19]::interface::run_compiler<(), rustc_driver_impl[1043facd4a3b5a1e]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>
33: 0x7f81ef73eea0 - <std[b302fb27a3f91e2e]::thread::lifecycle::spawn_unchecked<rustc_interface[e1e6c05c12b55e19]::util::run_in_thread_with_globals<rustc_interface[e1e6c05c12b55e19]::util::run_in_thread_pool_with_globals<rustc_interface[e1e6c05c12b55e19]::interface::run_compiler<(), rustc_driver_impl[1043facd4a3b5a1e]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>::{closure#1} as core[eeb74f28e99c9360]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
34: 0x7f81ef73fd2c - <std[b302fb27a3f91e2e]::sys::thread::unix::Thread>::new::thread_start
35: 0x7f81e930d609 - start_thread
at /build/glibc-B3wQXB/glibc-2.31/nptl/pthread_create.c:477:8
36: 0x7f81e9232353 - clone
at /build/glibc-B3wQXB/glibc-2.31/misc/../sysdeps/unix/sysv/linux/x86_64/clone.S:95:0
37: 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: please attach the file at `rustc-ice-2026-03-30T02_09_21-866948.txt` to your bug report
note: rustc 1.96.0-nightly (23903d01c 2026-03-26) running on x86_64-unknown-linux-gnu
note: compiler flags: -Z next-solver=globally
query stack during panic:
#0 [typeck] type-checking `main`
#1 [analysis] running analysis passes on crate `bug`
end of query stack
error: aborting due to 2 previous errors
Code
Meta
rustc --version --verbose:Error output
Backtrace