diff options
| author | Patrick Walton <pcwalton@mimiga.net> | 2012-08-25 16:06:35 -0700 |
|---|---|---|
| committer | Patrick Walton <pcwalton@mimiga.net> | 2012-08-25 16:06:35 -0700 |
| commit | d77acf7d076fdd7c0b5cf7fae880728c0f6f80e1 (patch) | |
| tree | 932b4c36e07a54454444c3905b833cb7aa6b10be /src/libsyntax/parse/parser.rs | |
| parent | 8ef455190494d2fd9a6bb013efd2e59622af2bc4 (diff) | |
| download | rust-d77acf7d076fdd7c0b5cf7fae880728c0f6f80e1.tar.gz rust-d77acf7d076fdd7c0b5cf7fae880728c0f6f80e1.zip | |
libsyntax: Accept ',' to separate struct fields. Closes #3263.
Diffstat (limited to 'src/libsyntax/parse/parser.rs')
| -rw-r--r-- | src/libsyntax/parse/parser.rs | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/src/libsyntax/parse/parser.rs b/src/libsyntax/parse/parser.rs index 84fd0d8cdc9..840791d840b 100644 --- a/src/libsyntax/parse/parser.rs +++ b/src/libsyntax/parse/parser.rs @@ -2698,7 +2698,19 @@ struct parser { !self.is_any_keyword(copy self.token)) && !self.token_is_pound_or_doc_comment(self.token) { let a_var = self.parse_instance_var(vis); - self.expect(token::SEMI); + match self.token { + token::SEMI | token::COMMA => { + self.bump(); + } + token::RBRACE => {} + _ => { + self.span_fatal(copy self.span, + fmt!("expected `;`, `,`, or '}' but \ + found `%s`", + token_to_str(self.reader, + self.token))); + } + } return a_var; } else { let m = self.parse_method(vis); |
