-
Notifications
You must be signed in to change notification settings - Fork 14k
Open
Labels
C-bugCategory: This is a bug.Category: This is a bug.F-associated_const_equality`#![feature(associated_const_equality)]``#![feature(associated_const_equality)]`I-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.Relevant to the compiler team, which will review and decide on the PR/issue.
Description
Code
#![cfg_attr(not(test), no_std)]
#![feature(generic_const_exprs)]
#![feature(associated_const_equality)]
#![allow(incomplete_features)]
use core::fmt::{self, Write};
type Pixel = Option<char>;
pub struct Canvas<const WIDTH: usize, const HEIGHT: usize>(pub [[Pixel; WIDTH]; HEIGHT]);
impl<const WIDTH: usize, const HEIGHT: usize> Canvas<WIDTH, HEIGHT> {
pub fn new(pixel: Pixel) -> Self {
Self([[pixel; WIDTH]; HEIGHT])
}
}
impl<const WIDTH: usize, const HEIGHT: usize> Default for Canvas<WIDTH, HEIGHT> {
fn default() -> Self {
Self::new(None)
}
}
impl<const WIDTH: usize, const HEIGHT: usize> fmt::Display for Canvas<WIDTH, HEIGHT> {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
for row in &self.0 {
for pixel in row {
f.write_char(pixel.unwrap_or(' '))?;
}
f.write_char('\n')?;
}
Ok(())
}
}
trait Widget {
const WIDTH: usize;
const HEIGHT: usize;
fn render(&mut self) -> Canvas<{ Self::WIDTH }, { Self::HEIGHT }>;
}
pub struct Box<const WIDTH: usize, const HEIGHT: usize, T> {
border: Pixel,
inner: T,
}
impl<const WIDTH: usize, const HEIGHT: usize, T> Box<WIDTH, HEIGHT, T> {
pub fn new(inner: T) -> Self
where
T: Widget<WIDTH = { WIDTH - 2 }, HEIGHT = { HEIGHT - 2 }>,
{
Self {
border: Pixel::default(),
inner,
}
}
fn empty<const X: usize, const Y: usize>() -> Box<X, Y, Empty<{ X - 2 }, { Y - 2 }>> {
Box::new(Empty)
}
}
pub struct Empty<const WIDTH: usize, const HEIGHT: usize>;
impl<const WIDTH: usize, const HEIGHT: usize> Widget for Empty<WIDTH, HEIGHT> {
const WIDTH: usize = WIDTH;
const HEIGHT: usize = HEIGHT;
fn render(&mut self) -> Canvas<{ Self::WIDTH }, { Self::HEIGHT }> {
Canvas::default()
}
}
pub struct HBox<const WIDTH: usize, const HEIGHT: usize, T> {
inner: T,
}
impl<const WIDTH: usize, const HEIGHT: usize, T> HBox<WIDTH, HEIGHT, T> {
fn new(inner: T) -> Self
where
T: HContainer<WIDTH, HEIGHT>,
{
Self { inner }
}
}
impl<const WIDTH: usize, const HEIGHT: usize, T> Widget for HBox<WIDTH, HEIGHT, T> {
const WIDTH: usize = WIDTH;
const HEIGHT: usize = HEIGHT;
fn render(&mut self) -> Canvas<{ Self::WIDTH }, { Self::HEIGHT }> {
let mut canvas = Canvas::default();
canvas
}
}
trait HContainer<const WIDTH: usize, const HEIGHT: usize> {}
impl<const WIDTH: usize, const HEIGHT: usize, T, S> HContainer<WIDTH, HEIGHT> for (T, S)
where
T: Widget,
S: Widget,
{
}
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn test_foo() {
let w = HBox::<20, 4, _>::new((
Box::<9, 2, _>::new(Empty::<7, 0>).border(Some('#')),
Box::<9, 2, _>::new(Empty::<7, 0>).border(Some('#')),
));
println!("{}", w.render());
panic!();
}
}Rust Playground: https://play.rust-lang.org/?version=stable&mode=debug&edition=2024&gist=74d2f4fea3063d734092cc9355836b46
Meta
rustc --version --verbose:
rustc 1.91.0-nightly (69b76df90 2025-08-23)
This also happens on stable:
rustc +stable --version --verbose:
rustc 1.89.0 (29483883e 2025-08-04)
Error output
See also the Playground (running Test with either nightly or stable):
thread 'rustc' panicked at /rustc-dev/29483883eed69d5fb4db01964cdf2af4d86e9cb2/compiler/rustc_type_ir/src/binder.rs:753:9:
type parameter `T/#2` (T/#2/2) out of range when instantiating, args=[?8c, ?9c]
stack backtrace:
thread 'rustc' panicked at /rustc-dev/29483883eed69d5fb4db01964cdf2af4d86e9cb2/compiler/rustc_type_ir/src/binder.rs:753:9:
type parameter `T/#2` (T/#2/2) out of range when instantiating, args=[?8c, ?9c]
stack backtrace:
0: 0x7434ec4d8203 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hf435e8e9347709a8
1: 0x7434ecc02bff - core::fmt::write::h0a51fad3804c5e7c
2: 0x7434ee0d1591 - std::io::Write::write_fmt::h9759e4151bf4a45e
3: 0x7434ec4d8062 - std::sys::backtrace::BacktraceLock::print::h1ec5ce5bb8ee285e
4: 0x7434ec4dbb5a - std::panicking::default_hook::{{closure}}::h5ffefe997a3c75e4
5: 0x7434ec4db6df - std::panicking::default_hook::h820c77ba0601d6bb
6: 0x7434eb5c9103 - std[da76efc55aba569b]::panicking::update_hook::<alloc[679dddab44c6194d]::boxed::Box<rustc_driver_impl[aa7064ecaea87566]::install_ice_hook::{closure#1}>>::{closure#0}
7: 0x7434ec4dc3ab - std::panicking::rust_panic_with_hook::h8b29cbe181d50030
8: 0x7434ec4dc0aa - std::panicking::begin_panic_handler::{{closure}}::h9f5b6f6dc6fde83e
9: 0x7434ec4d86d9 - std::sys::backtrace::__rust_end_short_backtrace::hd7b0c344383b0b61
10: 0x7434ec4dbd8d - __rustc[5224e6b81cd82a8f]::rust_begin_unwind
11: 0x7434e8c91480 - core::panicking::panic_fmt::hc49fc28484033487
12: 0x7434ebb517f9 - <rustc_type_ir[f5f28a7ad4569220]::binder::ArgFolder<rustc_middle[e0a019250b2560b5]::ty::context::TyCtxt>>::type_param_out_of_range
13: 0x7434ecd4fa67 - <rustc_type_ir[f5f28a7ad4569220]::binder::ArgFolder<rustc_middle[e0a019250b2560b5]::ty::context::TyCtxt> as rustc_type_ir[f5f28a7ad4569220]::fold::TypeFolder<rustc_middle[e0a019250b2560b5]::ty::context::TyCtxt>>::fold_ty
14: 0x7434ecd4b8cf - <&rustc_middle[e0a019250b2560b5]::ty::list::RawList<(), rustc_middle[e0a019250b2560b5]::ty::generic_args::GenericArg> as rustc_type_ir[f5f28a7ad4569220]::fold::TypeFoldable<rustc_middle[e0a019250b2560b5]::ty::context::TyCtxt>>::fold_with::<rustc_type_ir[f5f28a7ad4569220]::binder::ArgFolder<rustc_middle[e0a019250b2560b5]::ty::context::TyCtxt>>
15: 0x7434ecd4f5f0 - <rustc_type_ir[f5f28a7ad4569220]::binder::ArgFolder<rustc_middle[e0a019250b2560b5]::ty::context::TyCtxt> as rustc_type_ir[f5f28a7ad4569220]::fold::TypeFolder<rustc_middle[e0a019250b2560b5]::ty::context::TyCtxt>>::fold_ty
16: 0x7434ecd4b2ce - <&rustc_middle[e0a019250b2560b5]::ty::list::RawList<(), rustc_middle[e0a019250b2560b5]::ty::generic_args::GenericArg> as rustc_type_ir[f5f28a7ad4569220]::fold::TypeFoldable<rustc_middle[e0a019250b2560b5]::ty::context::TyCtxt>>::fold_with::<rustc_type_ir[f5f28a7ad4569220]::binder::ArgFolder<rustc_middle[e0a019250b2560b5]::ty::context::TyCtxt>>
17: 0x7434edb66d63 - <rustc_type_ir[f5f28a7ad4569220]::binder::ArgFolder<rustc_middle[e0a019250b2560b5]::ty::context::TyCtxt> as rustc_type_ir[f5f28a7ad4569220]::fold::TypeFolder<rustc_middle[e0a019250b2560b5]::ty::context::TyCtxt>>::fold_const
18: 0x7434ecec96cf - rustc_trait_selection[42934b2ac3511e78]::traits::project::confirm_candidate
19: 0x7434ecebb45c - rustc_trait_selection[42934b2ac3511e78]::traits::project::opt_normalize_projection_term
20: 0x7434ed5dd442 - <rustc_trait_selection[42934b2ac3511e78]::traits::fulfill::FulfillProcessor as rustc_data_structures[f798075dc9c9ee18]::obligation_forest::ObligationProcessor>::process_obligation
21: 0x7434ecc05942 - <rustc_data_structures[f798075dc9c9ee18]::obligation_forest::ObligationForest<rustc_trait_selection[42934b2ac3511e78]::traits::fulfill::PendingPredicateObligation>>::process_obligations::<rustc_trait_selection[42934b2ac3511e78]::traits::fulfill::FulfillProcessor>
22: 0x7434eccb8319 - <rustc_hir_typeck[f7b17b06701b8912]::fn_ctxt::FnCtxt>::check_expr_call
0: 0x7230e10d8203 - <std::sys::backtrace::BacktraceLock::print::DisplayBacktrace as core::fmt::Display>::fmt::hf435e8e9347709a8
1: 0x7230e1802bff - core::fmt::write::h0a51fad3804c5e7c
2: 0x7230e2cd1591 - std::io::Write::write_fmt::h9759e4151bf4a45e
3: 0x7230e10d8062 - std::sys::backtrace::BacktraceLock::print::h1ec5ce5bb8ee285e
4: 0x7230e10dbb5a - std::panicking::default_hook::{{closure}}::h5ffefe997a3c75e4
23: 0x7434ed655ad3 - <rustc_hir_typeck[f7b17b06701b8912]::fn_ctxt::FnCtxt>::check_expr_with_expectation_and_args
5: 0x7230e10db6df - std::panicking::default_hook::h820c77ba0601d6bb
6: 0x7230e01c9103 - std[da76efc55aba569b]::panicking::update_hook::<alloc[679dddab44c6194d]::boxed::Box<rustc_driver_impl[aa7064ecaea87566]::install_ice_hook::{closure#1}>>::{closure#0}
7: 0x7230e10dc3ab - std::panicking::rust_panic_with_hook::h8b29cbe181d50030
8: 0x7230e10dc0aa - std::panicking::begin_panic_handler::{{closure}}::h9f5b6f6dc6fde83e
9: 0x7230e10d86d9 - std::sys::backtrace::__rust_end_short_backtrace::hd7b0c344383b0b61
10: 0x7230e10dbd8d - __rustc[5224e6b81cd82a8f]::rust_begin_unwind
11: 0x7230dd891480 - core::panicking::panic_fmt::hc49fc28484033487
12: 0x7230e07517f9 - <rustc_type_ir[f5f28a7ad4569220]::binder::ArgFolder<rustc_middle[e0a019250b2560b5]::ty::context::TyCtxt>>::type_param_out_of_range
13: 0x7230e194fa67 - <rustc_type_ir[f5f28a7ad4569220]::binder::ArgFolder<rustc_middle[e0a019250b2560b5]::ty::context::TyCtxt> as rustc_type_ir[f5f28a7ad4569220]::fold::TypeFolder<rustc_middle[e0a019250b2560b5]::ty::context::TyCtxt>>::fold_ty
14: 0x7230e194b8cf - <&rustc_middle[e0a019250b2560b5]::ty::list::RawList<(), rustc_middle[e0a019250b2560b5]::ty::generic_args::GenericArg> as rustc_type_ir[f5f28a7ad4569220]::fold::TypeFoldable<rustc_middle[e0a019250b2560b5]::ty::context::TyCtxt>>::fold_with::<rustc_type_ir[f5f28a7ad4569220]::binder::ArgFolder<rustc_middle[e0a019250b2560b5]::ty::context::TyCtxt>>
15: 0x7230e194f5f0 - <rustc_type_ir[f5f28a7ad4569220]::binder::ArgFolder<rustc_middle[e0a019250b2560b5]::ty::context::TyCtxt> as rustc_type_ir[f5f28a7ad4569220]::fold::TypeFolder<rustc_middle[e0a019250b2560b5]::ty::context::TyCtxt>>::fold_ty
16: 0x7230e194b2ce - <&rustc_middle[e0a019250b2560b5]::ty::list::RawList<(), rustc_middle[e0a019250b2560b5]::ty::generic_args::GenericArg> as rustc_type_ir[f5f28a7ad4569220]::fold::TypeFoldable<rustc_middle[e0a019250b2560b5]::ty::context::TyCtxt>>::fold_with::<rustc_type_ir[f5f28a7ad4569220]::binder::ArgFolder<rustc_middle[e0a019250b2560b5]::ty::context::TyCtxt>>
17: 0x7230e2766d63 - <rustc_type_ir[f5f28a7ad4569220]::binder::ArgFolder<rustc_middle[e0a019250b2560b5]::ty::context::TyCtxt> as rustc_type_ir[f5f28a7ad4569220]::fold::TypeFolder<rustc_middle[e0a019250b2560b5]::ty::context::TyCtxt>>::fold_const
18: 0x7230e1ac96cf - rustc_trait_selection[42934b2ac3511e78]::traits::project::confirm_candidate
19: 0x7230e1abb45c - rustc_trait_selection[42934b2ac3511e78]::traits::project::opt_normalize_projection_term
20: 0x7230e21dd442 - <rustc_trait_selection[42934b2ac3511e78]::traits::fulfill::FulfillProcessor as rustc_data_structures[f798075dc9c9ee18]::obligation_forest::ObligationProcessor>::process_obligation
21: 0x7230e1805942 - <rustc_data_structures[f798075dc9c9ee18]::obligation_forest::ObligationForest<rustc_trait_selection[42934b2ac3511e78]::traits::fulfill::PendingPredicateObligation>>::process_obligations::<rustc_trait_selection[42934b2ac3511e78]::traits::fulfill::FulfillProcessor>
22: 0x7230e18b8319 - <rustc_hir_typeck[f7b17b06701b8912]::fn_ctxt::FnCtxt>::check_expr_call
23: 0x7230e2255ad3 - <rustc_hir_typeck[f7b17b06701b8912]::fn_ctxt::FnCtxt>::check_expr_with_expectation_and_args
24: 0x7230e223187d - <rustc_hir_typeck[f7b17b06701b8912]::fn_ctxt::FnCtxt>::check_expr_block
25: 0x7230e225600c - <rustc_hir_typeck[f7b17b06701b8912]::fn_ctxt::FnCtxt>::check_expr_with_expectation_and_args
26: 0x7230e223be2e - rustc_hir_typeck[f7b17b06701b8912]::check::check_fn
27: 0x7230e2a0244b - rustc_hir_typeck[f7b17b06701b8912]::typeck_with_inspect::{closure#0}
28: 0x7230e29eebb0 - rustc_query_impl[36e6800b9757404d]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[36e6800b9757404d]::query_impl::typeck::dynamic_query::{closure#2}::{closure#0}, rustc_middle[e0a019250b2560b5]::query::erase::Erased<[u8; 8usize]>>
24: 0x7434ed63187d - <rustc_hir_typeck[f7b17b06701b8912]::fn_ctxt::FnCtxt>::check_expr_block
25: 0x7434ed65600c - <rustc_hir_typeck[f7b17b06701b8912]::fn_ctxt::FnCtxt>::check_expr_with_expectation_and_args
26: 0x7434ed63be2e - rustc_hir_typeck[f7b17b06701b8912]::check::check_fn
27: 0x7434ede0244b - rustc_hir_typeck[f7b17b06701b8912]::typeck_with_inspect::{closure#0}
28: 0x7434eddeebb0 - rustc_query_impl[36e6800b9757404d]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[36e6800b9757404d]::query_impl::typeck::dynamic_query::{closure#2}::{closure#0}, rustc_middle[e0a019250b2560b5]::query::erase::Erased<[u8; 8usize]>>
29: 0x7434ece676ae - rustc_query_system[4eadbad177027a71]::query::plumbing::try_execute_query::<rustc_query_impl[36e6800b9757404d]::DynamicConfig<rustc_data_structures[f798075dc9c9ee18]::vec_cache::VecCache<rustc_span[93f6ac7b0b889bbe]::def_id::LocalDefId, rustc_middle[e0a019250b2560b5]::query::erase::Erased<[u8; 8usize]>, rustc_query_system[4eadbad177027a71]::dep_graph::graph::DepNodeIndex>, false, false, false>, rustc_query_impl[36e6800b9757404d]::plumbing::QueryCtxt, false>
30: 0x7434ece67049 - rustc_query_impl[36e6800b9757404d]::query_impl::typeck::get_query_non_incr::__rust_end_short_backtrace
31: 0x7434ece6f846 - rustc_hir_analysis[896fe3c446b223d6]::check_crate
32: 0x7434ed56ec59 - rustc_interface[5344109f4998426e]::passes::analysis
33: 0x7434ed56e875 - rustc_query_impl[36e6800b9757404d]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[36e6800b9757404d]::query_impl::analysis::dynamic_query::{closure#2}::{closure#0}, rustc_middle[e0a019250b2560b5]::query::erase::Erased<[u8; 0usize]>>
34: 0x7434edc6fbc8 - rustc_query_system[4eadbad177027a71]::query::plumbing::try_execute_query::<rustc_query_impl[36e6800b9757404d]::DynamicConfig<rustc_query_system[4eadbad177027a71]::query::caches::SingleCache<rustc_middle[e0a019250b2560b5]::query::erase::Erased<[u8; 0usize]>>, false, false, false>, rustc_query_impl[36e6800b9757404d]::plumbing::QueryCtxt, false>
35: 0x7434edc6f792 - rustc_query_impl[36e6800b9757404d]::query_impl::analysis::get_query_non_incr::__rust_end_short_backtrace
36: 0x7434ee047f16 - rustc_interface[5344109f4998426e]::passes::create_and_enter_global_ctxt::<core[4727a1a5e2f8bf41]::option::Option<rustc_interface[5344109f4998426e]::queries::Linker>, rustc_driver_impl[aa7064ecaea87566]::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}
37: 0x7434edeea125 - rustc_interface[5344109f4998426e]::interface::run_compiler::<(), rustc_driver_impl[aa7064ecaea87566]::run_compiler::{closure#0}>::{closure#1}
38: 0x7434ede366b8 - std[da76efc55aba569b]::sys::backtrace::__rust_begin_short_backtrace::<rustc_interface[5344109f4998426e]::util::run_in_thread_with_globals<rustc_interface[5344109f4998426e]::util::run_in_thread_pool_with_globals<rustc_interface[5344109f4998426e]::interface::run_compiler<(), rustc_driver_impl[aa7064ecaea87566]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>
39: 0x7434ede36396 - <<std[da76efc55aba569b]::thread::Builder>::spawn_unchecked_<rustc_interface[5344109f4998426e]::util::run_in_thread_with_globals<rustc_interface[5344109f4998426e]::util::run_in_thread_pool_with_globals<rustc_interface[5344109f4998426e]::interface::run_compiler<(), rustc_driver_impl[aa7064ecaea87566]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>::{closure#1} as core[4727a1a5e2f8bf41]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
29: 0x7230e1a676ae - rustc_query_system[4eadbad177027a71]::query::plumbing::try_execute_query::<rustc_query_impl[36e6800b9757404d]::DynamicConfig<rustc_data_structures[f798075dc9c9ee18]::vec_cache::VecCache<rustc_span[93f6ac7b0b889bbe]::def_id::LocalDefId, rustc_middle[e0a019250b2560b5]::query::erase::Erased<[u8; 8usize]>, rustc_query_system[4eadbad177027a71]::dep_graph::graph::DepNodeIndex>, false, false, false>, rustc_query_impl[36e6800b9757404d]::plumbing::QueryCtxt, false>
40: 0x7434ede3c385 - std::sys::pal::unix::thread::Thread::new::thread_start::h1ff51d6e85162efd
41: 0x7434e788aaa4 - <unknown>
30: 0x7230e1a67049 - rustc_query_impl[36e6800b9757404d]::query_impl::typeck::get_query_non_incr::__rust_end_short_backtrace
42: 0x7434e7917a34 - clone
31: 0x7230e1a6f846 - rustc_hir_analysis[896fe3c446b223d6]::check_crate
43: 0x0 - <unknown>
32: 0x7230e216ec59 - rustc_interface[5344109f4998426e]::passes::analysis
33: 0x7230e216e875 - rustc_query_impl[36e6800b9757404d]::plumbing::__rust_begin_short_backtrace::<rustc_query_impl[36e6800b9757404d]::query_impl::analysis::dynamic_query::{closure#2}::{closure#0}, rustc_middle[e0a019250b2560b5]::query::erase::Erased<[u8; 0usize]>>
34: 0x7230e286fbc8 - rustc_query_system[4eadbad177027a71]::query::plumbing::try_execute_query::<rustc_query_impl[36e6800b9757404d]::DynamicConfig<rustc_query_system[4eadbad177027a71]::query::caches::SingleCache<rustc_middle[e0a019250b2560b5]::query::erase::Erased<[u8; 0usize]>>, false, false, false>, rustc_query_impl[36e6800b9757404d]::plumbing::QueryCtxt, false>
35: 0x7230e286f792 - rustc_query_impl[36e6800b9757404d]::query_impl::analysis::get_query_non_incr::__rust_end_short_backtrace
36: 0x7230e2c47f16 - rustc_interface[5344109f4998426e]::passes::create_and_enter_global_ctxt::<core[4727a1a5e2f8bf41]::option::Option<rustc_interface[5344109f4998426e]::queries::Linker>, rustc_driver_impl[aa7064ecaea87566]::run_compiler::{closure#0}::{closure#2}>::{closure#2}::{closure#0}
37: 0x7230e2aea125 - rustc_interface[5344109f4998426e]::interface::run_compiler::<(), rustc_driver_impl[aa7064ecaea87566]::run_compiler::{closure#0}>::{closure#1}
38: 0x7230e2a366b8 - std[da76efc55aba569b]::sys::backtrace::__rust_begin_short_backtrace::<rustc_interface[5344109f4998426e]::util::run_in_thread_with_globals<rustc_interface[5344109f4998426e]::util::run_in_thread_pool_with_globals<rustc_interface[5344109f4998426e]::interface::run_compiler<(), rustc_driver_impl[aa7064ecaea87566]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>
39: 0x7230e2a36396 - <<std[da76efc55aba569b]::thread::Builder>::spawn_unchecked_<rustc_interface[5344109f4998426e]::util::run_in_thread_with_globals<rustc_interface[5344109f4998426e]::util::run_in_thread_pool_with_globals<rustc_interface[5344109f4998426e]::interface::run_compiler<(), rustc_driver_impl[aa7064ecaea87566]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>::{closure#1} as core[4727a1a5e2f8bf41]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
40: 0x7230e2a3c385 - std::sys::pal::unix::thread::Thread::new::thread_start::h1ff51d6e85162efd
41: 0x7230dc48aaa4 - <unknown>
42: 0x7230dc517a34 - clone
43: 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.89.0 (29483883e 2025-08-04) running on x86_64-unknown-linux-gnu
note: compiler flags: --crate-type lib -C embed-bitcode=no -C codegen-units=1 -C debuginfo=2
note: some of the compiler flags provided by cargo are hidden
query stack during panic:
#0 [typeck] type-checking `<impl at src/lib.rs:49:1: 49:71>::empty`
#1 [analysis] running analysis passes on this crate
end of query stack
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.89.0 (29483883e 2025-08-04) running on x86_64-unknown-linux-gnu
For more information about this error, try `rustc --explain E0554`.
note: compiler flags: -C embed-bitcode=no -C codegen-units=1 -C debuginfo=2
note: some of the compiler flags provided by cargo are hidden
query stack during panic:
#0 [typeck] type-checking `<impl at src/lib.rs:49:1: 49:71>::empty`
#1 [analysis] running analysis passes on this crate
end of query stack
Metadata
Metadata
Assignees
Labels
C-bugCategory: This is a bug.Category: This is a bug.F-associated_const_equality`#![feature(associated_const_equality)]``#![feature(associated_const_equality)]`I-ICEIssue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️Issue: The compiler panicked, giving an Internal Compilation Error (ICE) ❄️T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.Relevant to the compiler team, which will review and decide on the PR/issue.