-   Notifications  
You must be signed in to change notification settings  - Fork 13.9k
 
Open
Labels
C-bugCategory: This is a bug.Category: This is a bug.E-needs-testCall for participation: An issue has been fixed and does not reproduce, but no test has been added.Call for participation: An issue has been fixed and does not reproduce, but no test has been added.F-inherent_associated_types`#![feature(inherent_associated_types)]``#![feature(inherent_associated_types)]`F-min_generic_const_args`#![feature(min_generic_const_args)]``#![feature(min_generic_const_args)]`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
This is somewhat different from #138226
Code
#![feature(min_generic_const_args)] #![feature(inherent_associated_types)] pub struct Foo<A, B>(A, B); impl<A, B> Foo<A, B> { const FOUR: usize = 4; fn test() -> bool { [5; Self::FOUR] == [6; 0] } } fn main() {}Meta
rustc --version --verbose:
rustc 1.87.0-nightly (f5a1ef712 2025-03-07) binary: rustc commit-hash: f5a1ef7121ad661b5a21a1d02941c8064d54ee0b commit-date: 2025-03-07 host: x86_64-pc-windows-msvc release: 1.87.0-nightly LLVM version: 20.1.0 Error output
<output> Backtrace
warning: the feature `min_generic_const_args` is incomplete and may not be safe to use and/or cause compiler crashes --> .\ttt\test.rs:135:12 | 135 | #![feature(min_generic_const_args)] | ^^^^^^^^^^^^^^^^^^^^^^ | = note: see issue #132980 <https://github.com/rust-lang/rust/issues/132980> for more information = note: `#[warn(incomplete_features)]` on by default warning: the feature `inherent_associated_types` is incomplete and may not be safe to use and/or cause compiler crashes --> .\ttt\test.rs:136:12 | 136 | #![feature(inherent_associated_types)] | ^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: see issue #8995 <https://github.com/rust-lang/rust/issues/8995> for more information thread 'rustc' panicked at /rustc/f5a1ef7121ad661b5a21a1d02941c8064d54ee0b\compiler\rustc_type_ir\src\binder.rs:734:9: type parameter `B/#1` (B/#1/1) out of range when instantiating, args=[Foo<A/#0, B/#1>] stack backtrace: 0: 0x7ff835466c63 - std::backtrace_rs::backtrace::win64::trace at /rustc/f5a1ef7121ad661b5a21a1d02941c8064d54ee0b/library\std\src\..\..\backtrace\src\backtrace\win64.rs:85 1: 0x7ff835466c63 - std::backtrace_rs::backtrace::trace_unsynchronized at /rustc/f5a1ef7121ad661b5a21a1d02941c8064d54ee0b/library\std\src\..\..\backtrace\src\backtrace\mod.rs:66 2: 0x7ff835466c63 - std::sys::backtrace::_print_fmt at /rustc/f5a1ef7121ad661b5a21a1d02941c8064d54ee0b/library\std\src\sys\backtrace.rs:66 3: 0x7ff835466c63 - std::sys::backtrace::impl$0::print::impl$0::fmt at /rustc/f5a1ef7121ad661b5a21a1d02941c8064d54ee0b/library\std\src\sys\backtrace.rs:39 4: 0x7ff83549a02a - core::fmt::rt::Argument::fmt at /rustc/f5a1ef7121ad661b5a21a1d02941c8064d54ee0b/library\core\src\fmt\rt.rs:177 5: 0x7ff83549a02a - core::fmt::write at /rustc/f5a1ef7121ad661b5a21a1d02941c8064d54ee0b/library\core\src\fmt\mod.rs:1449 6: 0x7ff83545c9d7 - std::io::Write::write_fmt<std::sys::pal::windows::stdio::Stderr> at /rustc/f5a1ef7121ad661b5a21a1d02941c8064d54ee0b/library\std\src\io\mod.rs:1890 7: 0x7ff835466aa5 - std::sys::backtrace::BacktraceLock::print at /rustc/f5a1ef7121ad661b5a21a1d02941c8064d54ee0b/library\std\src\sys\backtrace.rs:42 8: 0x7ff83546ae19 - std::panicking::default_hook::closure$0 at /rustc/f5a1ef7121ad661b5a21a1d02941c8064d54ee0b/library\std\src\panicking.rs:298 9: 0x7ff83546ac08 - std::panicking::default_hook at /rustc/f5a1ef7121ad661b5a21a1d02941c8064d54ee0b/library\std\src\panicking.rs:325 10: 0x7ff8369ff347 - core[a49717954fd349d5]::slice::sort::unstable::heapsort::heapsort::<((rustc_lint_defs[c763add0498415dc]::Level, &str), usize), <((rustc_lint_defs[c763add0498415dc]::Level, &str), usize) as core[a49717954fd349d5]::cmp::PartialOrd>::lt> 11: 0x7ff83546baae - std::panicking::rust_panic_with_hook at /rustc/f5a1ef7121ad661b5a21a1d02941c8064d54ee0b/library\std\src\panicking.rs:839 12: 0x7ff83546b809 - std::panicking::begin_panic_handler::closure$0 at /rustc/f5a1ef7121ad661b5a21a1d02941c8064d54ee0b/library\std\src\panicking.rs:704 13: 0x7ff83546775f - std::sys::backtrace::__rust_end_short_backtrace<std::panicking::begin_panic_handler::closure_env$0,never$> at /rustc/f5a1ef7121ad661b5a21a1d02941c8064d54ee0b/library\std\src\sys\backtrace.rs:168 14: 0x7ff83546b40e - std::panicking::begin_panic_handler at /rustc/f5a1ef7121ad661b5a21a1d02941c8064d54ee0b/library\std\src\panicking.rs:695 15: 0x7ff8382c8bf1 - core::panicking::panic_fmt at /rustc/f5a1ef7121ad661b5a21a1d02941c8064d54ee0b/library\core\src\panicking.rs:75 16: 0x7ff837f85caa - <rustc_type_ir[589600bd6aed6b9b]::binder::ArgFolder<rustc_middle[a635f052194163b9]::ty::context::TyCtxt>>::type_param_out_of_range 17: 0x7ff8367f04f9 - <alloc[fd90ba3301162542]::sync::Arc<rustc_middle[a635f052194163b9]::traits::ObligationCauseCode>>::drop_slow 18: 0x7ff8368fbf8c - <rustc_middle[a635f052194163b9]::ty::context::TyCtxt>::mk_bound_variable_kinds 19: 0x7ff8368fc62a - <rustc_middle[a635f052194163b9]::ty::context::TyCtxt>::mk_bound_variable_kinds 20: 0x7ff83689b10f - <rustc_middle[a635f052194163b9]::ty::generics::GenericPredicates>::instantiate 21: 0x7ff83640c80f - rustc_trait_selection[70257543d9e64c63]::traits::wf::clause_obligations 22: 0x7ff836358614 - <rustc_trait_selection[70257543d9e64c63]::traits::wf::WfPredicates as rustc_type_ir[589600bd6aed6b9b]::visit::TypeVisitor<rustc_middle[a635f052194163b9]::ty::context::TyCtxt>>::visit_const 23: 0x7ff8363641c1 - <rustc_trait_selection[70257543d9e64c63]::traits::fulfill::FulfillProcessor as rustc_data_structures[b8e807b0329c5e35]::obligation_forest::ObligationProcessor>::process_obligation 24: 0x7ff8362c8f8b - <rustc_data_structures[b8e807b0329c5e35]::obligation_forest::ObligationForest<rustc_trait_selection[70257543d9e64c63]::traits::fulfill::PendingPredicateObligation>>::process_obligations::<rustc_trait_selection[70257543d9e64c63]::traits::fulfill::FulfillProcessor> 25: 0x7ff8356e93c1 - rustc_hir_typeck[5dfdb3193f74140]::typeck 26: 0x7ff835609d47 - <<rustc_hir_typeck[5dfdb3193f74140]::fn_ctxt::FnCtxt>::deduce_closure_signature_from_predicates::MentionsTy as rustc_type_ir[589600bd6aed6b9b]::visit::TypeVisitor<rustc_middle[a635f052194163b9]::ty::context::TyCtxt>>::visit_ty 27: 0x7ff835611839 - <<rustc_hir_typeck[5dfdb3193f74140]::fn_ctxt::FnCtxt>::deduce_closure_signature_from_predicates::MentionsTy as rustc_type_ir[589600bd6aed6b9b]::visit::TypeVisitor<rustc_middle[a635f052194163b9]::ty::context::TyCtxt>>::visit_ty 28: 0x7ff8356944cb - rustc_hir_typeck[5dfdb3193f74140]::method::probe::method_autoderef_steps 29: 0x7ff83560cf0d - <<rustc_hir_typeck[5dfdb3193f74140]::fn_ctxt::FnCtxt>::deduce_closure_signature_from_predicates::MentionsTy as rustc_type_ir[589600bd6aed6b9b]::visit::TypeVisitor<rustc_middle[a635f052194163b9]::ty::context::TyCtxt>>::visit_ty 30: 0x7ff83566cef3 - <<rustc_hir_typeck[5dfdb3193f74140]::fn_ctxt::FnCtxt>::deduce_closure_signature_from_predicates::MentionsTy as rustc_type_ir[589600bd6aed6b9b]::visit::TypeVisitor<rustc_middle[a635f052194163b9]::ty::context::TyCtxt>>::visit_ty 31: 0x7ff83560bdfd - <<rustc_hir_typeck[5dfdb3193f74140]::fn_ctxt::FnCtxt>::deduce_closure_signature_from_predicates::MentionsTy as rustc_type_ir[589600bd6aed6b9b]::visit::TypeVisitor<rustc_middle[a635f052194163b9]::ty::context::TyCtxt>>::visit_ty 32: 0x7ff8356c6a08 - rustc_hir_typeck[5dfdb3193f74140]::typeck 33: 0x7ff83570cdcd - <rustc_hir_typeck[5dfdb3193f74140]::upvar::InferBorrowKind as rustc_hir_typeck[5dfdb3193f74140]::expr_use_visitor::Delegate>::borrow 34: 0x7ff8356bfbbf - rustc_hir_typeck[5dfdb3193f74140]::typeck 35: 0x7ff83620ce7b - rustc_query_impl[b69aee932fe91357]::plumbing::query_key_hash_verify_all 36: 0x7ff836156051 - RINvNtNtCs9HWllMiJxcJ_18rustc_query_system5query8plumbing17try_execute_queryINtCsfG0cl2i4BMx_16rustc_query_impl13DynamicConfigINtNtCsfSfDFhv6ONJ_21rustc_data_structures9vec_cache8VecCacheNtNtCsc9bkXepKnRD_10rustc_span6def_id10LocalDefIdINtNtNtCsegJBPcicXKD 37: 0x7ff836215133 - rustc_query_impl[b69aee932fe91357]::plumbing::query_key_hash_verify_all 38: 0x7ff835733944 - RINvMs6_NtCs86fv54unOYr_9hashbrown3rawINtB6_8RawTablejE14reserve_rehashNCINvNtNtCsfxNsec2025j_8indexmap3map4core8get_hashTNtNtNtCsegJBPcicXKD_12rustc_middle2ty9predicate6ClauseNtNtCsc9bkXepKnRD_10rustc_span13span_encoding4SpanEuE0ECs6deNT1wm63v_18rustc_hir 39: 0x7ff8357baf71 - rustc_hir_analysis[485f70a961e5d363]::check_crate 40: 0x7ff8354e346f - rustc_interface[ee21df1734f8ab0f]::passes::resolver_for_lowering_raw 41: 0x7ff831e48479 - rustc_interface[ee21df1734f8ab0f]::passes::analysis 42: 0x7ff834fe6baa - <alloc[fd90ba3301162542]::sync::Arc<rustc_session[8146d5d0b944a82b]::config::OutputFilenames>>::drop_slow 43: 0x7ff834ef46a4 - RINvNtNtCs9HWllMiJxcJ_18rustc_query_system5query8plumbing17try_execute_queryINtCsfG0cl2i4BMx_16rustc_query_impl13DynamicConfigINtNtB4_6caches11SingleCacheINtNtNtCsegJBPcicXKD_12rustc_middle5query5erase6ErasedAhj0_EEKb0_KB3s_KB3s_ENtNtB1f_8plumbing9QueryCtx 44: 0x7ff834fec6a4 - rustc_query_impl[b69aee932fe91357]::query_system 45: 0x7ff831e0dcd2 - RINvNtNtCsiw7LomwTgZ5_3std3sys9backtrace28___rust_begin_short_backtraceNCNCNCINvMNtB6_6threadNtB1h_7Builder16spawn_unchecked_INtNtCslLIMKTelctO_5alloc5boxed3BoxDINtNtNtCse86O2quqQfh_4core3ops8function6FnOnceuEp6OutputuNtNtB2G_6marker4SendEL_EuEs_000uECsbsz 46: 0x7ff831e06264 - RINvNtNtCsiw7LomwTgZ5_3std3sys9backtrace28___rust_begin_short_backtraceNCNCNCINvMNtB6_6threadNtB1h_7Builder16spawn_unchecked_INtNtCslLIMKTelctO_5alloc5boxed3BoxDINtNtNtCse86O2quqQfh_4core3ops8function6FnOnceuEp6OutputuNtNtB2G_6marker4SendEL_EuEs_000uECsbsz 47: 0x7ff831dfef03 - RINvNtNtCsiw7LomwTgZ5_3std3sys9backtrace28___rust_begin_short_backtraceNCNCINvNtCskrzvsuieKkd_15rustc_interface4util26run_in_thread_with_globalsNCINvB1e_31run_in_thread_pool_with_globalsNCINvNtB1g_9interface12run_compileruNCNvCsbsz2LbB1MIu_17rustc_driver_i 48: 0x7ff831e12ed0 - RINvNtNtCsiw7LomwTgZ5_3std3sys9backtrace28___rust_begin_short_backtraceNCNCNCINvMNtB6_6threadNtB1h_7Builder16spawn_unchecked_INtNtCslLIMKTelctO_5alloc5boxed3BoxDINtNtNtCse86O2quqQfh_4core3ops8function6FnOnceuEp6OutputuNtNtB2G_6marker4SendEL_EuEs_000uECsbsz 49: 0x7ff83547c23d - alloc::boxed::impl$28::call_once at /rustc/f5a1ef7121ad661b5a21a1d02941c8064d54ee0b/library\alloc\src\boxed.rs:1970 50: 0x7ff83547c23d - alloc::boxed::impl$28::call_once at /rustc/f5a1ef7121ad661b5a21a1d02941c8064d54ee0b/library\alloc\src\boxed.rs:1970 51: 0x7ff83547c23d - std::sys::pal::windows::thread::impl$0::new::thread_start at /rustc/f5a1ef7121ad661b5a21a1d02941c8064d54ee0b/library\std\src\sys\pal\windows\thread.rs:56 52: 0x7ff8f6c87374 - BaseThreadInitThunk 53: 0x7ff8f777cc91 - RtlUserThreadStart 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 `D:\rust_test\test1\src\rustc-ice-2025-03-08T13_35_52-26392.txt` to your bug report query stack during panic: #0 [typeck] type-checking `<impl at .\ttt\test.rs:138:1: 138:21>::test` #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.E-needs-testCall for participation: An issue has been fixed and does not reproduce, but no test has been added.Call for participation: An issue has been fixed and does not reproduce, but no test has been added.F-inherent_associated_types`#![feature(inherent_associated_types)]``#![feature(inherent_associated_types)]`F-min_generic_const_args`#![feature(min_generic_const_args)]``#![feature(min_generic_const_args)]`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.
Type
Projects
Status
Dont' Worry (mGCA)