rust-lang / rust

Empowering everyone to build reliable and efficient software.
https://www.rust-lang.org
Other
98.65k stars 12.75k forks source link

ICE: `assertion failed: matches!(scalar, Scalar::Int(..))` #131064

Closed matthiaskrgr closed 1 month ago

matthiaskrgr commented 1 month ago

auto-reduced (treereduce-rust):

use std::{mem, ptr};

fn main() {
    basic();
}

fn basic() {
    let x = &42;
    let ptr = x as *const i32;

    let addr_mu: mem::MaybeUninit<usize> = unsafe { mem::transmute(ptr) };
}
original code

original: ````rust #![feature(strict_provenance)] #![feature(pointer_byte_offsets)] use std::{mem, ptr}; const PTR_SIZE: usize = mem::size_of::<&i32>(); fn main() { basic(); partial_overwrite_then_restore(); bytewise_ptr_methods(); bytewise_custom_memcpy(); bytewise_custom_memcpy_chunked(); int_load_strip_provenance(); } /// Some basic smoke tests for provenance. fn basic() { let x = &42; let ptr = x as *const i32; let addr: usize = unsafe { mem::transmute(ptr) }; // an integer without provenance // But we can give provenance back via `with_addr`. let ptr_back = ptr.with_addr(addr); assert_eq!(unsafe { *ptr_back }, 42); // It is preserved by MaybeUninit. let addr_mu: mem::MaybeUninit = unsafe { mem::transmute(ptr) }; let ptr_back: *const i32 = unsafe { mem::transmute(addr_mu) }; assert_eq!(unsafe { *ptr_back }, 42); } /// Overwrite one byte of a pointer, then restore it. fn partial_overwrite_then_restore() { unsafe fn ptr_bytes<'x>(ptr: &'x mut *const i32) -> &'x mut [mem::MaybeUninit; PTR_SIZE] { mem::transmute(ptr) } // Returns a value with the same provenance as `x` but 0 for the integer value. // `x` must be initialized. unsafe fn zero_with_provenance(x: mem::MaybeUninit) -> mem::MaybeUninit { let ptr = [x; PTR_SIZE]; let ptr: *const i32 = mem::transmute(ptr); let mut ptr = ptr.with_addr(0); ptr_bytes(&mut ptr)[0] } unsafe { let ptr = &42; let mut ptr = ptr as *const i32; // Get a bytewise view of the pointer. let ptr_bytes = ptr_bytes(&mut ptr); // The highest bytes must be 0 for this to work. let hi = if cfg!(target_endian = "little") { ptr_bytes.len() - 1 } else { 0 }; assert_eq!(*ptr_bytes[hi].as_ptr().cast::(), 0); // Overwrite provenance on the last byte. ptr_bytes[hi] = mem::MaybeUninit::new(0); // Restore it from the another byte. ptr_bytes[hi] = zero_with_provenance(ptr_bytes[1]); // Now ptr should be good again. assert_eq!(*ptr, 42); } } fn bytewise_ptr_methods() { let mut ptr1 = &1; let mut ptr2 = &2; // Swap them, bytewise. unsafe { ptr::swap_nonoverlapping( &mut ptr1 as *mut _ as *mut mem::MaybeUninit, &mut ptr2 as *mut _ as *mut mem::MaybeUninit, mem::size_of::<&i32>(), ); } // Make sure they still work. assert_eq!(*ptr1, 2); assert_eq!(*ptr2, 1); // TODO: also test ptr::swap, ptr::copy, ptr::copy_nonoverlapping. } fn bytewise_custom_memcpy() { unsafe fn memcpy(to: *mut T, from: *const T) { let to = to.cast::>(); let from = from.cast::>(); for i in 0..mem::size_of::() { let b = from.add(i).read(); to.add(i).write(b); } } let ptr1 = &1; let mut ptr2 = &2; // Copy, bytewise. unsafe { memcpy(&mut ptr2, &ptr1) }; // Make sure they still work. assert_eq!(*ptr1, 1); assert_eq!(*ptr2, 1); } fn bytewise_custom_memcpy_chunked() { unsafe fn memcpy(to: *mut T, from: *const T) { assert!(mem::size_of::() % mem::size_of::() == 0); let count = mem::size_of::() / mem::size_of::(); let to = to.cast::>(); let from = from.cast::>(); for i in 0..count { let b = from.add(i).read(); to.add(i).write(b); } } // Prepare an array where pointers are stored at... interesting... offsets. let mut data = [0usize; 2 * PTR_SIZE]; let mut offsets = vec![]; for i in 0..mem::size_of::() { // We have 2*PTR_SIZE room for each of these pointers. let base = i * 2 * PTR_SIZE; // This one is mis-aligned by `i`. let offset = base + i; offsets.push(offset); // Store it there. unsafe { data.as_mut_ptr().byte_add(offset).cast::<&i32>().write_unaligned(&42) }; } // Now memcpy that. let mut data2 = [0usize; 2 * PTR_SIZE]; unsafe { memcpy(&mut data2, &data) }; // And check the result. for &offset in &offsets { let ptr = unsafe { data2.as_ptr().byte_add(offset).cast::<&i32>().read_unaligned() }; assert_eq!(*ptr, 42); } } fn int_load_strip_provenance() { let ptrs = [&42]; let ints: [usize; 1] = unsafe { mem::transmute(ptrs) }; assert_eq!(ptrs[0] as *const _ as usize, ints[0]); } ````

Version information

rustc 1.83.0-dev
binary: rustc
commit-hash: unknown
commit-date: unknown
host: x86_64-unknown-linux-gnu
release: 1.83.0-dev
LLVM version: 19.1.0
matthiaskrgr commented 1 month ago

Command: /home/gh-matthiaskrgr/.rustup/toolchains/local-debug-assertions/bin/rustc -Zmir-opt-level=5

Program output

``` warning: unused import: `ptr` --> /tmp/icemaker_global_tempdir.LTIF3nAQKJYP/rustc_testrunner_tmpdir_reporting.LTmtB29gKiey/mvce.rs:1:16 | 1 | use std::{mem, ptr}; | ^^^ | = note: `#[warn(unused_imports)]` on by default warning: unused variable: `addr_mu` --> /tmp/icemaker_global_tempdir.LTIF3nAQKJYP/rustc_testrunner_tmpdir_reporting.LTmtB29gKiey/mvce.rs:11:9 | 11 | let addr_mu: mem::MaybeUninit = unsafe { mem::transmute(ptr) }; | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_addr_mu` | = note: `#[warn(unused_variables)]` on by default thread 'rustc' panicked at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_const_eval/src/interpret/operand.rs:121:21: assertion failed: matches!(scalar, Scalar::Int(..)) stack backtrace: 0: 0x709f52f14b83 - std::backtrace_rs::backtrace::libunwind::trace::h5db13dca73a45ac3 at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/../../backtrace/src/backtrace/libunwind.rs:116:5 1: 0x709f52f14b83 - std::backtrace_rs::backtrace::trace_unsynchronized::h327fec61dbe4f245 at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 2: 0x709f52f14b83 - std::sys::backtrace::_print_fmt::h0d391ea309145da1 at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/sys/backtrace.rs:66:9 3: 0x709f52f14b83 - ::fmt::h81b4bcd5c11f04be at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/sys/backtrace.rs:39:26 4: 0x709f4e01b38d - core::fmt::rt::Argument::fmt::h488395045e616c96 at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/core/src/fmt/rt.rs:177:76 5: 0x709f4e01b38d - core::fmt::write::ha0e83bdf96f049b8 at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/core/src/fmt/mod.rs:1186:21 6: 0x709f52f00ea9 - std::io::Write::write_fmt::h44f01a0e52e9ffad at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/io/mod.rs:1839:15 7: 0x709f52f14a23 - std::sys::backtrace::BacktraceLock::print::h90a07d59263dbf7a at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/sys/backtrace.rs:42:9 8: 0x709f52eece2e - std::panicking::default_hook::{{closure}}::ha36268941b756b3e 9: 0x709f52eecbff - std::panicking::default_hook::h56decc5a90c0c2d8 at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/panicking.rs:295:9 10: 0x709f4f508111 - core[e7969a33fde5fecb]::ops::function::Fn<(&'a std[ba56102e647eda86]::panic::PanicHookInfo<'b>,), Output = ()> + core[e7969a33fde5fecb]::marker::Send + core[e7969a33fde5fecb]::marker::Sync> as core[e7969a33fde5fecb]::ops::function::Fn<(&std[ba56102e647eda86]::panic::PanicHookInfo,)>>::call at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/alloc/src/boxed.rs:2467:9 11: 0x709f4f508111 - rustc_driver_impl[42e8f0480c92f6ee]::install_ice_hook::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_driver_impl/src/lib.rs:1421:17 12: 0x709f4f508111 - as core[e7969a33fde5fecb]::ops::function::Fn<(&dyn for<'a, 'b> core[e7969a33fde5fecb]::ops::function::Fn<(&'a std[ba56102e647eda86]::panic::PanicHookInfo<'b>,), Output = ()> + core[e7969a33fde5fecb]::marker::Send + core[e7969a33fde5fecb]::marker::Sync, &std[ba56102e647eda86]::panic::PanicHookInfo)>>::call at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/alloc/src/boxed.rs:2467:9 13: 0x709f4f508111 - std[ba56102e647eda86]::panicking::update_hook::>::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/panicking.rs:230:47 14: 0x709f52eed448 - as core::ops::function::Fn>::call::hd9a059ff71a380bb at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/alloc/src/boxed.rs:2467:9 15: 0x709f52eed448 - std::panicking::rust_panic_with_hook::h33c4c7bf41d18afc at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/panicking.rs:809:13 16: 0x709f52f15056 - std::panicking::begin_panic_handler::{{closure}}::h21654657435acfb2 at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/panicking.rs:667:13 17: 0x709f52f14e99 - std::sys::backtrace::__rust_end_short_backtrace::h2ad95e4d62348a6c at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/sys/backtrace.rs:170:18 18: 0x709f52eecf2e - rust_begin_unwind at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/panicking.rs:665:5 19: 0x709f4e032280 - core::panicking::panic_fmt::hd05bc19f58f853cb at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/core/src/panicking.rs:74:14 20: 0x709f4e032305 - core::panicking::panic::h53ceb48cfc77d769 at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/core/src/panicking.rs:148:5 21: 0x709f512eb1e7 - ::assert_matches_abi::> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_const_eval/src/interpret/operand.rs:121:21 22: 0x709f512eb1e7 - >::write_immediate_to_mplace_no_validate at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_const_eval/src/interpret/place.rs:676:13 23: 0x709f512caf98 - >::write_immediate_no_validate:: at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_const_eval/src/interpret/place.rs:660:17 24: 0x709f512c93f1 - >::copy_op_no_validate:: at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_const_eval/src/interpret/place.rs:880:21 25: 0x709f512c80e2 - >::copy_op_inner:: at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_const_eval/src/interpret/place.rs:823:9 26: 0x709f512c80e2 - >::copy_op:: at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_const_eval/src/interpret/place.rs:801:9 27: 0x709f512c80e2 - rustc_mir_transform[88cbf78a6a343b18]::gvn::op_to_prop_const::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_mir_transform/src/gvn.rs:1529:74 28: 0x709f512c80e2 - >::intern_with_temp_alloc:: at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_const_eval/src/interpret/intern.rs:335:9 29: 0x709f5128db1e - rustc_mir_transform[88cbf78a6a343b18]::gvn::op_to_prop_const at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_mir_transform/src/gvn.rs:1529:20 30: 0x709f5128db1e - ::try_as_constant at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_mir_transform/src/gvn.rs:1572:21 31: 0x709f5128e5b4 - ::visit_statement at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_mir_transform/src/gvn.rs:1622:35 32: 0x709f512998a6 - ::super_basic_block_data at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/mir/visit.rs:307:21 33: 0x709f512998a6 - ::visit_basic_block_data at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/mir/visit.rs:88:17 34: 0x709f512998a6 - ::run_pass at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_mir_transform/src/gvn.rs:158:19 35: 0x709f511c2835 - rustc_mir_transform[88cbf78a6a343b18]::pass_manager::run_passes_inner at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_mir_transform/src/pass_manager.rs:226:17 36: 0x709f510b56fe - rustc_mir_transform[88cbf78a6a343b18]::pass_manager::run_passes at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_mir_transform/src/pass_manager.rs:169:5 37: 0x709f510b56fe - rustc_mir_transform[88cbf78a6a343b18]::run_optimization_passes at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_mir_transform/src/lib.rs:571:5 38: 0x709f510b56fe - rustc_mir_transform[88cbf78a6a343b18]::inner_optimized_mir at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_mir_transform/src/lib.rs:685:5 39: 0x709f510b56fe - rustc_mir_transform[88cbf78a6a343b18]::optimized_mir at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_mir_transform/src/lib.rs:643:21 40: 0x709f51b3b318 - rustc_query_impl[a2a277ace3c77d10]::query_impl::optimized_mir::dynamic_query::{closure#2}::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_impl/src/plumbing.rs:287:13 41: 0x709f51b3b318 - rustc_query_impl[a2a277ace3c77d10]::plumbing::__rust_begin_short_backtrace::> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_impl/src/plumbing.rs:548:18 42: 0x709f51db71ef - rustc_query_impl[a2a277ace3c77d10]::query_impl::optimized_mir::dynamic_query::{closure#2} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_impl/src/plumbing.rs:622:25 43: 0x709f51db71ef - >::call_once at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/core/src/ops/function.rs:250:5 44: 0x709f51a0fd7d - >, false, false, false> as rustc_query_system[501f8ffe040c8b9d]::query::config::QueryConfig>::compute at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_impl/src/lib.rs:110:9 45: 0x709f51a0fd7d - rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_system/src/query/plumbing.rs:478:72 46: 0x709f51a0fd7d - rustc_middle[c4725d7e3458b28d]::ty::context::tls::enter_context::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 8usize]>>::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context/tls.rs:82:9 47: 0x709f51a0fd7d - >>::try_with::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 8usize]>>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 8usize]>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/thread/local.rs:283:12 48: 0x709f51a0fd7d - >>::with::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 8usize]>>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 8usize]>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/thread/local.rs:260:9 49: 0x709f51a0fd7d - rustc_middle[c4725d7e3458b28d]::ty::context::tls::enter_context::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 8usize]>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context/tls.rs:79:9 50: 0x709f51a0fd7d - ::start_query::, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}>::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_impl/src/plumbing.rs:151:13 51: 0x709f51a0fd7d - rustc_middle[c4725d7e3458b28d]::ty::context::tls::with_related_context::<::start_query, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 8usize]>>::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context/tls.rs:134:9 52: 0x709f51a0fd7d - rustc_middle[c4725d7e3458b28d]::ty::context::tls::with_context::::start_query, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 8usize]>>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 8usize]>>::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context/tls.rs:112:36 53: 0x709f51a0fd7d - rustc_middle[c4725d7e3458b28d]::ty::context::tls::with_context_opt::::start_query, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 8usize]>>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 8usize]>>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 8usize]>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context/tls.rs:101:18 54: 0x709f51a0fd7d - rustc_middle[c4725d7e3458b28d]::ty::context::tls::with_context::::start_query, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 8usize]>>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 8usize]>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context/tls.rs:112:5 55: 0x709f51a0fd7d - rustc_middle[c4725d7e3458b28d]::ty::context::tls::with_related_context::<::start_query, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 8usize]>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context/tls.rs:125:5 56: 0x709f51a0fd7d - ::start_query::, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_impl/src/plumbing.rs:136:9 57: 0x709f51a0fd7d - rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_system/src/query/plumbing.rs:478:18 58: 0x709f51a0fd7d - rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt, false> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_system/src/query/plumbing.rs:414:9 59: 0x709f51a0fd7d - rustc_query_system[501f8ffe040c8b9d]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt, false> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_system/src/query/plumbing.rs:357:13 60: 0x709f51e2133b - rustc_query_system[501f8ffe040c8b9d]::query::plumbing::get_query_non_incr::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_system/src/query/plumbing.rs:809:32 61: 0x709f51e2133b - stacker[1416ba316daec325]::maybe_grow::, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::get_query_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}> at /home/gh-matthiaskrgr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/stacker-0.1.17/src/lib.rs:55:9 62: 0x709f51e2133b - rustc_data_structures[d1e91742fdb8973c]::stack::ensure_sufficient_stack::, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::get_query_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_data_structures/src/stack.rs:17:5 63: 0x709f51e2133b - rustc_query_system[501f8ffe040c8b9d]::query::plumbing::get_query_non_incr::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_system/src/query/plumbing.rs:809:5 64: 0x709f51e2133b - rustc_query_impl[a2a277ace3c77d10]::query_impl::optimized_mir::get_query_non_incr::__rust_end_short_backtrace at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_impl/src/plumbing.rs:598:26 65: 0x709f510c26ce - rustc_middle[c4725d7e3458b28d]::query::plumbing::query_get_at::>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/query/plumbing.rs:143:17 66: 0x709f510e86d9 - ::optimized_mir:: at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/query/plumbing.rs:422:31 67: 0x709f510e86d9 - ::optimized_mir:: at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/query/plumbing.rs:413:35 68: 0x709f510e86d9 - rustc_mir_transform[88cbf78a6a343b18]::cross_crate_inline::cross_crate_inlinable at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_mir_transform/src/cross_crate_inline.rs:77:19 69: 0x709f51b4cf48 - rustc_query_impl[a2a277ace3c77d10]::query_impl::cross_crate_inlinable::dynamic_query::{closure#2}::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_impl/src/plumbing.rs:287:13 70: 0x709f51b4cf48 - rustc_query_impl[a2a277ace3c77d10]::plumbing::__rust_begin_short_backtrace::> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_impl/src/plumbing.rs:548:18 71: 0x709f51c833af - rustc_query_impl[a2a277ace3c77d10]::query_impl::cross_crate_inlinable::dynamic_query::{closure#2} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_impl/src/plumbing.rs:622:25 72: 0x709f51c833af - >::call_once at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/core/src/ops/function.rs:250:5 73: 0x709f519fff7f - >, false, false, false> as rustc_query_system[501f8ffe040c8b9d]::query::config::QueryConfig>::compute at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_impl/src/lib.rs:110:9 74: 0x709f519fff7f - rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_system/src/query/plumbing.rs:478:72 75: 0x709f519fff7f - rustc_middle[c4725d7e3458b28d]::ty::context::tls::enter_context::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 1usize]>>::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context/tls.rs:82:9 76: 0x709f519fff7f - >>::try_with::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 1usize]>>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 1usize]>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/thread/local.rs:283:12 77: 0x709f519fff7f - >>::with::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 1usize]>>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 1usize]>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/thread/local.rs:260:9 78: 0x709f519fff7f - rustc_middle[c4725d7e3458b28d]::ty::context::tls::enter_context::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 1usize]>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context/tls.rs:79:9 79: 0x709f519fff7f - ::start_query::, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}>::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_impl/src/plumbing.rs:151:13 80: 0x709f519fff7f - rustc_middle[c4725d7e3458b28d]::ty::context::tls::with_related_context::<::start_query, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 1usize]>>::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context/tls.rs:134:9 81: 0x709f519fff7f - rustc_middle[c4725d7e3458b28d]::ty::context::tls::with_context::::start_query, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 1usize]>>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 1usize]>>::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context/tls.rs:112:36 82: 0x709f519fff7f - rustc_middle[c4725d7e3458b28d]::ty::context::tls::with_context_opt::::start_query, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 1usize]>>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 1usize]>>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 1usize]>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context/tls.rs:101:18 83: 0x709f519fff7f - rustc_middle[c4725d7e3458b28d]::ty::context::tls::with_context::::start_query, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 1usize]>>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 1usize]>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context/tls.rs:112:5 84: 0x709f519fff7f - rustc_middle[c4725d7e3458b28d]::ty::context::tls::with_related_context::<::start_query, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 1usize]>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context/tls.rs:125:5 85: 0x709f519fff7f - ::start_query::, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_impl/src/plumbing.rs:136:9 86: 0x709f519fff7f - rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_system/src/query/plumbing.rs:478:18 87: 0x709f519fff7f - rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt, false> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_system/src/query/plumbing.rs:414:9 88: 0x709f519fff7f - rustc_query_system[501f8ffe040c8b9d]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt, false> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_system/src/query/plumbing.rs:357:13 89: 0x709f51d99093 - rustc_query_system[501f8ffe040c8b9d]::query::plumbing::get_query_non_incr::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_system/src/query/plumbing.rs:809:32 90: 0x709f51d99093 - stacker[1416ba316daec325]::maybe_grow::, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::get_query_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}> at /home/gh-matthiaskrgr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/stacker-0.1.17/src/lib.rs:55:9 91: 0x709f51d99093 - rustc_data_structures[d1e91742fdb8973c]::stack::ensure_sufficient_stack::, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::get_query_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_data_structures/src/stack.rs:17:5 92: 0x709f51d99093 - rustc_query_system[501f8ffe040c8b9d]::query::plumbing::get_query_non_incr::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_system/src/query/plumbing.rs:809:5 93: 0x709f51d99093 - rustc_query_impl[a2a277ace3c77d10]::query_impl::cross_crate_inlinable::get_query_non_incr::__rust_end_short_backtrace at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_impl/src/plumbing.rs:598:26 94: 0x709f5108678b - rustc_middle[c4725d7e3458b28d]::query::plumbing::query_get_at::>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/query/plumbing.rs:143:17 95: 0x709f510ab30a - ::cross_crate_inlinable:: at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/query/plumbing.rs:422:31 96: 0x709f510ab30a - ::cross_crate_inlinable:: at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/query/plumbing.rs:413:35 97: 0x709f510ab30a - ::try_inlining at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_mir_transform/src/inline.rs:191:46 98: 0x709f510a9fd3 - ::process_blocks at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_mir_transform/src/inline.rs:158:19 99: 0x709f510a9192 - rustc_mir_transform[88cbf78a6a343b18]::inline::inline at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_mir_transform/src/inline.rs:113:5 100: 0x709f510a9192 - ::run_pass at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_mir_transform/src/inline.rs:73:12 101: 0x709f511c2835 - rustc_mir_transform[88cbf78a6a343b18]::pass_manager::run_passes_inner at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_mir_transform/src/pass_manager.rs:226:17 102: 0x709f510b56fe - rustc_mir_transform[88cbf78a6a343b18]::pass_manager::run_passes at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_mir_transform/src/pass_manager.rs:169:5 103: 0x709f510b56fe - rustc_mir_transform[88cbf78a6a343b18]::run_optimization_passes at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_mir_transform/src/lib.rs:571:5 104: 0x709f510b56fe - rustc_mir_transform[88cbf78a6a343b18]::inner_optimized_mir at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_mir_transform/src/lib.rs:685:5 105: 0x709f510b56fe - rustc_mir_transform[88cbf78a6a343b18]::optimized_mir at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_mir_transform/src/lib.rs:643:21 106: 0x709f51b3b318 - rustc_query_impl[a2a277ace3c77d10]::query_impl::optimized_mir::dynamic_query::{closure#2}::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_impl/src/plumbing.rs:287:13 107: 0x709f51b3b318 - rustc_query_impl[a2a277ace3c77d10]::plumbing::__rust_begin_short_backtrace::> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_impl/src/plumbing.rs:548:18 108: 0x709f51db71ef - rustc_query_impl[a2a277ace3c77d10]::query_impl::optimized_mir::dynamic_query::{closure#2} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_impl/src/plumbing.rs:622:25 109: 0x709f51db71ef - >::call_once at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/core/src/ops/function.rs:250:5 110: 0x709f51a0fd7d - >, false, false, false> as rustc_query_system[501f8ffe040c8b9d]::query::config::QueryConfig>::compute at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_impl/src/lib.rs:110:9 111: 0x709f51a0fd7d - rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_system/src/query/plumbing.rs:478:72 112: 0x709f51a0fd7d - rustc_middle[c4725d7e3458b28d]::ty::context::tls::enter_context::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 8usize]>>::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context/tls.rs:82:9 113: 0x709f51a0fd7d - >>::try_with::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 8usize]>>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 8usize]>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/thread/local.rs:283:12 114: 0x709f51a0fd7d - >>::with::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 8usize]>>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 8usize]>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/thread/local.rs:260:9 115: 0x709f51a0fd7d - rustc_middle[c4725d7e3458b28d]::ty::context::tls::enter_context::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 8usize]>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context/tls.rs:79:9 116: 0x709f51a0fd7d - ::start_query::, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}>::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_impl/src/plumbing.rs:151:13 117: 0x709f51a0fd7d - rustc_middle[c4725d7e3458b28d]::ty::context::tls::with_related_context::<::start_query, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 8usize]>>::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context/tls.rs:134:9 118: 0x709f51a0fd7d - rustc_middle[c4725d7e3458b28d]::ty::context::tls::with_context::::start_query, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 8usize]>>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 8usize]>>::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context/tls.rs:112:36 119: 0x709f51a0fd7d - rustc_middle[c4725d7e3458b28d]::ty::context::tls::with_context_opt::::start_query, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 8usize]>>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 8usize]>>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 8usize]>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context/tls.rs:101:18 120: 0x709f51a0fd7d - rustc_middle[c4725d7e3458b28d]::ty::context::tls::with_context::::start_query, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 8usize]>>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 8usize]>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context/tls.rs:112:5 121: 0x709f51a0fd7d - rustc_middle[c4725d7e3458b28d]::ty::context::tls::with_related_context::<::start_query, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 8usize]>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context/tls.rs:125:5 122: 0x709f51a0fd7d - ::start_query::, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_impl/src/plumbing.rs:136:9 123: 0x709f51a0fd7d - rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_system/src/query/plumbing.rs:478:18 124: 0x709f51a0fd7d - rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt, false> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_system/src/query/plumbing.rs:414:9 125: 0x709f51a0fd7d - rustc_query_system[501f8ffe040c8b9d]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt, false> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_system/src/query/plumbing.rs:357:13 126: 0x709f51e2133b - rustc_query_system[501f8ffe040c8b9d]::query::plumbing::get_query_non_incr::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_system/src/query/plumbing.rs:809:32 127: 0x709f51e2133b - stacker[1416ba316daec325]::maybe_grow::, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::get_query_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}> at /home/gh-matthiaskrgr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/stacker-0.1.17/src/lib.rs:55:9 128: 0x709f51e2133b - rustc_data_structures[d1e91742fdb8973c]::stack::ensure_sufficient_stack::, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::get_query_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_data_structures/src/stack.rs:17:5 129: 0x709f51e2133b - rustc_query_system[501f8ffe040c8b9d]::query::plumbing::get_query_non_incr::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_system/src/query/plumbing.rs:809:5 130: 0x709f51e2133b - rustc_query_impl[a2a277ace3c77d10]::query_impl::optimized_mir::get_query_non_incr::__rust_end_short_backtrace at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_impl/src/plumbing.rs:598:26 131: 0x709f50b1f1ae - rustc_middle[c4725d7e3458b28d]::query::plumbing::query_get_at::>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/query/plumbing.rs:143:17 132: 0x709f50b2d51c - ::instance_mir 133: 0x709f514676ca - rustc_monomorphize[fe2f538aee51a103]::collector::collect_items_of_instance at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_monomorphize/src/collector.rs:1210:16 134: 0x709f51464289 - rustc_monomorphize[fe2f538aee51a103]::collector::collect_items_rec::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_monomorphize/src/collector.rs:450:17 135: 0x709f51464289 - stacker[1416ba316daec325]::maybe_grow::<(), rustc_monomorphize[fe2f538aee51a103]::collector::collect_items_rec::{closure#0}> at /home/gh-matthiaskrgr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/stacker-0.1.17/src/lib.rs:55:9 136: 0x709f51464289 - rustc_data_structures[d1e91742fdb8973c]::stack::ensure_sufficient_stack::<(), rustc_monomorphize[fe2f538aee51a103]::collector::collect_items_rec::{closure#0}> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_data_structures/src/stack.rs:17:5 137: 0x709f51464289 - rustc_monomorphize[fe2f538aee51a103]::collector::collect_items_rec at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_monomorphize/src/collector.rs:449:13 138: 0x709f5149caed - rustc_monomorphize[fe2f538aee51a103]::collector::collect_crate_mono_items::{closure#1}::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_monomorphize/src/collector.rs:1604:17 139: 0x709f5149caed - rustc_data_structures[d1e91742fdb8973c]::sync::parallel::enabled::par_for_each_in::, rustc_monomorphize[fe2f538aee51a103]::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#1}::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_data_structures/src/sync/parallel.rs:187:34 140: 0x709f5149caed - , rustc_monomorphize[fe2f538aee51a103]::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> as core[e7969a33fde5fecb]::ops::function::FnOnce<()>>::call_once at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/core/src/panic/unwind_safe.rs:272:9 141: 0x709f5149caed - std[ba56102e647eda86]::panicking::try::do_call::, rustc_monomorphize[fe2f538aee51a103]::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#1}::{closure#0}>, ()> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/panicking.rs:557:40 142: 0x709f5149caed - std[ba56102e647eda86]::panicking::try::<(), core[e7969a33fde5fecb]::panic::unwind_safe::AssertUnwindSafe, rustc_monomorphize[fe2f538aee51a103]::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#1}::{closure#0}>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/panicking.rs:520:19 143: 0x709f5149caed - std[ba56102e647eda86]::panic::catch_unwind::, rustc_monomorphize[fe2f538aee51a103]::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#1}::{closure#0}>, ()> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/panic.rs:358:14 144: 0x709f5149caed - ::run::<(), rustc_data_structures[d1e91742fdb8973c]::sync::parallel::enabled::par_for_each_in, rustc_monomorphize[fe2f538aee51a103]::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#1}::{closure#0}> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_data_structures/src/sync/parallel.rs:29:9 145: 0x709f5149caed - rustc_data_structures[d1e91742fdb8973c]::sync::parallel::enabled::par_for_each_in::, rustc_monomorphize[fe2f538aee51a103]::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#1} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_data_structures/src/sync/parallel.rs:187:21 146: 0x709f5149caed - core[e7969a33fde5fecb]::iter::traits::iterator::Iterator::for_each::call::, rustc_monomorphize[fe2f538aee51a103]::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#1}>::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/core/src/iter/traits/iterator.rs:810:29 147: 0x709f5149caed - as core[e7969a33fde5fecb]::iter::traits::iterator::Iterator>::fold::<(), core[e7969a33fde5fecb]::iter::traits::iterator::Iterator::for_each::call, rustc_monomorphize[fe2f538aee51a103]::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#1}>::{closure#0}> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/alloc/src/vec/into_iter.rs:318:25 148: 0x709f514a13e4 - as core[e7969a33fde5fecb]::iter::traits::iterator::Iterator>::for_each::, rustc_monomorphize[fe2f538aee51a103]::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}::{closure#1}> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/core/src/iter/traits/iterator.rs:813:9 149: 0x709f514a13e4 - rustc_data_structures[d1e91742fdb8973c]::sync::parallel::enabled::par_for_each_in::, rustc_monomorphize[fe2f538aee51a103]::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_data_structures/src/sync/parallel.rs:186:17 150: 0x709f514a13e4 - rustc_data_structures[d1e91742fdb8973c]::sync::parallel::parallel_guard::<(), rustc_data_structures[d1e91742fdb8973c]::sync::parallel::enabled::par_for_each_in, rustc_monomorphize[fe2f538aee51a103]::collector::collect_crate_mono_items::{closure#1}::{closure#0}>::{closure#0}> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_data_structures/src/sync/parallel.rs:45:15 151: 0x709f514a13e4 - rustc_data_structures[d1e91742fdb8973c]::sync::parallel::enabled::par_for_each_in::, rustc_monomorphize[fe2f538aee51a103]::collector::collect_crate_mono_items::{closure#1}::{closure#0}> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_data_structures/src/sync/parallel.rs:179:9 152: 0x709f514a13e4 - rustc_monomorphize[fe2f538aee51a103]::collector::collect_crate_mono_items::{closure#1} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_monomorphize/src/collector.rs:1602:13 153: 0x709f514a13e4 - ::run::<(), rustc_monomorphize[fe2f538aee51a103]::collector::collect_crate_mono_items::{closure#1}> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_data_structures/src/profiling.rs:753:9 154: 0x709f514a13e4 - ::time::<(), rustc_monomorphize[fe2f538aee51a103]::collector::collect_crate_mono_items::{closure#1}> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_session/src/utils.rs:16:9 155: 0x709f5146d180 - rustc_monomorphize[fe2f538aee51a103]::collector::collect_crate_mono_items at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_monomorphize/src/collector.rs:1601:9 156: 0x709f514786d1 - rustc_monomorphize[fe2f538aee51a103]::partitioning::collect_and_partition_mono_items at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_monomorphize/src/partitioning.rs:1126:30 157: 0x709f51b5a474 - rustc_query_impl[a2a277ace3c77d10]::query_impl::collect_and_partition_mono_items::dynamic_query::{closure#2}::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_impl/src/plumbing.rs:283:9 158: 0x709f51b5a474 - rustc_query_impl[a2a277ace3c77d10]::plumbing::__rust_begin_short_backtrace::> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_impl/src/plumbing.rs:548:18 159: 0x709f51e668dd - rustc_query_impl[a2a277ace3c77d10]::query_impl::collect_and_partition_mono_items::dynamic_query::{closure#2} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_impl/src/plumbing.rs:622:25 160: 0x709f51e668dd - >::call_once at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/core/src/ops/function.rs:250:5 161: 0x709f51a192e3 - >, false, false, false> as rustc_query_system[501f8ffe040c8b9d]::query::config::QueryConfig>::compute at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_impl/src/lib.rs:110:9 162: 0x709f51a192e3 - rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_system/src/query/plumbing.rs:478:72 163: 0x709f51a192e3 - rustc_middle[c4725d7e3458b28d]::ty::context::tls::enter_context::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 24usize]>>::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context/tls.rs:82:9 164: 0x709f51a192e3 - >>::try_with::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 24usize]>>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 24usize]>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/thread/local.rs:283:12 165: 0x709f51a192e3 - >>::with::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 24usize]>>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 24usize]>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/thread/local.rs:260:9 166: 0x709f51a192e3 - rustc_middle[c4725d7e3458b28d]::ty::context::tls::enter_context::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 24usize]>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context/tls.rs:79:9 167: 0x709f51a192e3 - ::start_query::, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}>::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_impl/src/plumbing.rs:151:13 168: 0x709f51a192e3 - rustc_middle[c4725d7e3458b28d]::ty::context::tls::with_related_context::<::start_query, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 24usize]>>::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context/tls.rs:134:9 169: 0x709f51a192e3 - rustc_middle[c4725d7e3458b28d]::ty::context::tls::with_context::::start_query, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 24usize]>>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 24usize]>>::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context/tls.rs:112:36 170: 0x709f51a192e3 - rustc_middle[c4725d7e3458b28d]::ty::context::tls::with_context_opt::::start_query, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 24usize]>>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 24usize]>>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 24usize]>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context/tls.rs:101:18 171: 0x709f51a192e3 - rustc_middle[c4725d7e3458b28d]::ty::context::tls::with_context::::start_query, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 24usize]>>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 24usize]>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context/tls.rs:112:5 172: 0x709f51a192e3 - rustc_middle[c4725d7e3458b28d]::ty::context::tls::with_related_context::<::start_query, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}>::{closure#0}, rustc_middle[c4725d7e3458b28d]::query::erase::Erased<[u8; 24usize]>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context/tls.rs:125:5 173: 0x709f51a192e3 - ::start_query::, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_impl/src/plumbing.rs:136:9 174: 0x709f51a192e3 - rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job_non_incr::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_system/src/query/plumbing.rs:478:18 175: 0x709f51a192e3 - rustc_query_system[501f8ffe040c8b9d]::query::plumbing::execute_job::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt, false> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_system/src/query/plumbing.rs:414:9 176: 0x709f51a192e3 - rustc_query_system[501f8ffe040c8b9d]::query::plumbing::try_execute_query::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt, false> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_system/src/query/plumbing.rs:357:13 177: 0x709f51cf8a7c - rustc_query_system[501f8ffe040c8b9d]::query::plumbing::get_query_non_incr::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_system/src/query/plumbing.rs:809:32 178: 0x709f51cf8a7c - stacker[1416ba316daec325]::maybe_grow::, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::get_query_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}> at /home/gh-matthiaskrgr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/stacker-0.1.17/src/lib.rs:55:9 179: 0x709f51cf8a7c - rustc_data_structures[d1e91742fdb8973c]::stack::ensure_sufficient_stack::, rustc_query_system[501f8ffe040c8b9d]::query::plumbing::get_query_non_incr>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt>::{closure#0}> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_data_structures/src/stack.rs:17:5 180: 0x709f51cf8a7c - rustc_query_system[501f8ffe040c8b9d]::query::plumbing::get_query_non_incr::>, false, false, false>, rustc_query_impl[a2a277ace3c77d10]::plumbing::QueryCtxt> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_system/src/query/plumbing.rs:809:5 181: 0x709f51cf8a7c - rustc_query_impl[a2a277ace3c77d10]::query_impl::collect_and_partition_mono_items::get_query_non_incr::__rust_end_short_backtrace at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_query_impl/src/plumbing.rs:598:26 182: 0x709f4ef86c83 - rustc_middle[c4725d7e3458b28d]::query::plumbing::query_get_at::>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/query/plumbing.rs:143:17 183: 0x709f4ef86c83 - ::collect_and_partition_mono_items at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/query/plumbing.rs:422:31 184: 0x709f4ef86c83 - ::collect_and_partition_mono_items at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/query/plumbing.rs:413:35 185: 0x709f4ef86c83 - rustc_codegen_ssa[496e36a8ca4e51e2]::base::codegen_crate:: at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_codegen_ssa/src/base.rs:576:29 186: 0x709f4ef2f82b - ::codegen_crate at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_codegen_llvm/src/lib.rs:362:18 187: 0x709f503bcd16 - rustc_interface[3d0f905af8220f3f]::passes::start_codegen::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_interface/src/passes.rs:1053:9 188: 0x709f503bcd16 - ::run::, rustc_interface[3d0f905af8220f3f]::passes::start_codegen::{closure#0}> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_data_structures/src/profiling.rs:753:9 189: 0x709f503bcd16 - ::time::, rustc_interface[3d0f905af8220f3f]::passes::start_codegen::{closure#0}> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_session/src/utils.rs:16:9 190: 0x709f503b8bb2 - rustc_interface[3d0f905af8220f3f]::passes::start_codegen at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_interface/src/passes.rs:1052:19 191: 0x709f5040a852 - ::codegen_and_build_linker at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_interface/src/queries.rs:129:31 192: 0x709f4f4d84cd - rustc_driver_impl[42e8f0480c92f6ee]::run_compiler::{closure#0}::{closure#1}::{closure#6} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_driver_impl/src/lib.rs:457:25 193: 0x709f4f4d84cd - ::enter::, rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#1} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context.rs:1324:37 194: 0x709f4f4d84cd - rustc_middle[c4725d7e3458b28d]::ty::context::tls::enter_context::<::enter, rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#1}, core[e7969a33fde5fecb]::result::Result, rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context/tls.rs:82:9 195: 0x709f4f4d84cd - >>::try_with::::enter, rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#1}, core[e7969a33fde5fecb]::result::Result, rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#0}, core[e7969a33fde5fecb]::result::Result, rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/thread/local.rs:283:12 196: 0x709f4f4d84cd - >>::with::::enter, rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#1}, core[e7969a33fde5fecb]::result::Result, rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#0}, core[e7969a33fde5fecb]::result::Result, rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/thread/local.rs:260:9 197: 0x709f4f4d84cd - rustc_middle[c4725d7e3458b28d]::ty::context::tls::enter_context::<::enter, rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#1}, core[e7969a33fde5fecb]::result::Result, rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context/tls.rs:79:9 198: 0x709f4f4d84cd - ::enter::, rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_middle/src/ty/context.rs:1324:9 199: 0x709f4f4cf185 - >::enter::, rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>, rustc_driver_impl[42e8f0480c92f6ee]::run_compiler::{closure#0}::{closure#1}::{closure#6}> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_interface/src/queries.rs:65:9 200: 0x709f4f455c05 - rustc_driver_impl[42e8f0480c92f6ee]::run_compiler::{closure#0}::{closure#1} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_driver_impl/src/lib.rs:456:13 201: 0x709f4f455c05 - ::enter::, rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_interface/src/queries.rs:210:19 202: 0x709f4f4a1f14 - rustc_driver_impl[42e8f0480c92f6ee]::run_compiler::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_driver_impl/src/lib.rs:392:22 203: 0x709f4f4a1f14 - rustc_interface[3d0f905af8220f3f]::interface::run_compiler::, rustc_driver_impl[42e8f0480c92f6ee]::run_compiler::{closure#0}>::{closure#1} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_interface/src/interface.rs:504:27 204: 0x709f4f4a1f14 - rustc_interface[3d0f905af8220f3f]::util::run_in_thread_pool_with_globals::, rustc_driver_impl[42e8f0480c92f6ee]::run_compiler::{closure#0}>::{closure#1}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_interface/src/util.rs:157:13 205: 0x709f4f4a1f14 - rustc_interface[3d0f905af8220f3f]::util::run_in_thread_with_globals::, rustc_driver_impl[42e8f0480c92f6ee]::run_compiler::{closure#0}>::{closure#1}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#0}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_interface/src/util.rs:107:21 206: 0x709f4f4a1f14 - >::set::, rustc_driver_impl[42e8f0480c92f6ee]::run_compiler::{closure#0}>::{closure#1}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#0}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>> at /home/gh-matthiaskrgr/.cargo/registry/src/index.crates.io-6f17d22bba15001f/scoped-tls-1.0.1/src/lib.rs:137:9 207: 0x709f4f4a1f14 - rustc_span[5f4bd3490991ca68]::create_session_globals_then::, rustc_interface[3d0f905af8220f3f]::util::run_in_thread_with_globals, rustc_driver_impl[42e8f0480c92f6ee]::run_compiler::{closure#0}>::{closure#1}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#0}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#0}::{closure#0}::{closure#0}> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_span/src/lib.rs:135:5 208: 0x709f4f4a1f14 - rustc_interface[3d0f905af8220f3f]::util::run_in_thread_with_globals::, rustc_driver_impl[42e8f0480c92f6ee]::run_compiler::{closure#0}>::{closure#1}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#0}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#0}::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/compiler/rustc_interface/src/util.rs:106:17 209: 0x709f4f4a1f14 - std[ba56102e647eda86]::sys::backtrace::__rust_begin_short_backtrace::, rustc_driver_impl[42e8f0480c92f6ee]::run_compiler::{closure#0}>::{closure#1}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#0}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/sys/backtrace.rs:154:18 210: 0x709f4f451391 - ::spawn_unchecked_::, rustc_driver_impl[42e8f0480c92f6ee]::run_compiler::{closure#0}>::{closure#1}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#0}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#1}::{closure#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/thread/mod.rs:521:17 211: 0x709f4f451391 - ::spawn_unchecked_, rustc_driver_impl[42e8f0480c92f6ee]::run_compiler::{closure#0}>::{closure#1}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#0}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#1}::{closure#0}> as core[e7969a33fde5fecb]::ops::function::FnOnce<()>>::call_once at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/core/src/panic/unwind_safe.rs:272:9 212: 0x709f4f451391 - std[ba56102e647eda86]::panicking::try::do_call::::spawn_unchecked_, rustc_driver_impl[42e8f0480c92f6ee]::run_compiler::{closure#0}>::{closure#1}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#0}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#1}::{closure#0}>, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/panicking.rs:557:40 213: 0x709f4f451391 - std[ba56102e647eda86]::panicking::try::, core[e7969a33fde5fecb]::panic::unwind_safe::AssertUnwindSafe<::spawn_unchecked_, rustc_driver_impl[42e8f0480c92f6ee]::run_compiler::{closure#0}>::{closure#1}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#0}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#1}::{closure#0}>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/panicking.rs:520:19 214: 0x709f4f451391 - std[ba56102e647eda86]::panic::catch_unwind::::spawn_unchecked_, rustc_driver_impl[42e8f0480c92f6ee]::run_compiler::{closure#0}>::{closure#1}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#0}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#1}::{closure#0}>, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>> at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/panic.rs:358:14 215: 0x709f4f451391 - ::spawn_unchecked_::, rustc_driver_impl[42e8f0480c92f6ee]::run_compiler::{closure#0}>::{closure#1}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#0}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#1} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/thread/mod.rs:520:30 216: 0x709f4f451391 - <::spawn_unchecked_, rustc_driver_impl[42e8f0480c92f6ee]::run_compiler::{closure#0}>::{closure#1}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#0}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#0}::{closure#0}, core[e7969a33fde5fecb]::result::Result<(), rustc_span[5f4bd3490991ca68]::ErrorGuaranteed>>::{closure#1} as core[e7969a33fde5fecb]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/core/src/ops/function.rs:250:5 217: 0x709f52f0dc34 - as core::ops::function::FnOnce>::call_once::hdc8a77b5183f7d9c at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/alloc/src/boxed.rs:2453:9 218: 0x709f52f0dc34 - as core::ops::function::FnOnce>::call_once::h473fc2cee6a09d48 at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/alloc/src/boxed.rs:2453:9 219: 0x709f52f0dc34 - std::sys::pal::unix::thread::Thread::new::thread_start::h585ba0c41c27b0bf at /home/gh-matthiaskrgr/vcs/github/rust_debug_assertions/library/std/src/sys/pal/unix/thread.rs:105:17 220: 0x709f4aa9ca94 - start_thread at ./nptl/pthread_create.c:447:8 221: 0x709f4ab29c3c - clone3 at ./misc/../sysdeps/unix/sysv/linux/x86_64/clone3.S:78 222: 0x0 - 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: rustc 1.83.0-dev running on x86_64-unknown-linux-gnu note: compiler flags: -Z mir-opt-level=5 -Z dump-mir-dir=dir query stack during panic: #0 [optimized_mir] optimizing MIR for `basic` #1 [cross_crate_inlinable] whether the item should be made inlinable across crates end of query stack warning: 2 warnings emitted ```

RalfJung commented 1 month ago

Seems like a bug in GVN, calling copy_op where the input claims to have integer type, but actually has a pointer value, which is invalid.

I think the code that goes wrong is this:

https://github.com/rust-lang/rust/blob/bd31e3ed70b75e5936880b18f6b5d1c8f5ee344f/compiler/rustc_mir_transform/src/gvn.rs#L566-L577

An offset of 0 is effectively a transmute, but it is not valid in the interpreter to transmute pointers to integers like this. Only very few transmutes can be done this way on immediates (e.g. u64 to i64). Anything where the layouts are meaningfully different -- and this includes the difference between an integer and a pointer -- needs to go through memory.

Cc @cjgillot

RalfJung commented 1 month ago

https://github.com/rust-lang/rust/pull/131068 should fix this