@@ -1018,7 +1018,8 @@ pub(super) fn const_conditions<'tcx>(
10181018 Node :: Item ( item) => match item. kind {
10191019 hir:: ItemKind :: Impl ( impl_) => ( impl_. generics , None , false ) ,
10201020 hir:: ItemKind :: Fn { generics, .. } => ( generics, None , false ) ,
1021- hir:: ItemKind :: Trait ( _, _, _, _, generics, supertraits, _) => {
1021+ hir:: ItemKind :: TraitAlias ( _, _, generics, supertraits)
1022+ | hir:: ItemKind :: Trait ( _, _, _, _, generics, supertraits, _) => {
10221023 ( generics, Some ( ( item. owner_id . def_id , supertraits) ) , false )
10231024 }
10241025 _ => bug ! ( "const_conditions called on wrong item: {def_id:?}" ) ,
@@ -1128,13 +1129,14 @@ pub(super) fn explicit_implied_const_bounds<'tcx>(
11281129 span_bug ! ( tcx. def_span( def_id) , "RPITIT in impl should not have item bounds" )
11291130 }
11301131 None => match tcx. hir_node_by_def_id ( def_id) {
1131- Node :: Item ( hir:: Item { kind : hir:: ItemKind :: Trait ( ..) , .. } ) => {
1132- implied_predicates_with_filter (
1133- tcx,
1134- def_id. to_def_id ( ) ,
1135- PredicateFilter :: SelfConstIfConst ,
1136- )
1137- }
1132+ Node :: Item ( hir:: Item {
1133+ kind : hir:: ItemKind :: Trait ( ..) | hir:: ItemKind :: TraitAlias ( ..) ,
1134+ ..
1135+ } ) => implied_predicates_with_filter (
1136+ tcx,
1137+ def_id. to_def_id ( ) ,
1138+ PredicateFilter :: SelfConstIfConst ,
1139+ ) ,
11381140 Node :: TraitItem ( hir:: TraitItem { kind : hir:: TraitItemKind :: Type ( ..) , .. } )
11391141 | Node :: OpaqueTy ( _) => {
11401142 explicit_item_bounds_with_filter ( tcx, def_id, PredicateFilter :: ConstIfConst )
0 commit comments