@@ -735,7 +735,7 @@ impl<'a> LintContext for EarlyContext<'a> {
735
735
}
736
736
737
737
fn enter_attrs ( & mut self , attrs : & [ ast:: Attribute ] ) {
738
- debug ! ( "early context: exit_attrs ({:?})" , attrs) ;
738
+ debug ! ( "early context: enter_attrs ({:?})" , attrs) ;
739
739
run_lints ! ( self , enter_lint_attrs, early_passes, attrs) ;
740
740
}
741
741
@@ -934,8 +934,10 @@ impl<'a, 'v> ast_visit::Visitor<'v> for EarlyContext<'a> {
934
934
}
935
935
936
936
fn visit_expr ( & mut self , e : & ast:: Expr ) {
937
- run_lints ! ( self , check_expr, early_passes, e) ;
938
- ast_visit:: walk_expr ( self , e) ;
937
+ self . with_lint_attrs ( e. attrs . as_attr_slice ( ) , |cx| {
938
+ run_lints ! ( cx, check_expr, early_passes, e) ;
939
+ ast_visit:: walk_expr ( cx, e) ;
940
+ } )
939
941
}
940
942
941
943
fn visit_stmt ( & mut self , s : & ast:: Stmt ) {
@@ -990,8 +992,10 @@ impl<'a, 'v> ast_visit::Visitor<'v> for EarlyContext<'a> {
990
992
}
991
993
992
994
fn visit_local ( & mut self , l : & ast:: Local ) {
993
- run_lints ! ( self , check_local, early_passes, l) ;
994
- ast_visit:: walk_local ( self , l) ;
995
+ self . with_lint_attrs ( l. attrs . as_attr_slice ( ) , |cx| {
996
+ run_lints ! ( cx, check_local, early_passes, l) ;
997
+ ast_visit:: walk_local ( cx, l) ;
998
+ } )
995
999
}
996
1000
997
1001
fn visit_block ( & mut self , b : & ast:: Block ) {
0 commit comments