@@ -240,16 +240,12 @@ impl<'a> AstValidator<'a> {
240
240
}
241
241
}
242
242
243
- fn invalid_visibility ( & self , vis : & Visibility , note : Option < errors:: InvalidVisibilityNote > ) {
243
+ fn visibility_not_permitted ( & self , vis : & Visibility , note : errors:: VisibilityNotPermittedNote ) {
244
244
if let VisibilityKind :: Inherited = vis. kind {
245
245
return ;
246
246
}
247
247
248
- self . session . emit_err ( errors:: InvalidVisibility {
249
- span : vis. span ,
250
- implied : vis. kind . is_pub ( ) . then_some ( vis. span ) ,
251
- note,
252
- } ) ;
248
+ self . session . emit_err ( errors:: VisibilityNotPermitted { span : vis. span , note } ) ;
253
249
}
254
250
255
251
fn check_decl_no_pat ( decl : & FnDecl , mut report_err : impl FnMut ( Span , Option < Ident > , bool ) ) {
@@ -819,7 +815,10 @@ impl<'a> Visitor<'a> for AstValidator<'a> {
819
815
items,
820
816
} ) => {
821
817
self . with_in_trait_impl ( true , Some ( * constness) , |this| {
822
- this. invalid_visibility ( & item. vis , None ) ;
818
+ this. visibility_not_permitted (
819
+ & item. vis ,
820
+ errors:: VisibilityNotPermittedNote :: TraitImpl ,
821
+ ) ;
823
822
if let TyKind :: Err = self_ty. kind {
824
823
this. err_handler ( ) . emit_err ( errors:: ObsoleteAuto { span : item. span } ) ;
825
824
}
@@ -866,9 +865,9 @@ impl<'a> Visitor<'a> for AstValidator<'a> {
866
865
only_trait : only_trait. then_some ( ( ) ) ,
867
866
} ;
868
867
869
- self . invalid_visibility (
868
+ self . visibility_not_permitted (
870
869
& item. vis ,
871
- Some ( errors:: InvalidVisibilityNote :: IndividualImplItems ) ,
870
+ errors:: VisibilityNotPermittedNote :: IndividualImplItems ,
872
871
) ;
873
872
if let & Unsafe :: Yes ( span) = unsafety {
874
873
self . err_handler ( ) . emit_err ( errors:: InherentImplCannotUnsafe {
@@ -924,9 +923,9 @@ impl<'a> Visitor<'a> for AstValidator<'a> {
924
923
}
925
924
ItemKind :: ForeignMod ( ForeignMod { abi, unsafety, .. } ) => {
926
925
let old_item = mem:: replace ( & mut self . extern_mod , Some ( item) ) ;
927
- self . invalid_visibility (
926
+ self . visibility_not_permitted (
928
927
& item. vis ,
929
- Some ( errors:: InvalidVisibilityNote :: IndividualForeignItems ) ,
928
+ errors:: VisibilityNotPermittedNote :: IndividualForeignItems ,
930
929
) ;
931
930
if let & Unsafe :: Yes ( span) = unsafety {
932
931
self . err_handler ( ) . emit_err ( errors:: UnsafeItem { span, kind : "extern block" } ) ;
@@ -940,9 +939,15 @@ impl<'a> Visitor<'a> for AstValidator<'a> {
940
939
}
941
940
ItemKind :: Enum ( def, _) => {
942
941
for variant in & def. variants {
943
- self . invalid_visibility ( & variant. vis , None ) ;
942
+ self . visibility_not_permitted (
943
+ & variant. vis ,
944
+ errors:: VisibilityNotPermittedNote :: EnumVariant ,
945
+ ) ;
944
946
for field in variant. data . fields ( ) {
945
- self . invalid_visibility ( & field. vis , None ) ;
947
+ self . visibility_not_permitted (
948
+ & field. vis ,
949
+ errors:: VisibilityNotPermittedNote :: EnumVariant ,
950
+ ) ;
946
951
}
947
952
}
948
953
}
@@ -1301,7 +1306,7 @@ impl<'a> Visitor<'a> for AstValidator<'a> {
1301
1306
}
1302
1307
1303
1308
if ctxt == AssocCtxt :: Trait || self . in_trait_impl {
1304
- self . invalid_visibility ( & item. vis , None ) ;
1309
+ self . visibility_not_permitted ( & item. vis , errors :: VisibilityNotPermittedNote :: TraitImpl ) ;
1305
1310
if let AssocItemKind :: Fn ( box Fn { sig, .. } ) = & item. kind {
1306
1311
self . check_trait_fn_not_const ( sig. header . constness ) ;
1307
1312
}
0 commit comments