[ICE]: `was matchable against Binder.. `
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 119k
- Forks
- 16.1k
- PR merge metrics
- PR metrics pending
Description
original:
#![feature(associated_type_defaults)]
trait Trait<T, U> {
type Assoc = LocalTy;
}
struct LocalTy;
impl<T, U> Trait<T, U> for <() as Trait<T, U>>::Assoc {}
fn main() {}
Version information
rustc 1.98.0-nightly (b4486cacf 2026-06-28)
binary: rustc
commit-hash: b4486cacf58926f02e451d96e71e20882faf5453
commit-date: 2026-06-28
host: x86_64-unknown-linux-gnu
release: 1.98.0-nightly
LLVM version: 22.1.8
Possibly related line of code:
https://github.com/rust-lang/rust/blob/b4486cacf58926f02e451d96e71e20882faf5453/compiler/rustc_trait_selection/src/traits/select/mod.rs#L2516-L2528
Command:
/home/matthias/.rustup/toolchains/master/bin/rustc
Program output
error: internal compiler error: /rustc-dev/b4486cacf58926f02e451d96e71e20882faf5453/compiler/rustc_trait_selection/src/traits/select/mod.rs:2522:17: impl DefId(0:9 ~ report[67f0]::{impl#0}) was matchable against Binder { value: TraitPredicate(<() as Trait<_, _>>, polarity:Positive), bound_vars: [] } but now is not
thread 'rustc' (1757528) panicked at /rustc-dev/b4486cacf58926f02e451d96e71e20882faf5453/compiler/rustc_trait_selection/src/traits/select/mod.rs:2522:17:
Box<dyn Any>
stack backtrace:
0: 0x7fc2eb4d6cc9 - <<std[573addc0c2cf0434]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[c27ea7801c6a3590]::fmt::Display>::fmt
1: 0x7fc2ebc0f4c8 - core[c27ea7801c6a3590]::fmt::write
2: 0x7fc2eb4ed336 - <std[573addc0c2cf0434]::sys::stdio::unix::Stderr as std[573addc0c2cf0434]::io::Write>::write_fmt
3: 0x7fc2eb4abe2e - std[573addc0c2cf0434]::panicking::default_hook::{closure#0}
4: 0x7fc2eb4c9843 - std[573addc0c2cf0434]::panicking::default_hook
5: 0x7fc2ea4b90b1 - std[573addc0c2cf0434]::panicking::update_hook::<alloc[d510c8850a0687d9]::boxed::Box<rustc_driver_impl[e12595ae4ff017a1]::install_ice_hook::{closure#1}>>::{closure#0}
6: 0x7fc2eb4c9c92 - std[573addc0c2cf0434]::panicking::panic_with_hook
7: 0x7fc2ea4e6ed1 - std[573addc0c2cf0434]::panicking::begin_panic::<rustc_errors[ff42f9ed4fa5ae81]::ExplicitBug>::{closure#0}
8: 0x7fc2ea4dfc46 - std[573addc0c2cf0434]::sys::backtrace::__rust_end_short_backtrace::<std[573addc0c2cf0434]::panicking::begin_panic<rustc_errors[ff42f9ed4fa5ae81]::ExplicitBug>::{closure#0}, !>
9: 0x7fc2ea4ddbd7 - std[573addc0c2cf0434]::panicking::begin_panic::<rustc_errors[ff42f9ed4fa5ae81]::ExplicitBug>
10: 0x7fc2ea4f2061 - <rustc_errors[ff42f9ed4fa5ae81]::diagnostic::BugAbort as rustc_errors[ff42f9ed4fa5ae81]::diagnostic::EmissionGuarantee>::emit_producing_guarantee
11: 0x7fc2eaa6cf19 - rustc_middle[d84885d3341fb98a]::util::bug::opt_span_bug_fmt::<rustc_span[a1c65850fba93de6]::span_encoding::Span>::{closure#0}
12: 0x7fc2eaa6d082 - rustc_middle[d84885d3341fb98a]::ty::context::tls::with_opt::<rustc_middle[d84885d3341fb98a]::util::bug::opt_span_bug_fmt<rustc_span[a1c65850fba93de6]::span_encoding::Span>::{closure#0}, !>::{closure#0}
13: 0x7fc2eaa58c9b - rustc_middle[d84885d3341fb98a]::ty::context::tls::with_context_opt::<rustc_middle[d84885d3341fb98a]::ty::context::tls::with_opt<rustc_middle[d84885d3341fb98a]::util::bug::opt_span_bug_fmt<rustc_span[a1c65850fba93de6]::span_encoding::Span>::{closure#0}, !>::{closure#0}, !>
14: 0x7fc2e7d35a24 - rustc_middle[d84885d3341fb98a]::util::bug::bug_fmt
15: 0x7fc2ecc2b66d - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
16: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
17: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
18: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
19: 0x7fc2ecc1c4ee - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
20: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
21: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
22: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
23: 0x7fc2e7d05d8e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::match_impl::{closure#0}
24: 0x7fc2ebd00b42 - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::assemble_candidates_from_impls
25: 0x7fc2ebd07d3c - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
26: 0x7fc2ecc1a14e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
27: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
28: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
29: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
30: 0x7fc2e7d05d8e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::match_impl::{closure#0}
31: 0x7fc2ebd00b42 - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::assemble_candidates_from_impls
32: 0x7fc2ebd07d3c - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
33: 0x7fc2ecc1a14e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
34: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
35: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
36: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
37: 0x7fc2e7d05d8e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::match_impl::{closure#0}
38: 0x7fc2ebd00b42 - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::assemble_candidates_from_impls
39: 0x7fc2ebd07d3c - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
40: 0x7fc2ecc1a14e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
41: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
42: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
43: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
44: 0x7fc2e7d05d8e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::match_impl::{closure#0}
45: 0x7fc2ebd00b42 - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::assemble_candidates_from_impls
46: 0x7fc2ebd07d3c - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
47: 0x7fc2ecc1a14e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
48: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
49: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
50: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
51: 0x7fc2e7d05d8e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::match_impl::{closure#0}
52: 0x7fc2ebd00b42 - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::assemble_candidates_from_impls
53: 0x7fc2ebd07d3c - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
54: 0x7fc2ecc1a14e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
55: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
56: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
57: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
58: 0x7fc2e7d05d8e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::match_impl::{closure#0}
59: 0x7fc2ebd00b42 - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::assemble_candidates_from_impls
60: 0x7fc2ebd07d3c - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
61: 0x7fc2ecc1a14e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
62: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
63: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
64: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
65: 0x7fc2e7d05d8e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::match_impl::{closure#0}
66: 0x7fc2ebd00b42 - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::assemble_candidates_from_impls
67: 0x7fc2ebd07d3c - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
68: 0x7fc2ecc1a14e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
69: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
70: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
71: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
72: 0x7fc2e7d05d8e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::match_impl::{closure#0}
73: 0x7fc2ebd00b42 - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::assemble_candidates_from_impls
74: 0x7fc2ebd07d3c - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
75: 0x7fc2ecc1a14e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
76: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
77: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
78: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
79: 0x7fc2e7d05d8e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::match_impl::{closure#0}
80: 0x7fc2ebd00b42 - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::assemble_candidates_from_impls
81: 0x7fc2ebd07d3c - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
82: 0x7fc2ecc1a14e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
83: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
84: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
85: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
86: 0x7fc2e7d05d8e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::match_impl::{closure#0}
87: 0x7fc2ebd00b42 - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::assemble_candidates_from_impls
88: 0x7fc2ebd07d3c - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
89: 0x7fc2ecc1a14e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
90: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
91: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
92: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
93: 0x7fc2e7d05d8e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::match_impl::{closure#0}
94: 0x7fc2ebd00b42 - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::assemble_candidates_from_impls
95: 0x7fc2ebd07d3c - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
96: 0x7fc2ecc1a14e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
97: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
98: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
99: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
100: 0x7fc2e7d05d8e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::match_impl::{closure#0}
101: 0x7fc2ebd00b42 - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::assemble_candidates_from_impls
102: 0x7fc2ebd07d3c - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
103: 0x7fc2ecc1a14e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
104: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
105: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
106: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
107: 0x7fc2e7d05d8e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::match_impl::{closure#0}
108: 0x7fc2ebd00b42 - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::assemble_candidates_from_impls
109: 0x7fc2ebd07d3c - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
110: 0x7fc2ecc1a14e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
111: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
112: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
113: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
114: 0x7fc2e7d05d8e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::match_impl::{closure#0}
115: 0x7fc2ebd00b42 - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::assemble_candidates_from_impls
116: 0x7fc2ebd07d3c - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
117: 0x7fc2ecc1a14e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
118: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
119: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
120: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
121: 0x7fc2e7d05d8e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::match_impl::{closure#0}
122: 0x7fc2ebd00b42 - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::assemble_candidates_from_impls
123: 0x7fc2ebd07d3c - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
124: 0x7fc2ecc1a14e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
125: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
126: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
127: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
128: 0x7fc2e7d05d8e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::match_impl::{closure#0}
129: 0x7fc2ebd00b42 - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::assemble_candidates_from_impls
130: 0x7fc2ebd07d3c - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
131: 0x7fc2ecc1a14e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
132: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
133: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
134: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
135: 0x7fc2e7d05d8e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::match_impl::{closure#0}
136: 0x7fc2ebd00b42 - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::assemble_candidates_from_impls
137: 0x7fc2ebd07d3c - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
138: 0x7fc2ecc1a14e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
139: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
140: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
141: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
142: 0x7fc2e7d05d8e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::match_impl::{closure#0}
143: 0x7fc2ebd00b42 - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::assemble_candidates_from_impls
144: 0x7fc2ebd07d3c - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
145: 0x7fc2ecc1a14e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
146: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
147: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
148: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
149: 0x7fc2e7d05d8e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::match_impl::{closure#0}
150: 0x7fc2ebd00b42 - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::assemble_candidates_from_impls
151: 0x7fc2ebd07d3c - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
152: 0x7fc2ecc1a14e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
153: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
154: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
155: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
156: 0x7fc2e7d05d8e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::match_impl::{closure#0}
157: 0x7fc2ebd00b42 - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::assemble_candidates_from_impls
158: 0x7fc2ebd07d3c - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
159: 0x7fc2ecc1a14e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
160: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
161: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
162: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
163: 0x7fc2e7d05d8e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::match_impl::{closure#0}
164: 0x7fc2ebd00b42 - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::assemble_candidates_from_impls
165: 0x7fc2ebd07d3c - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
166: 0x7fc2ecc1a14e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
167: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
168: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
169: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
170: 0x7fc2e7d05d8e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::match_impl::{closure#0}
171: 0x7fc2ebd00b42 - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::assemble_candidates_from_impls
172: 0x7fc2ebd07d3c - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
173: 0x7fc2ecc1a14e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
174: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
...
896: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
897: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
898: 0x7fc2e7d05d8e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::match_impl::{closure#0}
899: 0x7fc2ebd00b42 - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::assemble_candidates_from_impls
900: 0x7fc2ebd07d3c - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
901: 0x7fc2ecc1a14e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
902: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
903: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
904: 0x7fc2ec85541e - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
905: 0x7fc2ec855218 - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_predicate
906: 0x7fc2ec852db6 - rustc_hir_analysis[9af78ea8fac00e00]::check::compare_impl_item::check_type_bounds
907: 0x7fc2eca48b4b - rustc_hir_analysis[9af78ea8fac00e00]::check::check::check_item_type
908: 0x7fc2eca40370 - rustc_hir_analysis[9af78ea8fac00e00]::check::wfcheck::check_well_formed
909: 0x7fc2eca40351 - rustc_query_impl[b1c529cffd53bfe7]::query_impl::check_well_formed::invoke_provider_fn::__rust_begin_short_backtrace
910: 0x7fc2eca3f931 - rustc_query_impl[b1c529cffd53bfe7]::execution::try_execute_query::<rustc_data_structures[ef8155711465d54]::vec_cache::VecCache<rustc_span[a1c65850fba93de6]::def_id::LocalDefId, rustc_middle[d84885d3341fb98a]::query::erase::ErasedData<[u8; 1usize]>, rustc_middle[d84885d3341fb98a]::dep_graph::graph::DepNodeIndex>, false>
911: 0x7fc2eca3f6c7 - rustc_query_impl[b1c529cffd53bfe7]::query_impl::check_well_formed::execute_query_non_incr::__rust_end_short_backtrace
912: 0x7fc2eca3c145 - rustc_hir_analysis[9af78ea8fac00e00]::check::wfcheck::check_type_wf
913: 0x7fc2eca3c053 - rustc_query_impl[b1c529cffd53bfe7]::query_impl::check_type_wf::invoke_provider_fn::__rust_begin_short_backtrace
914: 0x7fc2ecd1b346 - rustc_query_impl[b1c529cffd53bfe7]::execution::try_execute_query::<rustc_middle[d84885d3341fb98a]::query::caches::SingleCache<rustc_middle[d84885d3341fb98a]::query::erase::ErasedData<[u8; 1usize]>>, false>
915: 0x7fc2ecd1b129 - rustc_query_impl[b1c529cffd53bfe7]::query_impl::check_type_wf::execute_query_non_incr::__rust_end_short_backtrace
916: 0x7fc2ec0ded5a - rustc_hir_analysis[9af78ea8fac00e00]::check_crate
917: 0x7fc2ec0e2aba - rustc_interface[6e19eb1cb5d3bd8]::passes::analysis
918: 0x7fc2ecd1c147 - rustc_query_impl[b1c529cffd53bfe7]::execution::try_execute_query::<rustc_middle[d84885d3341fb98a]::query::caches::SingleCache<rustc_middle[d84885d3341fb98a]::query::erase::ErasedData<[u8; 0usize]>>, false>
919: 0x7fc2ecd1be29 - rustc_query_impl[b1c529cffd53bfe7]::query_impl::analysis::execute_query_non_incr::__rust_end_short_backtrace
920: 0x7fc2ecce2040 - rustc_interface[6e19eb1cb5d3bd8]::interface::run_compiler::<(), rustc_driver_impl[e12595ae4ff017a1]::run_compiler::{closure#0}>::{closure#1}
921: 0x7fc2ecd31efa - std[573addc0c2cf0434]::sys::backtrace::__rust_begin_short_backtrace::<rustc_interface[6e19eb1cb5d3bd8]::util::run_in_thread_with_globals<rustc_interface[6e19eb1cb5d3bd8]::util::run_in_thread_pool_with_globals<rustc_interface[6e19eb1cb5d3bd8]::interface::run_compiler<(), rustc_driver_impl[e12595ae4ff017a1]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>
922: 0x7fc2ecd31cad - <std[573addc0c2cf0434]::thread::lifecycle::spawn_unchecked<rustc_interface[6e19eb1cb5d3bd8]::util::run_in_thread_with_globals<rustc_interface[6e19eb1cb5d3bd8]::util::run_in_thread_pool_with_globals<rustc_interface[6e19eb1cb5d3bd8]::interface::run_compiler<(), rustc_driver_impl[e12595ae4ff017a1]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>::{closure#1} as core[c27ea7801c6a3590]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
923: 0x7fc2ecd28190 - <std[573addc0c2cf0434]::sys::thread::unix::Thread>::new::thread_start
924: 0x7fc2e66981b9 - <unknown>
925: 0x7fc2e671d21c - <unknown>
926: 0x0 - <unknown>
note: we would appreciate a bug report: https://github.com/rust-lang/rust/issues/new?labels=C-bug%2C+I-ICE%2C+T-compiler&template=ice.md
note: please make sure that you have updated to the latest nightly
note: please attach the file at `/tmp/imr/rustc-ice-2026-06-28T15_35_44-1757526.txt` to your bug report
note: rustc 1.98.0-nightly (b4486cacf 2026-06-28) running on x86_64-unknown-linux-gnu
query stack during panic:
#0 [check_well_formed] checking that `Trait` is well-formed
#1 [check_type_wf] checking that types are well-formed
#2 [analysis] running analysis passes on crate `report`
end of query stack
...
thread 'rustc' (1757528) panicked at /rustc-dev/b4486cacf58926f02e451d96e71e20882faf5453/compiler/rustc_trait_selection/src/traits/select/mod.rs:2522:17:
Box<dyn Any>
stack backtrace:
0: 0x7fc2eb4d6cc9 - <<std[573addc0c2cf0434]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[c27ea7801c6a3590]::fmt::Display>::fmt
1: 0x7fc2ebc0f4c8 - core[c27ea7801c6a3590]::fmt::write
2: 0x7fc2eb4ed336 - <std[573addc0c2cf0434]::sys::stdio::unix::Stderr as std[573addc0c2cf0434]::io::Write>::write_fmt
3: 0x7fc2eb4abe2e - std[573addc0c2cf0434]::panicking::default_hook::{closure#0}
4: 0x7fc2eb4c9843 - std[573addc0c2cf0434]::panicking::default_hook
5: 0x7fc2ea4b90b1 - std[573addc0c2cf0434]::panicking::update_hook::<alloc[d510c8850a0687d9]::boxed::Box<rustc_driver_impl[e12595ae4ff017a1]::install_ice_hook::{closure#1}>>::{closure#0}
6: 0x7fc2eb4c9c92 - std[573addc0c2cf0434]::panicking::panic_with_hook
7: 0x7fc2ea4e6ed1 - std[573addc0c2cf0434]::panicking::begin_panic::<rustc_errors[ff42f9ed4fa5ae81]::ExplicitBug>::{closure#0}
8: 0x7fc2ea4dfc46 - std[573addc0c2cf0434]::sys::backtrace::__rust_end_short_backtrace::<std[573addc0c2cf0434]::panicking::begin_panic<rustc_errors[ff42f9ed4fa5ae81]::ExplicitBug>::{closure#0}, !>
9: 0x7fc2ea4ddbd7 - std[573addc0c2cf0434]::panicking::begin_panic::<rustc_errors[ff42f9ed4fa5ae81]::ExplicitBug>
10: 0x7fc2ea4f2061 - <rustc_errors[ff42f9ed4fa5ae81]::diagnostic::BugAbort as rustc_errors[ff42f9ed4fa5ae81]::diagnostic::EmissionGuarantee>::emit_producing_guarantee
11: 0x7fc2eaa6cf19 - rustc_middle[d84885d3341fb98a]::util::bug::opt_span_bug_fmt::<rustc_span[a1c65850fba93de6]::span_encoding::Span>::{closure#0}
12: 0x7fc2eaa6d082 - rustc_middle[d84885d3341fb98a]::ty::context::tls::with_opt::<rustc_middle[d84885d3341fb98a]::util::bug::opt_span_bug_fmt<rustc_span[a1c65850fba93de6]::span_encoding::Span>::{closure#0}, !>::{closure#0}
13: 0x7fc2eaa58c9b - rustc_middle[d84885d3341fb98a]::ty::context::tls::with_context_opt::<rustc_middle[d84885d3341fb98a]::ty::context::tls::with_opt<rustc_middle[d84885d3341fb98a]::util::bug::opt_span_bug_fmt<rustc_span[a1c65850fba93de6]::span_encoding::Span>::{closure#0}, !>::{closure#0}, !>
14: 0x7fc2e7d35a24 - rustc_middle[d84885d3341fb98a]::util::bug::bug_fmt
15: 0x7fc2ecc2b66d - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
16: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
17: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
18: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
19: 0x7fc2ecc1c4ee - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
20: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
21: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
22: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
23: 0x7fc2e7d05d8e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::match_impl::{closure#0}
24: 0x7fc2ebd00b42 - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::assemble_candidates_from_impls
25: 0x7fc2ebd07d3c - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
26: 0x7fc2ecc1a14e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
27: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
28: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
29: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
30: 0x7fc2e7d05d8e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::match_impl::{closure#0}
31: 0x7fc2ebd00b42 - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::assemble_candidates_from_impls
32: 0x7fc2ebd07d3c - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
33: 0x7fc2ecc1a14e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
34: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
35: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
36: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
37: 0x7fc2e7d05d8e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::match_impl::{closure#0}
38: 0x7fc2ebd00b42 - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::assemble_candidates_from_impls
39: 0x7fc2ebd07d3c - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
40: 0x7fc2ecc1a14e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
41: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
42: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
43: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
44: 0x7fc2e7d05d8e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::match_impl::{closure#0}
45: 0x7fc2ebd00b42 - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::assemble_candidates_from_impls
46: 0x7fc2ebd07d3c - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
47: 0x7fc2ecc1a14e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
48: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
...
882: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
883: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
884: 0x7fc2e7d05d8e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::match_impl::{closure#0}
885: 0x7fc2ebd00b42 - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::assemble_candidates_from_impls
886: 0x7fc2ebd07d3c - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
887: 0x7fc2ecc1a14e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
888: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
889: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
890: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
891: 0x7fc2e7d05d8e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::match_impl::{closure#0}
892: 0x7fc2ebd00b42 - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::assemble_candidates_from_impls
893: 0x7fc2ebd07d3c - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
894: 0x7fc2ecc1a14e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
895: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
896: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
897: 0x7fc2ebc78629 - <&rustc_middle[d84885d3341fb98a]::ty::list::RawList<(), rustc_middle[d84885d3341fb98a]::ty::generic_args::GenericArg> as rustc_type_ir[773370f47054d08d]::fold::TypeFoldable<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_with::<rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer>
898: 0x7fc2e7d05d8e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::match_impl::{closure#0}
899: 0x7fc2ebd00b42 - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::assemble_candidates_from_impls
900: 0x7fc2ebd07d3c - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::candidate_from_obligation_no_cache
901: 0x7fc2ecc1a14e - <rustc_trait_selection[da421b44bd9ede1a]::traits::select::SelectionContext>::poly_select::{closure#0}
902: 0x7fc2ebc7a492 - rustc_trait_selection[da421b44bd9ede1a]::traits::project::normalize_projection_term
903: 0x7fc2ebc78c1b - <rustc_trait_selection[da421b44bd9ede1a]::traits::normalize::AssocTypeNormalizer as rustc_type_ir[773370f47054d08d]::fold::TypeFolder<rustc_middle[d84885d3341fb98a]::ty::context::TyCtxt>>::fold_ty
904: 0x7fc2ec1484fd - <rustc_trait_selection[da421b44bd9ede1a]::traits::engine::ObligationCtxt>::normalize::<rustc_middle[d84885d3341fb98a]::ty::Ty>
905: 0x7fc2ec146396 - rustc_ty_utils[1a5d3c1af3d9d1f3]::ty::impl_self_is_guaranteed_unsized
906: 0x7fc2ec145e2b - rustc_query_impl[b1c529cffd53bfe7]::query_impl::impl_self_is_guaranteed_unsized::invoke_provider_fn::__rust_begin_short_backtrace
907: 0x7fc2ec4fd82d - rustc_query_impl[b1c529cffd53bfe7]::execution::try_execute_query::<rustc_middle[d84885d3341fb98a]::query::caches::DefIdCache<rustc_middle[d84885d3341fb98a]::query::erase::ErasedData<[u8; 1usize]>>, false>
908: 0x7fc2ec4fd100 - rustc_query_impl[b1c529cffd53bfe7]::query_impl::impl_self_is_guaranteed_unsized::execute_query_non_incr::__rust_end_short_backtrace
909: 0x7fc2eca4298a - rustc_hir_analysis[9af78ea8fac00e00]::check::check::check_item_type
910: 0x7fc2eca40370 - rustc_hir_analysis[9af78ea8fac00e00]::check::wfcheck::check_well_formed
911: 0x7fc2eca40351 - rustc_query_impl[b1c529cffd53bfe7]::query_impl::check_well_formed::invoke_provider_fn::__rust_begin_short_backtrace
912: 0x7fc2eca3f931 - rustc_query_impl[b1c529cffd53bfe7]::execution::try_execute_query::<rustc_data_structures[ef8155711465d54]::vec_cache::VecCache<rustc_span[a1c65850fba93de6]::def_id::LocalDefId, rustc_middle[d84885d3341fb98a]::query::erase::ErasedData<[u8; 1usize]>, rustc_middle[d84885d3341fb98a]::dep_graph::graph::DepNodeIndex>, false>
913: 0x7fc2eca3f6c7 - rustc_query_impl[b1c529cffd53bfe7]::query_impl::check_well_formed::execute_query_non_incr::__rust_end_short_backtrace
914: 0x7fc2eca3c145 - rustc_hir_analysis[9af78ea8fac00e00]::check::wfcheck::check_type_wf
915: 0x7fc2eca3c053 - rustc_query_impl[b1c529cffd53bfe7]::query_impl::check_type_wf::invoke_provider_fn::__rust_begin_short_backtrace
916: 0x7fc2ecd1b346 - rustc_query_impl[b1c529cffd53bfe7]::execution::try_execute_query::<rustc_middle[d84885d3341fb98a]::query::caches::SingleCache<rustc_middle[d84885d3341fb98a]::query::erase::ErasedData<[u8; 1usize]>>, false>
917: 0x7fc2ecd1b129 - rustc_query_impl[b1c529cffd53bfe7]::query_impl::check_type_wf::execute_query_non_incr::__rust_end_short_backtrace
918: 0x7fc2ec0ded5a - rustc_hir_analysis[9af78ea8fac00e00]::check_crate
919: 0x7fc2ec0e2aba - rustc_interface[6e19eb1cb5d3bd8]::passes::analysis
920: 0x7fc2ecd1c147 - rustc_query_impl[b1c529cffd53bfe7]::execution::try_execute_query::<rustc_middle[d84885d3341fb98a]::query::caches::SingleCache<rustc_middle[d84885d3341fb98a]::query::erase::ErasedData<[u8; 0usize]>>, false>
921: 0x7fc2ecd1be29 - rustc_query_impl[b1c529cffd53bfe7]::query_impl::analysis::execute_query_non_incr::__rust_end_short_backtrace
922: 0x7fc2ecce2040 - rustc_interface[6e19eb1cb5d3bd8]::interface::run_compiler::<(), rustc_driver_impl[e12595ae4ff017a1]::run_compiler::{closure#0}>::{closure#1}
923: 0x7fc2ecd31efa - std[573addc0c2cf0434]::sys::backtrace::__rust_begin_short_backtrace::<rustc_interface[6e19eb1cb5d3bd8]::util::run_in_thread_with_globals<rustc_interface[6e19eb1cb5d3bd8]::util::run_in_thread_pool_with_globals<rustc_interface[6e19eb1cb5d3bd8]::interface::run_compiler<(), rustc_driver_impl[e12595ae4ff017a1]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>
924: 0x7fc2ecd31cad - <std[573addc0c2cf0434]::thread::lifecycle::spawn_unchecked<rustc_interface[6e19eb1cb5d3bd8]::util::run_in_thread_with_globals<rustc_interface[6e19eb1cb5d3bd8]::util::run_in_thread_pool_with_globals<rustc_interface[6e19eb1cb5d3bd8]::interface::run_compiler<(), rustc_driver_impl[e12595ae4ff017a1]::run_compiler::{closure#0}>::{closure#1}, ()>::{closure#0}, ()>::{closure#0}::{closure#0}, ()>::{closure#1} as core[c27ea7801c6a3590]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
925: 0x7fc2ecd28190 - <std[573addc0c2cf0434]::sys::thread::unix::Thread>::new::thread_start
926: 0x7fc2e66981b9 - <unknown>
927: 0x7fc2e671d21c - <unknown>
928: 0x0 - <unknown>
note: we would appreciate a bug report: https://github.com/rust-lang/rust/issues/new?labels=C-bug%2C+I-ICE%2C+T-compiler&template=ice.md
note: please make sure that you have updated to the latest nightly
note: please attach the file at `/tmp/imr/rustc-ice-2026-06-28T15_35_44-1757526.txt` to your bug report
note: rustc 1.98.0-nightly (b4486cacf 2026-06-28) running on x86_64-unknown-linux-gnu
query stack during panic:
#0 [impl_self_is_guaranteed_unsized] computing whether `<impl at report.rs:8:1: 8:54>` has a guaranteed unsized self type
#1 [check_well_formed] checking that `<impl at report.rs:8:1: 8:54>` is well-formed
#2 [check_type_wf] checking that types are well-formed
#3 [analysis] running analysis passes on crate `report`
end of query stack
error: aborting due to 1 previous error
@rustbot label +F-associated_type_defaults
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by compiling the minimal reproducer in /tmp/imr/report.rs with the reported nightly toolchain and confirm the ICE. Then inspect compiler/rustc_trait_selection/src/traits/select/mod.rs around lines 2516-2528 and trace the associated-type normalization path shown in the backtrace. Done means the reproducer no longer triggers an internal compiler error, with a regression test covering the case.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- compilers
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100