1
Fork 0

Auto merge of #57251 - petrochenkov:reregr, r=varkor

syntax: Fix regression in diagnostics for patterns in trait method parameters

Fixes https://github.com/rust-lang/rust/issues/55036
This commit is contained in:
bors 2019-01-02 09:24:10 +00:00
commit d3704932bd
3 changed files with 15 additions and 2 deletions

View file

@ -1878,7 +1878,8 @@ impl<'a> Parser<'a> {
let parser_snapshot_before_ty = self.clone();
self.eat_incorrect_doc_comment("a method argument's type");
let mut ty = self.parse_ty();
if ty.is_ok() && self.token == token::Colon {
if ty.is_ok() && self.token != token::Comma &&
self.token != token::CloseDelim(token::Paren) {
// This wasn't actually a type, but a pattern looking like a type,
// so we are going to rollback and re-parse for recovery.
ty = self.unexpected();