Skip to content

ICE when reusing syn::Error stored in static LazyLock across multiple proc macro invocations #149465

@mookums

Description

@mookums

Code

/// proc-macro crate lib.rs use proc_macro::TokenStream; use proc_macro2::Span; use quote::quote; use std::sync::LazyLock; use syn::Error; #[derive(Debug)] struct FallibleError; impl std::fmt::Display for FallibleError { fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { write!(f, "Fallible Error") } } fn fallible_function() -> Result<(), FallibleError> { Err(FallibleError) } static SHARED: LazyLock<Result<(), Error>> = LazyLock::new(|| { fallible_function().map_err(|e| Error::new(Span::call_site(), e.to_string()))?; Ok(()) }); #[proc_macro] pub fn trigger_ice(_input: TokenStream) -> TokenStream { match SHARED.as_ref() { Ok(_) => quote! { fn it_worked() {} }.into(), Err(e) => e.to_compile_error().into(), } }
/// main.rs use minimal_ice_macro::trigger_ice; fn helper1() { trigger_ice!(); } fn helper2() { trigger_ice!(); } fn main() { helper1(); helper2(); }

Meta

rustc --version --verbose:

rustc 1.91.1 (ed61e7d7e 2025-11-07) binary: rustc commit-hash: ed61e7d7e242494fb7057f2657300d9e77bb4fcb commit-date: 2025-11-07 host: x86_64-unknown-linux-gnu release: 1.91.1 LLVM version: 21.1.2 

Error output

 Compiling minimal_ice v0.1.0 (/home/muki/Git/mookums/minimal_ice/minimal_ice) error: Fallible Error --> minimal_ice/src/main.rs:4:5 | 4 | trigger_ice!(); | ^^^^^^^^^^^^^^ | = note: this error originates in the macro `trigger_ice` (in Nightly builds, run with -Z macro-backtrace for more info) thread 'rustc' (17226) panicked at /rustc-dev/ed61e7d7e242494fb7057f2657300d9e77bb4fcb/compiler/rustc_proc_macro/../../library/proc_macro/src/bridge/handle.rs:73:19: use-after-free in `proc_macro` handle stack backtrace: 0: __rustc::rust_begin_unwind 1: core::panicking::panic_fmt 2: core::option::expect_failed 3: <rustc_proc_macro::bridge::TokenTree<rustc_proc_macro::bridge::Marked<rustc_ast::tokenstream::TokenStream, rustc_proc_macro::bridge::client::TokenStream>, rustc_proc_macro::bridge::Marked<rustc_span::span_encoding::Span, rustc_proc_macro::bridge::client::Span>, rustc_proc_macro::bridge::Marked<rustc_span::symbol::Symbol, rustc_proc_macro::bridge::symbol::Symbol>> as rustc_proc_macro::bridge::rpc::DecodeMut<rustc_proc_macro::bridge::server::HandleStore<rustc_proc_macro::bridge::server::MarkedTypes<rustc_expand::proc_macro_server::Rustc>>>>::decode 4: <rustc_proc_macro::bridge::server::Dispatcher<rustc_proc_macro::bridge::server::MarkedTypes<rustc_expand::proc_macro_server::Rustc>> as rustc_proc_macro::bridge::server::DispatcherTrait>::dispatch 5: <rustc_proc_macro::bridge::closure::Closure<_, _> as core::convert::From<&mut _>>::from::call::<rustc_proc_macro::bridge::buffer::Buffer, rustc_proc_macro::bridge::buffer::Buffer, <rustc_proc_macro::bridge::server::SameThread as rustc_proc_macro::bridge::server::ExecutionStrategy>::run_bridge_and_client<rustc_proc_macro::bridge::server::Dispatcher<rustc_proc_macro::bridge::server::MarkedTypes<rustc_expand::proc_macro_server::Rustc>>>::{closure#0}> 6: proc_macro::bridge::closure::Closure<A,R>::call at /rustc/ed61e7d7e242494fb7057f2657300d9e77bb4fcb/library/proc_macro/src/bridge/closure.rs:30:18 7: proc_macro::bridge::client::TokenStream::from_token_tree::{{closure}} at /rustc/ed61e7d7e242494fb7057f2657300d9e77bb4fcb/library/proc_macro/src/bridge/client.rs:149:43 8: proc_macro::bridge::client::Bridge::with::{{closure}} at /rustc/ed61e7d7e242494fb7057f2657300d9e77bb4fcb/library/proc_macro/src/bridge/client.rs:227:13 9: proc_macro::bridge::client::state::with at /rustc/ed61e7d7e242494fb7057f2657300d9e77bb4fcb/library/proc_macro/src/bridge/client.rs:216:9 10: proc_macro::bridge::client::Bridge::with at /rustc/ed61e7d7e242494fb7057f2657300d9e77bb4fcb/library/proc_macro/src/bridge/client.rs:222:9 11: proc_macro::bridge::client::TokenStream::from_token_tree at /rustc/ed61e7d7e242494fb7057f2657300d9e77bb4fcb/library/proc_macro/src/bridge/client.rs:142:17 12: <proc_macro::TokenStream as core::convert::From<proc_macro::TokenTree>>::from at /rustc/ed61e7d7e242494fb7057f2657300d9e77bb4fcb/library/proc_macro/src/lib.rs:258:26 13: <proc_macro2::imp::TokenStream as core::convert::From<proc_macro2::TokenTree>>::from 14: <proc_macro2::TokenStream as core::convert::From<proc_macro2::TokenTree>>::from 15: syn::error::ErrorMessage::to_compile_error 16: syn::error::Error::to_compile_error 17: minimal_ice_macro::trigger_ice 18: core::ops::function::Fn::call 19: proc_macro::bridge::client::Client<proc_macro::TokenStream,proc_macro::TokenStream>::expand1::{{closure}}::{{closure}} 20: proc_macro::bridge::client::run_client::{{closure}}::{{closure}} 21: proc_macro::bridge::client::state::set 22: proc_macro::bridge::client::run_client::{{closure}} 23: <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once 24: std::panicking::catch_unwind::do_call 25: __rust_try 26: proc_macro::bridge::client::run_client 27: proc_macro::bridge::client::Client<proc_macro::TokenStream,proc_macro::TokenStream>::expand1::{{closure}} 28: proc_macro::bridge::selfless_reify::reify_to_extern_c_fn_hrt_bridge::wrapper 29: <rustc_proc_macro::bridge::server::MaybeCrossThread<rustc_expand::proc_macro::MessagePipe<rustc_proc_macro::bridge::buffer::Buffer>> as rustc_proc_macro::bridge::server::ExecutionStrategy>::run_bridge_and_client::<rustc_proc_macro::bridge::server::Dispatcher<rustc_proc_macro::bridge::server::MarkedTypes<rustc_expand::proc_macro_server::Rustc>>> 30: <rustc_proc_macro::bridge::client::Client<rustc_proc_macro::TokenStream, rustc_proc_macro::TokenStream>>::run::<rustc_expand::proc_macro_server::Rustc, rustc_proc_macro::bridge::server::MaybeCrossThread<rustc_expand::proc_macro::MessagePipe<rustc_proc_macro::bridge::buffer::Buffer>>> 31: <rustc_expand::proc_macro::BangProcMacro as rustc_expand::base::BangProcMacro>::expand 32: <rustc_expand::expand::MacroExpander>::fully_expand_fragment 33: <rustc_expand::expand::MacroExpander>::expand_crate 34: rustc_interface::passes::configure_and_expand 35: rustc_interface::passes::resolver_for_lowering_raw [... omitted 2 frames ...] 36: rustc_interface::passes::create_and_enter_global_ctxt::<core::option::Option<rustc_interface::queries::Linker>, rustc_driver_impl::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0} 37: rustc_interface::interface::run_compiler::<(), rustc_driver_impl::run_compiler::{closure#0}>::{closure#1} note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace. error: the compiler unexpectedly panicked. this is a bug. note: we would appreciate a bug report: https://github.com/rust-lang/rust/issues/new?labels=C-bug%2C+I-ICE%2C+T-compiler&template=ice.md note: rustc 1.91.1 (ed61e7d7e 2025-11-07) running on x86_64-unknown-linux-gnu note: compiler flags: --crate-type bin -C embed-bitcode=no -C debuginfo=2 -C incremental=[REDACTED] note: some of the compiler flags provided by cargo are hidden query stack during panic: #0 [resolver_for_lowering_raw] getting the resolver for lowering end of query stack error: proc macro panicked --> minimal_ice/src/main.rs:8:5 | 8 | trigger_ice!(); | ^^^^^^^^^^^^^^ | = help: message: use-after-free in `proc_macro` handle error: could not compile `minimal_ice` (bin "minimal_ice") due to 2 previous errors 
Backtrace

 Compiling minimal_ice v0.1.0 (/home/muki/Git/mookums/minimal_ice/minimal_ice) error: Fallible Error --> minimal_ice/src/main.rs:4:5 | 4 | trigger_ice!(); | ^^^^^^^^^^^^^^ | = note: this error originates in the macro `trigger_ice` (in Nightly builds, run with -Z macro-backtrace for more info) thread 'rustc' (17453) panicked at /rustc-dev/ed61e7d7e242494fb7057f2657300d9e77bb4fcb/compiler/rustc_proc_macro/../../library/proc_macro/src/bridge/handle.rs:73:19: use-after-free in `proc_macro` handle stack backtrace: 0: 0x7ffff4a4c903 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::haa87a551a4affa55 1: 0x7ffff5201bd8 - core::fmt::write::h80461e1e45e4fdd2 2: 0x7ffff6805b6f - std::io::Write::write_fmt::h6e6c69b2d6337d9b 3: 0x7ffff4a11dc2 - std::sys::backtrace::BacktraceLock::print::hf67a46baa621998e 4: 0x7ffff4a17d19 - std::panicking::default_hook::{{closure}}::h391aa815d5e47ec8 5: 0x7ffff4a17843 - std::panicking::default_hook::hd6fdcf2489bb807d 6: 0x7ffff39fe9a7 - std[868c2b82e02752c5]::panicking::update_hook::<alloc[2f8cfedda7e895ee]::boxed::Box<rustc_driver_impl[8c00ca3c7ff43d1e]::install_ice_hook::{closure#1}>>::{closure#0} 7: 0x7ffff4a1813f - std::panicking::panic_with_hook::h185ddfb86bf14d73 8: 0x7ffff4a17efa - std::panicking::panic_handler::{{closure}}::had89ddd01b6112c9 9: 0x7ffff4a11ef9 - std::sys::backtrace::__rust_end_short_backtrace::h5d0fc36eef7265ea 10: 0x7ffff49f286d - __rustc[eb8946e36839644a]::rust_begin_unwind 11: 0x7ffff10e7b00 - core::panicking::panic_fmt::h92c8e5abe71dd8d1 12: 0x7ffff246581b - core::option::expect_failed::h1729d0bd73171c50 13: 0x7ffff3ab458c - <rustc_proc_macro[4c932ddccfb31674]::bridge::TokenTree<rustc_proc_macro[4c932ddccfb31674]::bridge::Marked<rustc_ast[587ebf2c73052b65]::tokenstream::TokenStream, rustc_proc_macro[4c932ddccfb31674]::bridge::client::TokenStream>, rustc_proc_macro[4c932ddccfb31674]::bridge::Marked<rustc_span[708dd8ee61ad0c72]::span_encoding::Span, rustc_proc_macro[4c932ddccfb31674]::bridge::client::Span>, rustc_proc_macro[4c932ddccfb31674]::bridge::Marked<rustc_span[708dd8ee61ad0c72]::symbol::Symbol, rustc_proc_macro[4c932ddccfb31674]::bridge::symbol::Symbol>> as rustc_proc_macro[4c932ddccfb31674]::bridge::rpc::DecodeMut<rustc_proc_macro[4c932ddccfb31674]::bridge::server::HandleStore<rustc_proc_macro[4c932ddccfb31674]::bridge::server::MarkedTypes<rustc_expand[5a74fa380dd05054]::proc_macro_server::Rustc>>>>::decode 14: 0x7ffff6111fdd - <rustc_proc_macro[4c932ddccfb31674]::bridge::server::Dispatcher<rustc_proc_macro[4c932ddccfb31674]::bridge::server::MarkedTypes<rustc_expand[5a74fa380dd05054]::proc_macro_server::Rustc>> as rustc_proc_macro[4c932ddccfb31674]::bridglazylocke::server::DispatcherTrait>::dispatch 15: 0x7ffff610ed70 - <rustc_proc_macro[4c932ddccfb31674]::bridge::closure::Closure<_, _> as core[3960b0be9a8ab2fb]::convert::From<&mut _>>::from::call::<rustc_proc_macro[4c932ddccfb31674]::bridge::buffer::Buffer, rustc_proc_macro[4c932ddccfb31674]::bridge::buffer::Buffer, <rustc_proc_macro[4c932ddccfb31674]::bridge::server::SameThread as rustc_proc_macro[4c932ddccfb31674]::bridge::server::ExecutionStrategy>::run_bridge_and_client<rustc_proc_macro[4c932ddccfb31674]::bridge::server::Dispatcher<rustc_proc_macro[4c932ddccfb31674]::bridge::server::MarkedTypes<rustc_expand[5a74fa380dd05054]::proc_macro_server::Rustc>>>::{closure#0}> 16: 0x7fffe4ea6307 - proc_macro::bridge::closure::Closure<A,R>::call::h7f8ca987bf7b2de0 at /rustc/ed61e7d7e242494fb7057f2657300d9e77bb4fcb/library/proc_macro/src/bridge/closure.rs:30:18 17: 0x7fffe4ea6307 - proc_macro::bridge::client::TokenStream::from_token_tree::{{closure}}::h9aaef0ecff856ad8 at /rustc/ed61e7d7e242494fb7057f2657300d9e77bb4fcb/library/proc_macro/src/bridge/client.rs:149:43 18: 0x7fffe4ea6307 - proc_macro::bridge::client::Bridge::with::{{closure}}::he660f1a130e0d84c at /rustc/ed61e7d7e242494fb7057f2657300d9e77bb4fcb/library/proc_macro/src/bridge/client.rs:227:13 19: 0x7fffe4ea6307 - proc_macro::bridge::client::state::with::h4e6ddc6a122883ec at /rustc/ed61e7d7e242494fb7057f2657300d9e77bb4fcb/library/proc_macro/src/bridge/client.rs:216:9 20: 0x7fffe4ea6307 - proc_macro::bridge::client::Bridge::with::h4b6dc168a192463a at /rustc/ed61e7d7e242494fb7057f2657300d9e77bb4fcb/library/proc_macro/src/bridge/client.rs:222:9 21: 0x7fffe4ea6307 - proc_macro::bridge::client::TokenStream::from_token_tree::h7d64daa50e0caa5d at /rustc/ed61e7d7e242494fb7057f2657300d9e77bb4fcb/library/proc_macro/src/bridge/client.rs:142:17 22: 0x7fffe4ea6307 - <proc_macro::TokenStream as core::convert::From<proc_macro::TokenTree>>::from::hd5452b19f706845e at /rustc/ed61e7d7e242494fb7057f2657300d9e77bb4fcb/library/proc_macro/src/lib.rs:258:26 23: 0x7fffe4e995d0 - <proc_macro2::imp::TokenStream as core::convert::From<proc_macro2::TokenTree>>::from::he49f34a67fa34f94 24: 0x7fffe4e9b679 - <proc_macro2::TokenStream as core::convert::From<proc_macro2::TokenTree>>::from::hd36ed5d645084d83 25: 0x7fffe4e92b9b - syn::error::ErrorMessage::to_compile_error::h8fc7a9288d7d4790 26: 0x7fffe4e92d5a - syn::error::Error::to_compile_error::h85253c9c68396ace 27: 0x7fffe4e90012 - minimal_ice_macro::trigger_ice::hf9e470ced26765e7 28: 0x7fffe4e9084e - core::ops::function::Fn::call::h80c0872a42c91b59 29: 0x7fffe4e92096 - proc_macro::bridge::client::Client<proc_macro::TokenStream,proc_macro::TokenStream>::expand1::{{closure}}::{{closure}}::h62de29f5d77914ba 30: 0x7fffe4e92056 - proc_macro::bridge::client::run_client::{{closure}}::{{closure}}::h0b775401d7e58d66 31: 0x7fffe4e8fef1 - proc_macro::bridge::client::state::set::h56f286317c15c3e5 32: 0x7fffe4e91ece - proc_macro::bridge::client::run_client::{{closure}}::hc67799c14faf7179 33: 0x7fffe4e8ff70 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h89fff44e590d4a34 34: 0x7fffe4e907dc - std::panicking::catch_unwind::do_call::hb1f61b44bd1bf271 35: 0x7fffe4e920cb - __rust_try 36: 0x7fffe4e91ae3 - proc_macro::bridge::client::run_client::h96eece2666342429 37: 0x7fffe4e9207e - proc_macro::bridge::client::Client<proc_macro::TokenStream,proc_macro::TokenStream>::expand1::{{closure}}::h72f2d63c28d83229 38: 0x7fffe4e91422 - proc_macro::bridge::selfless_reify::reify_to_extern_c_fn_hrt_bridge::wrapper::h176c9c99eda7eec8 39: 0x7ffff5ef6181 - <rustc_proc_macro[4c932ddccfb31674]::bridge::server::MaybeCrossThread<rustc_expand[5a74fa380dd05054]::proc_macro::MessagePipe<rustc_proc_macro[4c932ddccfb31674]::bridge::buffer::Buffer>> as rustc_proc_macro[4c932ddccfb31674]::bridge::server::ExecutionStrategy>::run_bridge_and_client::<rustc_proc_macro[4c932ddccfb31674]::bridge::server::Dispatcher<rustc_proc_macro[4c932ddccfb31674]::bridge::server::MarkedTypes<rustc_expand[5a74fa380dd05054]::proc_macro_server::Rustc>>> 40: 0x7ffff5ef5e92 - <rustc_proc_macro[4c932ddccfb31674]::bridge::client::Client<rustc_proc_macro[4c932ddccfb31674]::TokenStream, rustc_proc_macro[4c932ddccfb31674]::TokenStream>>::run::<rustc_expand[5a74fa380dd05054]::proc_macro_server::Rustc, rustc_proc_macro[4c932ddccfb31674]::bridge::server::MaybeCrossThread<rustc_expand[5a74fa380dd05054]::proc_macro::MessagePipe<rustc_proc_macro[4c932ddccfb31674]::bridge::buffer::Buffer>>> 41: 0x7ffff5ef35b7 - <rustc_expand[5a74fa380dd05054]::proc_macro::BangProcMacro as rustc_expand[5a74fa380dd05054]::base::BangProcMacro>::expand 42: 0x7ffff686ea93 - <rustc_expand[5a74fa380dd05054]::expand::MacroExpander>::fully_expand_fragment 43: 0x7ffff683bb85 - <rustc_expand[5a74fa380dd05054]::expand::MacroExpander>::expand_crate 44: 0x7ffff5d354ab - rustc_interface[76e547b88cad6d34]::passes::configure_and_expand 45: 0x7ffff655272d - rustc_interface[76e547b88cad6d34]::passes::resolver_for_lowering_raw 46: 0x7ffff655248d - rustc_query_impl[2d429222c3b2e6bb]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[2d429222c3b2e6bb]::query_impl::resolver_for_lowering_raw::dynamic_query::{closure#2}::{closure#0}, rustc_middle[33e32ff2bdd40d7a]::query::erase::Erased<[u8; 16usize]>> 47: 0x7ffff6552467 - <rustc_query_impl[2d429222c3b2e6bb]::query_impl::resolver_for_lowering_raw::dynamic_query::{closure#2} as core[3960b0be9a8ab2fb]::ops::function::FnOnce<(rustc_middle[33e32ff2bdd40d7a]::ty::context::TyCtxt, ())>>::call_once 48: 0x7ffff6728d5d - rustc_query_system[cd1a210e7e3190c4]::query::plumbing::try_execute_query::<rustc_query_impl[2d429222c3b2e6bb]::DynamicConfig<rustc_query_system[cd1a210e7e3190c4]::query::caches::SingleCache<rustc_middle[33e32ff2bdd40d7a]::query::erase::Erased<[u8; 16usize]>>, false, false, false>, rustc_query_impl[2d429222c3b2e6bb]::plumbing::QueryCtxt, true> 49: 0x7ffff672874f - rustc_query_impl[2d429222c3b2e6bb]::query_impl::resolver_for_lowering_raw::get_query_incr::__rust_end_short_backtrace 50: 0x7ffff64eea8e - rustc_interface[76e547b88cad6d34]::passes::create_and_enter_global_ctxt::<core[3960b0be9a8ab2fb]::option::Option<rustc_interface[76e547b88cad6d34]::queries::Linker>, rustc_driver_impl[8c00ca3c7ff43d1e]::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0} 51: 0x7ffff64df83e - rustc_interface[76e547b88cad6d34]::interface::run_compiler::<(), rustc_driver_impl[8c00ca3c7ff43d1e]::run_compiler::{closure#0}>::{closure#1} 52: 0x7ffff63ea938 - std[868c2b82e02752c5]::sys::backtrace::__rust_begin_short_backtrace::<rustc_interface[76e547b88cad6d34]::util::run_in_thread_with_globals<rustc_interface[76e547b88cad6d34]::util::run_in_thread_pool_with_globals<rustc_interface[76e547b88cad6d34]::interface::run_compiler<(), rustc_driver_impl[8c00ca3c7ff43d1e]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()> 53: 0x7ffff63ea61c - <<std[868c2b82e02752c5]::thread::Builder>::spawn_unchecked_<rustc_interface[76e547b88cad6d34]::util::run_in_thread_with_globals<rustc_interface[76e547b88cad6d34]::util::run_in_thread_pool_with_globals<rustc_interface[76e547b88cad6d34]::interface::run_compiler<(), rustc_driver_impl[8c00ca3c7ff43d1e]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>::{closure#1} as core[3960b0be9a8ab2fb]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} 54: 0x7ffff63f0c6f - std::sys::thread::unix::Thread::new::thread_start::h10345b7e8309cb92 55: 0x7fffefa9a97a - start_thread 56: 0x7fffefb22d2c - __GI___clone3 57: 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: rustc 1.91.1 (ed61e7d7e 2025-11-07) running on x86_64-unknown-linux-gnu note: compiler flags: --crate-type bin -C embed-bitcode=no -C debuginfo=2 -C incremental=[REDACTED] note: some of the compiler flags provided by cargo are hidden query stack during panic: #0 [resolver_for_lowering_raw] getting the resolver for lowering end of query stack error: proc macro panicked --> minimal_ice/src/main.rs:8:5 | 8 | trigger_ice!(); | ^^^^^^^^^^^^^^ | = help: message: use-after-free in `proc_macro` handle error: could not compile `minimal_ice` (bin "minimal_ice") due to 2 previous errors 

Beta

rustc 1.92.0-beta.3 (f3f12444a 2025-11-09) binary: rustc commit-hash: f3f12444a017add0468f683f3a10656d29438a05 commit-date: 2025-11-09 host: x86_64-unknown-linux-gnu release: 1.92.0-beta.3 LLVM version: 21.1.3 
Beta Backtrace

 Compiling minimal_ice v0.1.0 (/home/muki/Git/mookums/minimal_ice/minimal_ice) error: Fallible Error --> minimal_ice/src/main.rs:4:5 | 4 | trigger_ice!(); | ^^^^^^^^^^^^^^ | = note: this error originates in the macro `trigger_ice` (in Nightly builds, run with -Z macro-backtrace for more info) thread 'rustc' (96998) panicked at /rustc-dev/f3f12444a017add0468f683f3a10656d29438a05/compiler/rustc_proc_macro/../../library/proc_macro/src/bridge/handle.rs:73:19: use-after-free in `proc_macro` handle stack backtrace: 0: 0x7ffff4a31ac3 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::h3e9d275186baf5f9 1: 0x7ffff5201b98 - core::fmt::write::hb85a90fbe7ba8ad7 2: 0x7ffff680c011 - std::io::Write::write_fmt::h0dc6e7a219cbd6b7 3: 0x7ffff49f7652 - std::sys::backtrace::BacktraceLock::print::h58bb164ecb3a7608 4: 0x7ffff49fd719 - std::panicking::default_hook::{{closure}}::h112e060ce9c7ec0a 5: 0x7ffff49fd243 - std::panicking::default_hook::h42eb8101af7ca07b 6: 0x7ffff39f6861 - std[af028110d1055b0b]::panicking::update_hook::<alloc[6be5232bc8381716]::boxed::Box<rustc_driver_impl[8e26362778fa249e]::install_ice_hook::{closure#1}>>::{closure#0} 7: 0x7ffff49fdb3f - std::panicking::panic_with_hook::h48e503d1a9999970 8: 0x7ffff49fd8fa - std::panicking::panic_handler::{{closure}}::h44c20e210d370486 9: 0x7ffff49f7789 - std::sys::backtrace::__rust_end_short_backtrace::h4d56a29a3f91ad26 10: 0x7ffff49d818d - __rustc[1720d281c0a319d2]::rust_begin_unwind 11: 0x7ffff197ed20 - core::panicking::panic_fmt::hbb756acb2f7b23ce 12: 0x7ffff255632b - core::option::expect_failed::h4297324ea965e01b 13: 0x7ffff3a9a7ac - <rustc_proc_macro[9b0c2294e94e5d37]::bridge::TokenTree<rustc_proc_macro[9b0c2294e94e5d37]::bridge::Marked<rustc_ast[91f889ff5de43160]::tokenstream::TokenStream, rustc_proc_macro[9b0c2294e94e5d37]::bridge::client::TokenStream>, rustc_proc_macro[9b0c2294e94e5d37]::bridge::Marked<rustc_span[71e329ce9c103f2d]::span_encoding::Span, rustc_proc_macro[9b0c2294e94e5d37]::bridge::client::Span>, rustc_proc_macro[9b0c2294e94e5d37]::bridge::Marked<rustc_span[71e329ce9c103f2d]::symbol::Symbol, rustc_proc_macro[9b0c2294e94e5d37]::bridge::symbol::Symbol>> as rustc_proc_macro[9b0c2294e94e5d37]::bridge::rpc::Decode<rustc_proc_macro[9b0c2294e94e5d37]::bridge::server::HandleStore<rustc_proc_macro[9b0c2294e94e5d37]::bridge::server::MarkedTypes<rustc_expand[9599ee0a5d6b1eb9]::proc_macro_server::Rustc>>>>::decode 14: 0x7ffff60f1390 - <rustc_proc_macro[9b0c2294e94e5d37]::bridge::server::Dispatcher<rustc_proc_macro[9b0c2294e94e5d37]::bridge::server::MarkedTypes<rustc_expand[9599ee0a5d6b1eb9]::proc_macro_server::Rustc>> as rustc_proc_macro[9b0c2294e94e5d37]::bridge::server::DispatcherTrait>::dispatch 15: 0x7ffff60ee5b0 - <rustc_proc_macro[9b0c2294e94e5d37]::bridge::closure::Closure<_, _> as core[ed376e679610330f]::convert::From<&mut _>>::from::call::<rustc_proc_macro[9b0c2294e94e5d37]::bridge::buffer::Buffer, rustc_proc_macro[9b0c2294e94e5d37]::bridge::buffer::Buffer, <rustc_proc_macro[9b0c2294e94e5d37]::bridge::server::SameThread as rustc_proc_macro[9b0c2294e94e5d37]::bridge::server::ExecutionStrategy>::run_bridge_and_client<rustc_proc_macro[9b0c2294e94e5d37]::bridge::server::Dispatcher<rustc_proc_macro[9b0c2294e94e5d37]::bridge::server::MarkedTypes<rustc_expand[9599ee0a5d6b1eb9]::proc_macro_server::Rustc>>>::{closure#0}> 16: 0x7fffe4f3f2a7 - proc_macro::bridge::closure::Closure<A,R>::call::h27e762b8182bc4a7 at /rustc/f3f12444a017add0468f683f3a10656d29438a05/library/proc_macro/src/bridge/closure.rs:28:18 17: 0x7fffe4f3f2a7 - proc_macro::bridge::client::TokenStream::from_token_tree::{{closure}}::h162f1e7289fbdc15 at /rustc/f3f12444a017add0468f683f3a10656d29438a05/library/proc_macro/src/bridge/client.rs:144:43 18: 0x7fffe4f3f2a7 - proc_macro::bridge::client::Bridge::with::{{closure}}::h03d23392bf82d796 at /rustc/f3f12444a017add0468f683f3a10656d29438a05/library/proc_macro/src/bridge/client.rs:222:13 19: 0x7fffe4f3f2a7 - proc_macro::bridge::client::state::with::hf7f615a92f4d4478 at /rustc/f3f12444a017add0468f683f3a10656d29438a05/library/proc_macro/src/bridge/client.rs:211:9 20: 0x7fffe4f3f2a7 - proc_macro::bridge::client::Bridge::with::h6972aaccd4725b8f at /rustc/f3f12444a017add0468f683f3a10656d29438a05/library/proc_macro/src/bridge/client.rs:217:9 21: 0x7fffe4f3f2a7 - proc_macro::bridge::client::TokenStream::from_token_tree::h1ce468960c9ab270 at /rustc/f3f12444a017add0468f683f3a10656d29438a05/library/proc_macro/src/bridge/client.rs:137:17 22: 0x7fffe4f3f2a7 - <proc_macro::TokenStream as core::convert::From<proc_macro::TokenTree>>::from::he7e00bfd6782b227 at /rustc/f3f12444a017add0468f683f3a10656d29438a05/library/proc_macro/src/lib.rs:257:26 23: 0x7fffe4f32c40 - <proc_macro2::imp::TokenStream as core::convert::From<proc_macro2::TokenTree>>::from::h2f13d9f4712113cb 24: 0x7fffe4f32af9 - <proc_macro2::TokenStream as core::convert::From<proc_macro2::TokenTree>>::from::h90d692e625f9f18b 25: 0x7fffe4f2c57b - syn::error::ErrorMessage::to_compile_error::h8eb307be4eef352d 26: 0x7fffe4f2c73a - syn::error::Error::to_compile_error::h1c2ace24c1884cc4 27: 0x7fffe4f28912 - minimal_ice_macro::trigger_ice::hb4f9fc17fc3832e0 28: 0x7fffe4f2b36e - core::ops::function::Fn::call::h76f1ee09387cb84c 29: 0x7fffe4f2a986 - proc_macro::bridge::client::Client<proc_macro::TokenStream,proc_macro::TokenStream>::expand1::{{closure}}::{{closure}}::h7314bc6bbf5b3c06 30: 0x7fffe4f2a946 - proc_macro::bridge::client::run_client::{{closure}}::{{closure}}::h903e16cb6e84f8a0 31: 0x7fffe4f2a251 - proc_macro::bridge::client::state::set::h6414b07d76a35005 32: 0x7fffe4f2a7be - proc_macro::bridge::client::run_client::{{closure}}::h1d14b2bc08673617 33: 0x7fffe4f28790 - <core::panic::unwind_safe::AssertUnwindSafe<F> as core::ops::function::FnOnce<()>>::call_once::h65989b2034e597d5 34: 0x7fffe4f2a9fc - std::panicking::catch_unwind::do_call::h7517074ff958203a 35: 0x7fffe4f2a9bb - __rust_try 36: 0x7fffe4f2a3d3 - proc_macro::bridge::client::run_client::hcaeeb7caea47ff5e 37: 0x7fffe4f2a96e - proc_macro::bridge::client::Client<proc_macro::TokenStream,proc_macro::TokenStream>::expand1::{{closure}}::hc7580236c8388686 38: 0x7fffe4f29742 - proc_macro::bridge::selfless_reify::reify_to_extern_c_fn_hrt_bridge::wrapper::h24ff7b36245e8635 39: 0x7ffff5f00681 - <rustc_proc_macro[9b0c2294e94e5d37]::bridge::server::MaybeCrossThread<rustc_expand[9599ee0a5d6b1eb9]::proc_macro::MessagePipe<rustc_proc_macro[9b0c2294e94e5d37]::bridge::buffer::Buffer>> as rustc_proc_macro[9b0c2294e94e5d37]::bridge::server::ExecutionStrategy>::run_bridge_and_client::<rustc_proc_macro[9b0c2294e94e5d37]::bridge::server::Dispatcher<rustc_proc_macro[9b0c2294e94e5d37]::bridge::server::MarkedTypes<rustc_expand[9599ee0a5d6b1eb9]::proc_macro_server::Rustc>>> 40: 0x7ffff5f00392 - <rustc_proc_macro[9b0c2294e94e5d37]::bridge::client::Client<rustc_proc_macro[9b0c2294e94e5d37]::TokenStream, rustc_proc_macro[9b0c2294e94e5d37]::TokenStream>>::run::<rustc_expand[9599ee0a5d6b1eb9]::proc_macro_server::Rustc, rustc_proc_macro[9b0c2294e94e5d37]::bridge::server::MaybeCrossThread<rustc_expand[9599ee0a5d6b1eb9]::proc_macro::MessagePipe<rustc_proc_macro[9b0c2294e94e5d37]::bridge::buffer::Buffer>>> 41: 0x7ffff5efe177 - <rustc_expand[9599ee0a5d6b1eb9]::proc_macro::BangProcMacro as rustc_expand[9599ee0a5d6b1eb9]::base::BangProcMacro>::expand 42: 0x7ffff67bc4cc - <rustc_expand[9599ee0a5d6b1eb9]::expand::MacroExpander>::fully_expand_fragment 43: 0x7ffff67847a9 - <rustc_expand[9599ee0a5d6b1eb9]::expand::MacroExpander>::expand_crate 44: 0x7ffff5ce4924 - rustc_interface[7594eb8868074b87]::passes::configure_and_expand 45: 0x7ffff6372b95 - rustc_interface[7594eb8868074b87]::passes::resolver_for_lowering_raw 46: 0x7ffff637290d - rustc_query_impl[d188527145c04d80]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[d188527145c04d80]::query_impl::resolver_for_lowering_raw::dynamic_query::{closure#2}::{closure#0}, rustc_middle[bd6923619f42b0b9]::query::erase::Erased<[u8; 16usize]>> 47: 0x7ffff63728e9 - <rustc_query_impl[d188527145c04d80]::query_impl::resolver_for_lowering_raw::dynamic_query::{closure#2} as core[ed376e679610330f]::ops::function::FnOnce<(rustc_middle[bd6923619f42b0b9]::ty::context::TyCtxt, ())>>::call_once 48: 0x7ffff64f5e7d - rustc_query_system[d8a6e816219f7c4b]::query::plumbing::try_execute_query::<rustc_query_impl[d188527145c04d80]::DynamicConfig<rustc_query_system[d8a6e816219f7c4b]::query::caches::SingleCache<rustc_middle[bd6923619f42b0b9]::query::erase::Erased<[u8; 16usize]>>, false, false, false>, rustc_query_impl[d188527145c04d80]::plumbing::QueryCtxt, true> 49: 0x7ffff64f5851 - rustc_query_impl[d188527145c04d80]::query_impl::resolver_for_lowering_raw::get_query_incr::__rust_end_short_backtrace 50: 0x7ffff64e872a - <rustc_interface[7594eb8868074b87]::passes::create_and_enter_global_ctxt<core[ed376e679610330f]::option::Option<rustc_interface[7594eb8868074b87]::queries::Linker>, rustc_driver_impl[8e26362778fa249e]::run_compiler::{closure#0}::{closure#2}>::{closure#2} as core[ed376e679610330f]::ops::function::FnOnce<(&rustc_session[a16f20ed1a24abe7]::session::Session, rustc_middle[bd6923619f42b0b9]::ty::context::CurrentGcx, alloc[6be5232bc8381716]::sync::Arc<rustc_data_structures[62f0d6f7c43ee74a]::jobserver::Proxy>, &std[af028110d1055b0b]::sync::once_lock::OnceLock<rustc_middle[bd6923619f42b0b9]::ty::context::GlobalCtxt>, &rustc_data_structures[62f0d6f7c43ee74a]::sync::worker_local::WorkerLocal<rustc_middle[bd6923619f42b0b9]::arena::Arena>, &rustc_data_structures[62f0d6f7c43ee74a]::sync::worker_local::WorkerLocal<rustc_hir[af2b1261e8482175]::Arena>, rustc_driver_impl[8e26362778fa249e]::run_compiler::{closure#0}::{closure#2})>>::call_once::{shim:vtable#0} 51: 0x7ffff63dad22 - rustc_interface[7594eb8868074b87]::interface::run_compiler::<(), rustc_driver_impl[8e26362778fa249e]::run_compiler::{closure#0}>::{closure#1} 52: 0x7ffff5f84a78 - std[af028110d1055b0b]::sys::backtrace::__rust_begin_short_backtrace::<rustc_interface[7594eb8868074b87]::util::run_in_thread_with_globals<rustc_interface[7594eb8868074b87]::util::run_in_thread_pool_with_globals<rustc_interface[7594eb8868074b87]::interface::run_compiler<(), rustc_driver_impl[8e26362778fa249e]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()> 53: 0x7ffff5f84748 - <<std[af028110d1055b0b]::thread::Builder>::spawn_unchecked_<rustc_interface[7594eb8868074b87]::util::run_in_thread_with_globals<rustc_interface[7594eb8868074b87]::util::run_in_thread_pool_with_globals<rustc_interface[7594eb8868074b87]::interface::run_compiler<(), rustc_driver_impl[8e26362778fa249e]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>::{closure#1} as core[ed376e679610330f]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} 54: 0x7ffff5f830af - std::sys::thread::unix::Thread::new::thread_start::h08ac2fb5a17180df 55: 0x7fffefa9a97a - start_thread 56: 0x7fffefb22d2c - __GI___clone3 57: 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: rustc 1.92.0-beta.3 (f3f12444a 2025-11-09) running on x86_64-unknown-linux-gnu note: compiler flags: --crate-type bin -C embed-bitcode=no -C debuginfo=2 -C incremental=[REDACTED] note: some of the compiler flags provided by cargo are hidden query stack during panic: #0 [resolver_for_lowering_raw] getting the resolver for lowering end of query stack error: proc macro panicked --> minimal_ice/src/main.rs:8:5 | 8 | trigger_ice!(); | ^^^^^^^^^^^^^^ | = help: message: use-after-free in `proc_macro` handle error: could not compile `minimal_ice` (bin "minimal_ice") due to 2 previous errors 

Nightly

rustc 1.93.0-nightly (cc3eee7fb 2025-11-28) binary: rustc commit-hash: cc3eee7fbe17ea4b7238531cb97e1b7b8bd6afce commit-date: 2025-11-28 host: x86_64-unknown-linux-gnu release: 1.93.0-nightly LLVM version: 21.1.5 
Nightly Backtrace

 Compiling minimal_ice v0.1.0 (/home/muki/Git/mookums/minimal_ice/minimal_ice) error: Fallible Error --> minimal_ice/src/main.rs:4:5 | 4 | trigger_ice!(); | ^^^^^^^^^^^^^^ | = note: this error originates in the macro `trigger_ice` (in Nightly builds, run with -Z macro-backtrace for more info) thread 'rustc' (142190) panicked at /rustc-dev/cc3eee7fbe17ea4b7238531cb97e1b7b8bd6afce/compiler/rustc_proc_macro/../../library/proc_macro/src/bridge/handle.rs:73:19: use-after-free in `proc_macro` handle stack backtrace: 0: 0x7ffff4c5e473 - <<std[cbf56a46dac989f5]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[a3424aac13c77cf6]::fmt::Display>::fmt 1: 0x7ffff5211d88 - core[a3424aac13c77cf6]::fmt::write 2: 0x7ffff4c74de6 - <std[cbf56a46dac989f5]::sys::stdio::unix::Stderr as std[cbf56a46dac989f5]::io::Write>::write_fmt 3: 0x7ffff4c34def - std[cbf56a46dac989f5]::panicking::default_hook::{closure#0} 4: 0x7ffff4c545a0 - std[cbf56a46dac989f5]::panicking::default_hook 5: 0x7ffff3cbf737 - std[cbf56a46dac989f5]::panicking::update_hook::<alloc[9fa3fef380221c31]::boxed::Box<rustc_driver_impl[9601b55f30d2923c]::install_ice_hook::{closure#1}>>::{closure#0} 6: 0x7ffff4c54882 - std[cbf56a46dac989f5]::panicking::panic_with_hook 7: 0x7ffff4c34f48 - std[cbf56a46dac989f5]::panicking::panic_handler::{closure#0} 8: 0x7ffff4c2bfc9 - std[cbf56a46dac989f5]::sys::backtrace::__rust_end_short_backtrace::<std[cbf56a46dac989f5]::panicking::panic_handler::{closure#0}, !> 9: 0x7ffff4c36a9d - __rustc[f3f8441e4970532f]::rust_begin_unwind 10: 0x7ffff1f9526c - core[a3424aac13c77cf6]::panicking::panic_fmt 11: 0x7ffff260c7c4 - core[a3424aac13c77cf6]::option::expect_failed 12: 0x7ffff3d7e7ec - <rustc_proc_macro[396dcc20919f0e14]::bridge::TokenTree<rustc_proc_macro[396dcc20919f0e14]::bridge::Marked<rustc_ast[ef2e9f90390c76f5]::tokenstream::TokenStream, rustc_proc_macro[396dcc20919f0e14]::bridge::client::TokenStream>, rustc_proc_macro[396dcc20919f0e14]::bridge::Marked<rustc_span[577032adbb3e2bdb]::span_encoding::Span, rustc_proc_macro[396dcc20919f0e14]::bridge::client::Span>, rustc_proc_macro[396dcc20919f0e14]::bridge::Marked<rustc_span[577032adbb3e2bdb]::symbol::Symbol, rustc_proc_macro[396dcc20919f0e14]::bridge::symbol::Symbol>> as rustc_proc_macro[396dcc20919f0e14]::bridge::rpc::Decode<rustc_proc_macro[396dcc20919f0e14]::bridge::server::HandleStore<rustc_proc_macro[396dcc20919f0e14]::bridge::server::MarkedTypes<rustc_expand[b07ac48910fdba03]::proc_macro_server::Rustc>>>>::decode 13: 0x7ffff610ad90 - <rustc_proc_macro[396dcc20919f0e14]::bridge::server::Dispatcher<rustc_proc_macro[396dcc20919f0e14]::bridge::server::MarkedTypes<rustc_expand[b07ac48910fdba03]::proc_macro_server::Rustc>> as rustc_proc_macro[396dcc20919f0e14]::bridge::server::DispatcherTrait>::dispatch 14: 0x7ffff6107fb0 - <rustc_proc_macro[396dcc20919f0e14]::bridge::closure::Closure<_, _> as core[a3424aac13c77cf6]::convert::From<&mut _>>::from::call::<rustc_proc_macro[396dcc20919f0e14]::bridge::buffer::Buffer, rustc_proc_macro[396dcc20919f0e14]::bridge::buffer::Buffer, <rustc_proc_macro[396dcc20919f0e14]::bridge::server::SameThread as rustc_proc_macro[396dcc20919f0e14]::bridge::server::ExecutionStrategy>::run_bridge_and_client<rustc_proc_macro[396dcc20919f0e14]::bridge::server::Dispatcher<rustc_proc_macro[396dcc20919f0e14]::bridge::server::MarkedTypes<rustc_expand[b07ac48910fdba03]::proc_macro_server::Rustc>>>::{closure#0}> 15: 0x7fffe531dd67 - <proc_macro[f63ca3dfe5772356]::bridge::closure::Closure<proc_macro[f63ca3dfe5772356]::bridge::buffer::Buffer, proc_macro[f63ca3dfe5772356]::bridge::buffer::Buffer>>::call at /rustc/cc3eee7fbe17ea4b7238531cb97e1b7b8bd6afce/library/proc_macro/src/bridge/closure.rs:28:18 16: 0x7fffe531dd67 - <proc_macro[f63ca3dfe5772356]::bridge::client::TokenStream>::from_token_tree::{closure#0} at /rustc/cc3eee7fbe17ea4b7238531cb97e1b7b8bd6afce/library/proc_macro/src/bridge/client.rs:144:43 17: 0x7fffe531dd67 - <proc_macro[f63ca3dfe5772356]::bridge::client::Bridge>::with::<proc_macro[f63ca3dfe5772356]::bridge::client::TokenStream, <proc_macro[f63ca3dfe5772356]::bridge::client::TokenStream>::from_token_tree::{closure#0}>::{closure#0} at /rustc/cc3eee7fbe17ea4b7238531cb97e1b7b8bd6afce/library/proc_macro/src/bridge/client.rs:222:13 18: 0x7fffe531dd67 - proc_macro[f63ca3dfe5772356]::bridge::client::state::with::<proc_macro[f63ca3dfe5772356]::bridge::client::TokenStream, <proc_macro[f63ca3dfe5772356]::bridge::client::Bridge>::with<proc_macro[f63ca3dfe5772356]::bridge::client::TokenStream, <proc_macro[f63ca3dfe5772356]::bridge::client::TokenStream>::from_token_tree::{closure#0}>::{closure#0}> at /rustc/cc3eee7fbe17ea4b7238531cb97e1b7b8bd6afce/library/proc_macro/src/bridge/client.rs:211:9 19: 0x7fffe531dd67 - <proc_macro[f63ca3dfe5772356]::bridge::client::Bridge>::with::<proc_macro[f63ca3dfe5772356]::bridge::client::TokenStream, <proc_macro[f63ca3dfe5772356]::bridge::client::TokenStream>::from_token_tree::{closure#0}> at /rustc/cc3eee7fbe17ea4b7238531cb97e1b7b8bd6afce/library/proc_macro/src/bridge/client.rs:217:9 20: 0x7fffe531dd67 - <proc_macro[f63ca3dfe5772356]::bridge::client::TokenStream>::from_token_tree at /rustc/cc3eee7fbe17ea4b7238531cb97e1b7b8bd6afce/library/proc_macro/src/bridge/client.rs:137:17 21: 0x7fffe531dd67 - <proc_macro[f63ca3dfe5772356]::TokenStream as core[a3424aac13c77cf6]::convert::From<proc_macro[f63ca3dfe5772356]::TokenTree>>::from at /rustc/cc3eee7fbe17ea4b7238531cb97e1b7b8bd6afce/library/proc_macro/src/lib.rs:257:26 22: 0x7fffe5310690 - <proc_macro2[f2e3d13f49dc920e]::imp::TokenStream as core[a3424aac13c77cf6]::convert::From<proc_macro2[f2e3d13f49dc920e]::TokenTree>>::from 23: 0x7fffe5314021 - <proc_macro2[f2e3d13f49dc920e]::TokenStream as core[a3424aac13c77cf6]::convert::From<proc_macro2[f2e3d13f49dc920e]::TokenTree>>::from 24: 0x7fffe530aa2b - <syn[83b5691fa31d6ac]::error::ErrorMessage>::to_compile_error 25: 0x7fffe530a60a - <syn[83b5691fa31d6ac]::error::Error>::to_compile_error 26: 0x7fffe5307cf2 - minimal_ice_macro[4567a4db178e6784]::trigger_ice 27: 0x7fffe53091ee - <minimal_ice_macro[4567a4db178e6784]::trigger_ice as core[a3424aac13c77cf6]::ops::function::Fn<(proc_macro[f63ca3dfe5772356]::TokenStream,)>>::call 28: 0x7fffe53089f6 - <proc_macro[f63ca3dfe5772356]::bridge::client::Client<proc_macro[f63ca3dfe5772356]::TokenStream, proc_macro[f63ca3dfe5772356]::TokenStream>>::expand1::<minimal_ice_macro[4567a4db178e6784]::trigger_ice>::{closure#0}::{closure#0} 29: 0x7fffe5308a06 - proc_macro[f63ca3dfe5772356]::bridge::client::run_client::<proc_macro[f63ca3dfe5772356]::bridge::client::TokenStream, core[a3424aac13c77cf6]::option::Option<proc_macro[f63ca3dfe5772356]::bridge::client::TokenStream>, <proc_macro[f63ca3dfe5772356]::bridge::client::Client<proc_macro[f63ca3dfe5772356]::TokenStream, proc_macro[f63ca3dfe5772356]::TokenStream>>::expand1<minimal_ice_macro[4567a4db178e6784]::trigger_ice>::{closure#0}::{closure#0}>::{closure#0}::{closure#0} 30: 0x7fffe5308161 - proc_macro[f63ca3dfe5772356]::bridge::client::state::set::<core[a3424aac13c77cf6]::option::Option<proc_macro[f63ca3dfe5772356]::bridge::client::TokenStream>, proc_macro[f63ca3dfe5772356]::bridge::client::run_client<proc_macro[f63ca3dfe5772356]::bridge::client::TokenStream, core[a3424aac13c77cf6]::option::Option<proc_macro[f63ca3dfe5772356]::bridge::client::TokenStream>, <proc_macro[f63ca3dfe5772356]::bridge::client::Client<proc_macro[f63ca3dfe5772356]::TokenStream, proc_macro[f63ca3dfe5772356]::TokenStream>>::expand1<minimal_ice_macro[4567a4db178e6784]::trigger_ice>::{closure#0}::{closure#0}>::{closure#0}::{closure#0}> 31: 0x7fffe530886e - proc_macro[f63ca3dfe5772356]::bridge::client::run_client::<proc_macro[f63ca3dfe5772356]::bridge::client::TokenStream, core[a3424aac13c77cf6]::option::Option<proc_macro[f63ca3dfe5772356]::bridge::client::TokenStream>, <proc_macro[f63ca3dfe5772356]::bridge::client::Client<proc_macro[f63ca3dfe5772356]::TokenStream, proc_macro[f63ca3dfe5772356]::TokenStream>>::expand1<minimal_ice_macro[4567a4db178e6784]::trigger_ice>::{closure#0}::{closure#0}>::{closure#0} 32: 0x7fffe53094e0 - <core[a3424aac13c77cf6]::panic::unwind_safe::AssertUnwindSafe<proc_macro[f63ca3dfe5772356]::bridge::client::run_client<proc_macro[f63ca3dfe5772356]::bridge::client::TokenStream, core[a3424aac13c77cf6]::option::Option<proc_macro[f63ca3dfe5772356]::bridge::client::TokenStream>, <proc_macro[f63ca3dfe5772356]::bridge::client::Client<proc_macro[f63ca3dfe5772356]::TokenStream, proc_macro[f63ca3dfe5772356]::TokenStream>>::expand1<minimal_ice_macro[4567a4db178e6784]::trigger_ice>::{closure#0}::{closure#0}>::{closure#0}> as core[a3424aac13c77cf6]::ops::function::FnOnce<()>>::call_once 33: 0x7fffe530830c - std[cbf56a46dac989f5]::panicking::catch_unwind::do_call::<core[a3424aac13c77cf6]::panic::unwind_safe::AssertUnwindSafe<proc_macro[f63ca3dfe5772356]::bridge::client::run_client<proc_macro[f63ca3dfe5772356]::bridge::client::TokenStream, core[a3424aac13c77cf6]::option::Option<proc_macro[f63ca3dfe5772356]::bridge::client::TokenStream>, <proc_macro[f63ca3dfe5772356]::bridge::client::Client<proc_macro[f63ca3dfe5772356]::TokenStream, proc_macro[f63ca3dfe5772356]::TokenStream>>::expand1<minimal_ice_macro[4567a4db178e6784]::trigger_ice>::{closure#0}::{closure#0}>::{closure#0}>, ()> 34: 0x7fffe5308a7b - __rust_try 35: 0x7fffe5308453 - proc_macro[f63ca3dfe5772356]::bridge::client::run_client::<proc_macro[f63ca3dfe5772356]::bridge::client::TokenStream, core[a3424aac13c77cf6]::option::Option<proc_macro[f63ca3dfe5772356]::bridge::client::TokenStream>, <proc_macro[f63ca3dfe5772356]::bridge::client::Client<proc_macro[f63ca3dfe5772356]::TokenStream, proc_macro[f63ca3dfe5772356]::TokenStream>>::expand1<minimal_ice_macro[4567a4db178e6784]::trigger_ice>::{closure#0}::{closure#0}> 36: 0x7fffe530860e - <proc_macro[f63ca3dfe5772356]::bridge::client::Client<proc_macro[f63ca3dfe5772356]::TokenStream, proc_macro[f63ca3dfe5772356]::TokenStream>>::expand1::<minimal_ice_macro[4567a4db178e6784]::trigger_ice>::{closure#0} 37: 0x7fffe5309802 - proc_macro[f63ca3dfe5772356]::bridge::selfless_reify::reify_to_extern_c_fn_hrt_bridge::wrapper::<proc_macro[f63ca3dfe5772356]::bridge::buffer::Buffer, <proc_macro[f63ca3dfe5772356]::bridge::client::Client<proc_macro[f63ca3dfe5772356]::TokenStream, proc_macro[f63ca3dfe5772356]::TokenStream>>::expand1<minimal_ice_macro[4567a4db178e6784]::trigger_ice>::{closure#0}> 38: 0x7ffff5edb501 - <rustc_proc_macro[396dcc20919f0e14]::bridge::server::MaybeCrossThread<rustc_expand[b07ac48910fdba03]::proc_macro::MessagePipe<rustc_proc_macro[396dcc20919f0e14]::bridge::buffer::Buffer>> as rustc_proc_macro[396dcc20919f0e14]::bridge::server::ExecutionStrategy>::run_bridge_and_client::<rustc_proc_macro[396dcc20919f0e14]::bridge::server::Dispatcher<rustc_proc_macro[396dcc20919f0e14]::bridge::server::MarkedTypes<rustc_expand[b07ac48910fdba03]::proc_macro_server::Rustc>>> 39: 0x7ffff5edb224 - <rustc_proc_macro[396dcc20919f0e14]::bridge::client::Client<rustc_proc_macro[396dcc20919f0e14]::TokenStream, rustc_proc_macro[396dcc20919f0e14]::TokenStream>>::run::<rustc_expand[b07ac48910fdba03]::proc_macro_server::Rustc, rustc_proc_macro[396dcc20919f0e14]::bridge::server::MaybeCrossThread<rustc_expand[b07ac48910fdba03]::proc_macro::MessagePipe<rustc_proc_macro[396dcc20919f0e14]::bridge::buffer::Buffer>>> 40: 0x7ffff5ed9077 - <rustc_expand[b07ac48910fdba03]::proc_macro::BangProcMacro as rustc_expand[b07ac48910fdba03]::base::BangProcMacro>::expand 41: 0x7ffff66633e1 - <rustc_expand[b07ac48910fdba03]::expand::MacroExpander>::fully_expand_fragment 42: 0x7ffff662b20e - <rustc_expand[b07ac48910fdba03]::expand::MacroExpander>::expand_crate 43: 0x7ffff5c8303c - rustc_interface[4796e4db9508b896]::passes::configure_and_expand 44: 0x7ffff6357f15 - rustc_interface[4796e4db9508b896]::passes::resolver_for_lowering_raw 45: 0x7ffff6357c8d - rustc_query_impl[48c5202159a19ef7]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[48c5202159a19ef7]::query_impl::resolver_for_lowering_raw::dynamic_query::{closure#2}::{closure#0}, rustc_middle[e9d0f7e844f3166b]::query::erase::Erased<[u8; 16usize]>> 46: 0x7ffff6357c67 - <rustc_query_impl[48c5202159a19ef7]::query_impl::resolver_for_lowering_raw::dynamic_query::{closure#2} as core[a3424aac13c77cf6]::ops::function::FnOnce<(rustc_middle[e9d0f7e844f3166b]::ty::context::TyCtxt, ())>>::call_once 47: 0x7ffff66d3bd1 - rustc_query_system[3f0601432c754995]::query::plumbing::try_execute_query::<rustc_query_impl[48c5202159a19ef7]::DynamicConfig<rustc_query_system[3f0601432c754995]::query::caches::SingleCache<rustc_middle[e9d0f7e844f3166b]::query::erase::Erased<[u8; 16usize]>>, false, false, false>, rustc_query_impl[48c5202159a19ef7]::plumbing::QueryCtxt, true> 48: 0x7ffff66d35c1 - rustc_query_impl[48c5202159a19ef7]::query_impl::resolver_for_lowering_raw::get_query_incr::__rust_end_short_backtrace 49: 0x7ffff64bcdfa - <rustc_interface[4796e4db9508b896]::passes::create_and_enter_global_ctxt<core[a3424aac13c77cf6]::option::Option<rustc_interface[4796e4db9508b896]::queries::Linker>, rustc_driver_impl[9601b55f30d2923c]::run_compiler::{closure#0}::{closure#2}>::{closure#2} as core[a3424aac13c77cf6]::ops::function::FnOnce<(&rustc_session[8beb91a8b00f9da9]::session::Session, rustc_middle[e9d0f7e844f3166b]::ty::context::CurrentGcx, alloc[9fa3fef380221c31]::sync::Arc<rustc_data_structures[22be9c18f5b496a9]::jobserver::Proxy>, &std[cbf56a46dac989f5]::sync::once_lock::OnceLock<rustc_middle[e9d0f7e844f3166b]::ty::context::GlobalCtxt>, &rustc_data_structures[22be9c18f5b496a9]::sync::worker_local::WorkerLocal<rustc_middle[e9d0f7e844f3166b]::arena::Arena>, &rustc_data_structures[22be9c18f5b496a9]::sync::worker_local::WorkerLocal<rustc_hir[bb83e21edf5dc5d8]::Arena>, rustc_driver_impl[9601b55f30d2923c]::run_compiler::{closure#0}::{closure#2})>>::call_once::{shim:vtable#0} 50: 0x7ffff6304e45 - rustc_interface[4796e4db9508b896]::interface::run_compiler::<(), rustc_driver_impl[9601b55f30d2923c]::run_compiler::{closure#0}>::{closure#1} 51: 0x7ffff62da44a - std[cbf56a46dac989f5]::sys::backtrace::__rust_begin_short_backtrace::<rustc_interface[4796e4db9508b896]::util::run_in_thread_with_globals<rustc_interface[4796e4db9508b896]::util::run_in_thread_pool_with_globals<rustc_interface[4796e4db9508b896]::interface::run_compiler<(), rustc_driver_impl[9601b55f30d2923c]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()> 52: 0x7ffff62da154 - <<std[cbf56a46dac989f5]::thread::Builder>::spawn_unchecked_<rustc_interface[4796e4db9508b896]::util::run_in_thread_with_globals<rustc_interface[4796e4db9508b896]::util::run_in_thread_pool_with_globals<rustc_interface[4796e4db9508b896]::interface::run_compiler<(), rustc_driver_impl[9601b55f30d2923c]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>::{closure#1} as core[a3424aac13c77cf6]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0} 53: 0x7ffff62d7bef - <std[cbf56a46dac989f5]::sys::thread::unix::Thread>::new::thread_start 54: 0x7fffefe9a97a - start_thread 55: 0x7fffeff22d2c - __GI___clone3 56: 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 `/home/muki/Git/mookums/minimal_ice/rustc-ice-2025-11-29T22_14_05-142188.txt` to your bug report note: compiler flags: --crate-type bin -C embed-bitcode=no -C debuginfo=2 -C incremental=[REDACTED] note: some of the compiler flags provided by cargo are hidden query stack during panic: #0 [resolver_for_lowering_raw] getting the resolver for lowering end of query stack error: proc macro panicked --> minimal_ice/src/main.rs:8:5 | 8 | trigger_ice!(); | ^^^^^^^^^^^^^^ | = help: message: use-after-free in `proc_macro` handle error: could not compile `minimal_ice` (bin "minimal_ice") due to 2 previous errors 

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-proc-macrosArea: Procedural macrosC-bugCategory: This is a bug.I-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️S-has-mcveStatus: A Minimal Complete and Verifiable Example has been found for this issueT-compilerRelevant to the compiler team, which will review and decide on the PR/issue.needs-triageThis issue may need triage. Remove it if it has been sufficiently triaged.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions