Skip to content

Commit 4e2d1b9

Browse files
committed
Emit DocComment in bad location error but continue parsing struct fields
1 parent df357b2 commit 4e2d1b9

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

src/libsyntax/parse/parser.rs

+10-2
Original file line numberDiff line numberDiff line change
@@ -5419,8 +5419,16 @@ impl<'a> Parser<'a> {
54195419
self.bump();
54205420
}
54215421
token::CloseDelim(token::Brace) => {}
5422-
token::DocComment(_) => return Err(self.span_fatal_err(self.span,
5423-
Error::UselessDocComment)),
5422+
token::DocComment(_) => {
5423+
let mut err = self.span_fatal_err(self.span, Error::UselessDocComment);
5424+
if self.eat(&token::Comma) ||
5425+
self.look_ahead(1, |t| *t == token::CloseDelim(token::Brace))
5426+
{
5427+
err.emit();
5428+
} else {
5429+
return Err(err);
5430+
}
5431+
}
54245432
_ => return Err(self.span_fatal_help(self.span,
54255433
&format!("expected `,`, or `}}`, found `{}`", self.this_token_to_string()),
54265434
"struct fields should be separated by commas")),

0 commit comments

Comments
 (0)