Skip to content

Commit fc2b330

Browse files
committed
---
yaml --- r: 36262 b: refs/heads/try2 c: f7960ac h: refs/heads/master v: v3
1 parent 7515fdf commit fc2b330

File tree

2 files changed

+19
-8
lines changed

2 files changed

+19
-8
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ refs/heads/snap-stage3: eb8fd119c65c67f3b1b8268cc7341c22d39b7b61
55
refs/heads/try: d324a424d8f84b1eb049b12cf34182bda91b0024
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b
8-
refs/heads/try2: 4e1ce014c831974738af62dce4fd699c20a001ff
8+
refs/heads/try2: f7960ac5494518268626e176481c0644345d2c35
99
refs/heads/incoming: d9317a174e434d4c99fc1a37fd7dc0d2f5328d37
1010
refs/heads/dist-snap: 22efa39382d41b084fde1719df7ae8ce5697d8c9
1111
refs/tags/release-0.2: c870d2dffb391e14efb05aa27898f1f6333a9596

branches/try2/src/libsyntax/parse/parser.rs

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1082,10 +1082,15 @@ impl Parser {
10821082
/* `!`, as an operator, is prefix, so we know this isn't that */
10831083
if self.token == token::NOT {
10841084
self.bump();
1085-
let tts = self.parse_unspanned_seq(
1086-
token::LPAREN, token::RPAREN, seq_sep_none(),
1087-
|p| p.parse_token_tree());
1088-
1085+
let tts = match self.token {
1086+
token::LPAREN | token::LBRACE | token::LBRACKET => {
1087+
let ket = token::flip_delimiter(self.token);
1088+
self.parse_unspanned_seq(copy self.token, ket,
1089+
seq_sep_none(),
1090+
|p| p.parse_token_tree())
1091+
}
1092+
_ => self.fatal(~"expected open delimiter")
1093+
};
10891094
let hi = self.span.hi;
10901095
10911096
return self.mk_mac_expr(
@@ -3412,9 +3417,15 @@ impl Parser {
34123417
let pth = self.parse_path_without_tps();
34133418
self.expect(token::NOT);
34143419
let id = self.parse_ident();
3415-
let tts = self.parse_unspanned_seq(
3416-
token::LPAREN, token::RPAREN, seq_sep_none(),
3417-
|p| p.parse_token_tree());
3420+
let tts = match self.token {
3421+
token::LPAREN | token::LBRACE | token::LBRACKET => {
3422+
let ket = token::flip_delimiter(self.token);
3423+
self.parse_unspanned_seq(copy self.token, ket,
3424+
seq_sep_none(),
3425+
|p| p.parse_token_tree())
3426+
}
3427+
_ => self.fatal(~"expected open delimiter")
3428+
};
34183429
let m = ast::mac_invoc_tt(pth, tts);
34193430
let m: ast::mac = {node: m,
34203431
span: {lo: self.span.lo,

0 commit comments

Comments
 (0)