Skip to content

ICE: tried to deref_mut a 'ResultsHandle::Borrowed' #133641

Closed
@matthiaskrgr

Description

@matthiaskrgr

Code

//@ compile-flags -Zdump-mir=all -Zdump-mir-dataflow
pub fn main() {}

Meta

rustc --version --verbose:

rustc 1.85.0-nightly (0c4f3a45b 2024-11-29)
binary: rustc
commit-hash: 0c4f3a45b86c77b0a89ff06703aa6097af35d924
commit-date: 2024-11-29
host: x86_64-unknown-linux-gnu
release: 1.85.0-nightly
LLVM version: 19.1.4

Error output

<output>
Backtrace

thread 'rustc' panicked at /rustc/0c4f3a45b86c77b0a89ff06703aa6097af35d924/compiler/rustc_mir_dataflow/src/framework/cursor.rs:45:17:
tried to deref_mut a `ResultsHandle::Borrowed
stack backtrace:
   0:     0x71582b16651a - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h70ffca2eef406332
   1:     0x71582b813ca6 - core::fmt::write::hffe4ecf4e1784fe3
   2:     0x71582cc29391 - std::io::Write::write_fmt::he678ced2a9dfd2c1
   3:     0x71582b166372 - std::sys::backtrace::BacktraceLock::print::h5ec011ea8bf2ba71
   4:     0x71582b16887a - std::panicking::default_hook::{{closure}}::hfc1a7d970c6766aa
   5:     0x71582b1686c3 - std::panicking::default_hook::h6b084c5550092e01
   6:     0x71582a2dfe38 - std[6988c655d11a1906]::panicking::update_hook::<alloc[adcd2920e545f01e]::boxed::Box<rustc_driver_impl[4388af9ea47017ac]::install_ice_hook::{closure#0}>>::{closure#0}
   7:     0x71582b169078 - std::panicking::rust_panic_with_hook::hd7f4cf5e58b2d3e3
   8:     0x71582b168d36 - std::panicking::begin_panic_handler::{{closure}}::hc927b394962e226f
   9:     0x71582b1669d9 - std::sys::backtrace::__rust_end_short_backtrace::h868f3072e8b28cc9
  10:     0x71582b168a2d - rust_begin_unwind
  11:     0x7158285bca10 - core::panicking::panic_fmt::h0edfce2d68b3e431
  12:     0x71582a068930 - <rustc_mir_dataflow[80f026c33c7296c2]::framework::cursor::ResultsHandle<rustc_mir_dataflow[80f026c33c7296c2]::impls::initialized::MaybeInitializedPlaces> as core[98eca4cc7f8fa9ca]::ops::deref::DerefMut>::deref_mut
  13:     0x715829f61983 - rustc_graphviz[c5d815e179f2e17a]::render_opts::<rustc_middle[26c8e0dae7019334]::mir::BasicBlock, rustc_mir_dataflow[80f026c33c7296c2]::framework::graphviz::CfgEdge, rustc_mir_dataflow[80f026c33c7296c2]::framework::graphviz::Formatter<rustc_mir_dataflow[80f026c33c7296c2]::impls::initialized::MaybeInitializedPlaces>, alloc[adcd2920e545f01e]::vec::Vec<u8>>
  14:     0x71582c960aa0 - rustc_borrowck[c9ec01941466edc]::do_mir_borrowck
  15:     0x71582c94bdea - rustc_query_impl[25f2181b2c7324b6]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[25f2181b2c7324b6]::query_impl::mir_borrowck::dynamic_query::{closure#2}::{closure#0}, rustc_middle[26c8e0dae7019334]::query::erase::Erased<[u8; 8usize]>>
  16:     0x71582ba60b57 - rustc_query_system[17cfca475f07d7b2]::query::plumbing::try_execute_query::<rustc_query_impl[25f2181b2c7324b6]::DynamicConfig<rustc_data_structures[1a7807dfb0793cc3]::vec_cache::VecCache<rustc_span[ea0fd9b9a579a19a]::def_id::LocalDefId, rustc_middle[26c8e0dae7019334]::query::erase::Erased<[u8; 8usize]>, rustc_query_system[17cfca475f07d7b2]::dep_graph::graph::DepNodeIndex>, false, false, false>, rustc_query_impl[25f2181b2c7324b6]::plumbing::QueryCtxt, false>
  17:     0x71582ba60653 - rustc_query_impl[25f2181b2c7324b6]::query_impl::mir_borrowck::get_query_non_incr::__rust_end_short_backtrace
  18:     0x71582c154d41 - rustc_interface[31a016ac473b7d62]::passes::run_required_analyses
  19:     0x71582c14f79e - rustc_interface[31a016ac473b7d62]::passes::analysis
  20:     0x71582c14f76f - rustc_query_impl[25f2181b2c7324b6]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[25f2181b2c7324b6]::query_impl::analysis::dynamic_query::{closure#2}::{closure#0}, rustc_middle[26c8e0dae7019334]::query::erase::Erased<[u8; 1usize]>>
  21:     0x71582c7770fa - rustc_query_system[17cfca475f07d7b2]::query::plumbing::try_execute_query::<rustc_query_impl[25f2181b2c7324b6]::DynamicConfig<rustc_query_system[17cfca475f07d7b2]::query::caches::SingleCache<rustc_middle[26c8e0dae7019334]::query::erase::Erased<[u8; 1usize]>>, false, false, false>, rustc_query_impl[25f2181b2c7324b6]::plumbing::QueryCtxt, false>
  22:     0x71582c776dce - rustc_query_impl[25f2181b2c7324b6]::query_impl::analysis::get_query_non_incr::__rust_end_short_backtrace
  23:     0x71582c7c8647 - rustc_interface[31a016ac473b7d62]::interface::run_compiler::<core[98eca4cc7f8fa9ca]::result::Result<(), rustc_span[ea0fd9b9a579a19a]::ErrorGuaranteed>, rustc_driver_impl[4388af9ea47017ac]::run_compiler::{closure#0}>::{closure#1}
  24:     0x71582c759dc7 - std[6988c655d11a1906]::sys::backtrace::__rust_begin_short_backtrace::<rustc_interface[31a016ac473b7d62]::util::run_in_thread_with_globals<rustc_interface[31a016ac473b7d62]::util::run_in_thread_pool_with_globals<rustc_interface[31a016ac473b7d62]::interface::run_compiler<core[98eca4cc7f8fa9ca]::result::Result<(), rustc_span[ea0fd9b9a579a19a]::ErrorGuaranteed>, rustc_driver_impl[4388af9ea47017ac]::run_compiler::{closure#0}>::{closure#1}, core[98eca4cc7f8fa9ca]::result::Result<(), rustc_span[ea0fd9b9a579a19a]::ErrorGuaranteed>>::{closure#0}, core[98eca4cc7f8fa9ca]::result::Result<(), rustc_span[ea0fd9b9a579a19a]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[98eca4cc7f8fa9ca]::result::Result<(), rustc_span[ea0fd9b9a579a19a]::ErrorGuaranteed>>
  25:     0x71582c759a62 - <<std[6988c655d11a1906]::thread::Builder>::spawn_unchecked_<rustc_interface[31a016ac473b7d62]::util::run_in_thread_with_globals<rustc_interface[31a016ac473b7d62]::util::run_in_thread_pool_with_globals<rustc_interface[31a016ac473b7d62]::interface::run_compiler<core[98eca4cc7f8fa9ca]::result::Result<(), rustc_span[ea0fd9b9a579a19a]::ErrorGuaranteed>, rustc_driver_impl[4388af9ea47017ac]::run_compiler::{closure#0}>::{closure#1}, core[98eca4cc7f8fa9ca]::result::Result<(), rustc_span[ea0fd9b9a579a19a]::ErrorGuaranteed>>::{closure#0}, core[98eca4cc7f8fa9ca]::result::Result<(), rustc_span[ea0fd9b9a579a19a]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[98eca4cc7f8fa9ca]::result::Result<(), rustc_span[ea0fd9b9a579a19a]::ErrorGuaranteed>>::{closure#1} as core[98eca4cc7f8fa9ca]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
  26:     0x71582c7591ab - std::sys::pal::unix::thread::Thread::new::thread_start::h51e712dbc73b546f
  27:     0x715826aa339d - <unknown>
  28:     0x715826b2849c - <unknown>
  29:                0x0 - <unknown>

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: please make sure that you have updated to the latest nightly

note: please attach the file at `/tmp/ICE/rustc-ice-2024-11-29T17_22_22-3502071.txt` to your bug report

note: compiler flags: -Z dump-mir=all -Z dump-mir-dataflow

query stack during panic:
#0 [mir_borrowck] borrow-checking `main`
#1 [analysis] running analysis passes on this crate
end of query stack

Metadata

Metadata

Assignees

Labels

C-bugCategory: This is a bug.I-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️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