@@ -164,25 +164,29 @@ impl<'a> Parser<'a> {
164164 let delim = args. delim ( ) ;
165165 let hi = self . prev_token . span ;
166166
167- let style =
168- if delim == token:: Brace { MacStmtStyle :: Braces } else { MacStmtStyle :: NoBraces } ;
167+ let style = match delim {
168+ Some ( token:: Brace ) => MacStmtStyle :: Braces ,
169+ Some ( _) => MacStmtStyle :: NoBraces ,
170+ None => unreachable ! ( ) ,
171+ } ;
169172
170173 let mac = MacCall { path, args, prior_type_ascription : self . last_type_ascription } ;
171174
172- let kind =
173- if ( delim == token:: Brace && self . token != token:: Dot && self . token != token:: Question )
174- || self . token == token:: Semi
175- || self . token == token:: Eof
176- {
177- StmtKind :: MacCall ( P ( MacCallStmt { mac, style, attrs, tokens : None } ) )
178- } else {
179- // Since none of the above applied, this is an expression statement macro.
180- let e = self . mk_expr ( lo. to ( hi) , ExprKind :: MacCall ( mac) , AttrVec :: new ( ) ) ;
181- let e = self . maybe_recover_from_bad_qpath ( e, true ) ?;
182- let e = self . parse_dot_or_call_expr_with ( e, lo, attrs. into ( ) ) ?;
183- let e = self . parse_assoc_expr_with ( 0 , LhsExpr :: AlreadyParsed ( e) ) ?;
184- StmtKind :: Expr ( e)
185- } ;
175+ let kind = if ( style == MacStmtStyle :: Braces
176+ && self . token != token:: Dot
177+ && self . token != token:: Question )
178+ || self . token == token:: Semi
179+ || self . token == token:: Eof
180+ {
181+ StmtKind :: MacCall ( P ( MacCallStmt { mac, style, attrs, tokens : None } ) )
182+ } else {
183+ // Since none of the above applied, this is an expression statement macro.
184+ let e = self . mk_expr ( lo. to ( hi) , ExprKind :: MacCall ( mac) , AttrVec :: new ( ) ) ;
185+ let e = self . maybe_recover_from_bad_qpath ( e, true ) ?;
186+ let e = self . parse_dot_or_call_expr_with ( e, lo, attrs. into ( ) ) ?;
187+ let e = self . parse_assoc_expr_with ( 0 , LhsExpr :: AlreadyParsed ( e) ) ?;
188+ StmtKind :: Expr ( e)
189+ } ;
186190 Ok ( self . mk_stmt ( lo. to ( hi) , kind) )
187191 }
188192
0 commit comments