@@ -90,11 +90,10 @@ impl IntoDiagArg for AnonConstKind {
9090 AnonConstKind :: FieldDefaultValue => "field default value" ,
9191 AnonConstKind :: InlineConst => "inline const" ,
9292 AnonConstKind :: ConstArg ( is_repeat_expr) => match is_repeat_expr {
93- IsRepeatExpr :: No => "array repeat expression" ,
94- IsRepeatExpr :: Yes => "const generic args" ,
95- }
93+ IsRepeatExpr :: No => "array repeat expression" ,
94+ IsRepeatExpr :: Yes => "const generic args" ,
9695 } ,
97- ) )
96+ } ) )
9897 }
9998}
10099
@@ -3037,19 +3036,26 @@ impl<'a, 'ast, 'ra, 'tcx> LateResolutionVisitor<'a, 'ast, 'ra, 'tcx> {
30373036 f : impl FnOnce ( & mut Self ) ,
30383037 ) {
30393038 let f = |this : & mut Self | {
3040- this. with_rib ( ValueNS , RibKind :: ConstantItem ( may_use_generics, item, anon_const_kind) , |this| {
3041- this. with_rib (
3042- TypeNS ,
3043- RibKind :: ConstantItem (
3044- may_use_generics. force_yes_if ( is_repeat == IsRepeatExpr :: Yes ) ,
3045- item,
3046- anon_const_kind,
3047- ) ,
3048- |this| {
3049- this. with_label_rib ( RibKind :: ConstantItem ( may_use_generics, item, anon_const_kind) , f) ;
3050- } ,
3051- )
3052- } )
3039+ this. with_rib (
3040+ ValueNS ,
3041+ RibKind :: ConstantItem ( may_use_generics, item, anon_const_kind) ,
3042+ |this| {
3043+ this. with_rib (
3044+ TypeNS ,
3045+ RibKind :: ConstantItem (
3046+ may_use_generics. force_yes_if ( is_repeat == IsRepeatExpr :: Yes ) ,
3047+ item,
3048+ anon_const_kind,
3049+ ) ,
3050+ |this| {
3051+ this. with_label_rib (
3052+ RibKind :: ConstantItem ( may_use_generics, item, anon_const_kind) ,
3053+ f,
3054+ ) ;
3055+ } ,
3056+ )
3057+ } ,
3058+ )
30533059 } ;
30543060
30553061 if let ConstantHasGenerics :: No ( cause) = may_use_generics {
@@ -3565,9 +3571,13 @@ impl<'a, 'ast, 'ra, 'tcx> LateResolutionVisitor<'a, 'ast, 'ra, 'tcx> {
35653571
35663572 fn resolve_const_body ( & mut self , expr : & ' ast Expr , item : Option < ( Ident , ConstantItemKind ) > ) {
35673573 self . with_lifetime_rib ( LifetimeRibKind :: Elided ( LifetimeRes :: Infer ) , |this| {
3568- this. with_constant_rib ( IsRepeatExpr :: No , ConstantHasGenerics :: Yes , None , item, |this| {
3569- this. visit_expr ( expr)
3570- } ) ;
3574+ this. with_constant_rib (
3575+ IsRepeatExpr :: No ,
3576+ ConstantHasGenerics :: Yes ,
3577+ None ,
3578+ item,
3579+ |this| this. visit_expr ( expr) ,
3580+ ) ;
35713581 } )
35723582 }
35733583
@@ -4774,11 +4784,17 @@ impl<'a, 'ast, 'ra, 'tcx> LateResolutionVisitor<'a, 'ast, 'ra, 'tcx> {
47744784 }
47754785 } ;
47764786
4777- self . with_constant_rib ( is_repeat_expr, may_use_generics, Some ( anon_const_kind) , None , |this| {
4778- this. with_lifetime_rib ( LifetimeRibKind :: Elided ( LifetimeRes :: Infer ) , |this| {
4779- resolve_expr ( this) ;
4780- } ) ;
4781- } ) ;
4787+ self . with_constant_rib (
4788+ is_repeat_expr,
4789+ may_use_generics,
4790+ Some ( anon_const_kind) ,
4791+ None ,
4792+ |this| {
4793+ this. with_lifetime_rib ( LifetimeRibKind :: Elided ( LifetimeRes :: Infer ) , |this| {
4794+ resolve_expr ( this) ;
4795+ } ) ;
4796+ } ,
4797+ ) ;
47824798 }
47834799
47844800 fn resolve_expr_field ( & mut self , f : & ' ast ExprField , e : & ' ast Expr ) {
0 commit comments