@@ -678,9 +678,8 @@ pub fn walk_anon_const<'a, V: Visitor<'a>>(visitor: &mut V, constant: &'a AnonCo
678678}
679679
680680pub fn walk_expr < ' a , V : Visitor < ' a > > ( visitor : & mut V , expression : & ' a Expr ) {
681- for attr in expression. attrs . iter ( ) {
682- visitor. visit_attribute ( attr) ;
683- }
681+ walk_list ! ( visitor, visit_attribute, expression. attrs. iter( ) ) ;
682+
684683 match expression. node {
685684 ExprKind :: Box ( ref subexpression) => {
686685 visitor. visit_expr ( subexpression)
@@ -719,8 +718,8 @@ pub fn walk_expr<'a, V: Visitor<'a>>(visitor: &mut V, expression: &'a Expr) {
719718 visitor. visit_expr ( subexpression) ;
720719 visitor. visit_ty ( typ)
721720 }
722- ExprKind :: Let ( ref pats , ref scrutinee) => {
723- walk_list ! ( visitor, visit_pat, pats ) ;
721+ ExprKind :: Let ( ref pat , ref scrutinee) => {
722+ visitor. visit_pat ( pat ) ;
724723 visitor. visit_expr ( scrutinee) ;
725724 }
726725 ExprKind :: If ( ref head_expression, ref if_block, ref optional_else) => {
@@ -831,10 +830,10 @@ pub fn walk_param<'a, V: Visitor<'a>>(visitor: &mut V, param: &'a Param) {
831830}
832831
833832pub fn walk_arm < ' a , V : Visitor < ' a > > ( visitor : & mut V , arm : & ' a Arm ) {
834- walk_list ! ( visitor, visit_pat, & arm. pats ) ;
835- if let Some ( ref e ) = & arm . guard {
836- visitor . visit_expr ( e ) ;
837- }
833+ visitor. visit_pat ( & arm. pat ) ;
834+ // HACK(or_patterns; Centril | dlrobertson):
835+ // If you change this, also change the hack in `lowering.rs`.
836+ walk_list ! ( visitor , visit_expr , & arm . guard ) ;
838837 visitor. visit_expr ( & arm. body ) ;
839838 walk_list ! ( visitor, visit_attribute, & arm. attrs) ;
840839}
0 commit comments