@@ -88,11 +88,10 @@ impl IntoDiagArg for AnonConstKind {
8888 AnonConstKind :: FieldDefaultValue => "field default value" ,
8989 AnonConstKind :: InlineConst => "inline const" ,
9090 AnonConstKind :: ConstArg ( is_repeat_expr) => match is_repeat_expr {
91- IsRepeatExpr :: No => "array repeat expression" ,
92- IsRepeatExpr :: Yes => "const generic args" ,
93- }
91+ IsRepeatExpr :: No => "array repeat expression" ,
92+ IsRepeatExpr :: Yes => "const generic args" ,
9493 } ,
95- ) )
94+ } ) )
9695 }
9796}
9897
@@ -3009,19 +3008,26 @@ impl<'a, 'ast, 'ra, 'tcx> LateResolutionVisitor<'a, 'ast, 'ra, 'tcx> {
30093008 f : impl FnOnce ( & mut Self ) ,
30103009 ) {
30113010 let f = |this : & mut Self | {
3012- this. with_rib ( ValueNS , RibKind :: ConstantItem ( may_use_generics, item, anon_const_kind) , |this| {
3013- this. with_rib (
3014- TypeNS ,
3015- RibKind :: ConstantItem (
3016- may_use_generics. force_yes_if ( is_repeat == IsRepeatExpr :: Yes ) ,
3017- item,
3018- anon_const_kind,
3019- ) ,
3020- |this| {
3021- this. with_label_rib ( RibKind :: ConstantItem ( may_use_generics, item, anon_const_kind) , f) ;
3022- } ,
3023- )
3024- } )
3011+ this. with_rib (
3012+ ValueNS ,
3013+ RibKind :: ConstantItem ( may_use_generics, item, anon_const_kind) ,
3014+ |this| {
3015+ this. with_rib (
3016+ TypeNS ,
3017+ RibKind :: ConstantItem (
3018+ may_use_generics. force_yes_if ( is_repeat == IsRepeatExpr :: Yes ) ,
3019+ item,
3020+ anon_const_kind,
3021+ ) ,
3022+ |this| {
3023+ this. with_label_rib (
3024+ RibKind :: ConstantItem ( may_use_generics, item, anon_const_kind) ,
3025+ f,
3026+ ) ;
3027+ } ,
3028+ )
3029+ } ,
3030+ )
30253031 } ;
30263032
30273033 if let ConstantHasGenerics :: No ( cause) = may_use_generics {
@@ -3535,9 +3541,13 @@ impl<'a, 'ast, 'ra, 'tcx> LateResolutionVisitor<'a, 'ast, 'ra, 'tcx> {
35353541
35363542 fn resolve_const_body ( & mut self , expr : & ' ast Expr , item : Option < ( Ident , ConstantItemKind ) > ) {
35373543 self . with_lifetime_rib ( LifetimeRibKind :: Elided ( LifetimeRes :: Infer ) , |this| {
3538- this. with_constant_rib ( IsRepeatExpr :: No , ConstantHasGenerics :: Yes , None , item, |this| {
3539- this. visit_expr ( expr)
3540- } ) ;
3544+ this. with_constant_rib (
3545+ IsRepeatExpr :: No ,
3546+ ConstantHasGenerics :: Yes ,
3547+ None ,
3548+ item,
3549+ |this| this. visit_expr ( expr) ,
3550+ ) ;
35413551 } )
35423552 }
35433553
@@ -4745,11 +4755,17 @@ impl<'a, 'ast, 'ra, 'tcx> LateResolutionVisitor<'a, 'ast, 'ra, 'tcx> {
47454755 }
47464756 } ;
47474757
4748- self . with_constant_rib ( is_repeat_expr, may_use_generics, Some ( anon_const_kind) , None , |this| {
4749- this. with_lifetime_rib ( LifetimeRibKind :: Elided ( LifetimeRes :: Infer ) , |this| {
4750- resolve_expr ( this) ;
4751- } ) ;
4752- } ) ;
4758+ self . with_constant_rib (
4759+ is_repeat_expr,
4760+ may_use_generics,
4761+ Some ( anon_const_kind) ,
4762+ None ,
4763+ |this| {
4764+ this. with_lifetime_rib ( LifetimeRibKind :: Elided ( LifetimeRes :: Infer ) , |this| {
4765+ resolve_expr ( this) ;
4766+ } ) ;
4767+ } ,
4768+ ) ;
47534769 }
47544770
47554771 fn resolve_expr_field ( & mut self , f : & ' ast ExprField , e : & ' ast Expr ) {
0 commit comments