]> git.lizzy.rs Git - rust.git/commitdiff
`m1!{...}` is now forbidden. Use `m1!(...)` instead.
authorPaul Stansifer <paul.stansifer@gmail.com>
Thu, 23 Aug 2012 01:16:32 +0000 (18:16 -0700)
committerPaul Stansifer <paul.stansifer@gmail.com>
Thu, 23 Aug 2012 18:14:15 +0000 (11:14 -0700)
src/libsyntax/parse/parser.rs

index 5454d9ac0d963f135712f5a26cfdbcc50f00e444..3ee86bcae77e1ce823284f9cb6e66d8e332948b5 100644 (file)
@@ -990,15 +990,10 @@ fn parse_bottom_expr() -> pexpr {
             /* `!`, as an operator, is prefix, so we know this isn't that */
             if self.token == token::NOT {
                 self.bump();
-                let tts = match self.token {
-                  token::LPAREN | token::LBRACE | token::LBRACKET => {
-                    let ket = token::flip_delimiter(self.token);
-                    self.parse_unspanned_seq(copy self.token, ket,
-                                             seq_sep_none(),
-                                             |p| p.parse_token_tree())
-                  }
-                  _ => self.fatal(~"expected open delimiter")
-                };
+                let tts = self.parse_unspanned_seq(
+                    token::LPAREN, token::RPAREN, seq_sep_none(),
+                    |p| p.parse_token_tree());
+
                 let hi = self.span.hi;
 
                 return pexpr(self.mk_mac_expr(
@@ -3254,15 +3249,9 @@ fn parse_item_or_view_item(+attrs: ~[attribute], items_allowed: bool)
             let pth = self.parse_path_without_tps();
             self.expect(token::NOT);
             let id = self.parse_ident();
-            let tts = match self.token {
-              token::LPAREN | token::LBRACE | token::LBRACKET => {
-                let ket = token::flip_delimiter(self.token);
-                self.parse_unspanned_seq(copy self.token, ket,
-                                         seq_sep_none(),
-                                         |p| p.parse_token_tree())
-              }
-              _ => self.fatal(~"expected open delimiter")
-            };
+            let tts = self.parse_unspanned_seq(
+                token::LPAREN, token::RPAREN, seq_sep_none(),
+                |p| p.parse_token_tree());
             let m = ast::mac_invoc_tt(pth, tts);
             let m: ast::mac = {node: m,
                                span: {lo: self.span.lo,