about summary refs log tree commit diff
path: root/src/libsyntax/parse/parser.rs
diff options
context:
space:
mode:
authorPaul Stansifer <paul.stansifer@gmail.com>2012-08-22 18:16:32 -0700
committerPaul Stansifer <paul.stansifer@gmail.com>2012-08-23 11:14:15 -0700
commit89bbaff84fed6e6796c82f5a9fd200e693d47beb (patch)
treeed60df44ef363f20a8ae5cf66dfde8f501cce3d4 /src/libsyntax/parse/parser.rs
parent11b640d990220dc9386a300a10b2147d777d5452 (diff)
downloadrust-89bbaff84fed6e6796c82f5a9fd200e693d47beb.tar.gz
rust-89bbaff84fed6e6796c82f5a9fd200e693d47beb.zip
`m1!{...}` is now forbidden. Use `m1!(...)` instead.
Diffstat (limited to 'src/libsyntax/parse/parser.rs')
-rw-r--r--src/libsyntax/parse/parser.rs25
1 files changed, 7 insertions, 18 deletions
diff --git a/src/libsyntax/parse/parser.rs b/src/libsyntax/parse/parser.rs
index 5454d9ac0d9..3ee86bcae77 100644
--- a/src/libsyntax/parse/parser.rs
+++ b/src/libsyntax/parse/parser.rs
@@ -990,15 +990,10 @@ struct parser {
             /* `!`, 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 @@ struct parser {
             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,