check is_ident before parse_ident
This commit is contained in:
parent
8c39ac9ecc
commit
a01f49e7f3
@ -387,8 +387,8 @@ fn recover_missing_kw_before_item(&mut self) -> PResult<'a, ()> {
|
||||
let span = if is_pub { self.prev_token.span.to(ident_span) } else { ident_span };
|
||||
let insert_span = ident_span.shrink_to_lo();
|
||||
|
||||
let ident = if (!is_const
|
||||
|| self.look_ahead(1, |t| *t == token::OpenDelim(Delimiter::Parenthesis)))
|
||||
let ident = if self.token.is_ident()
|
||||
&& (!is_const || self.look_ahead(1, |t| *t == token::OpenDelim(Delimiter::Parenthesis)))
|
||||
&& self.look_ahead(1, |t| {
|
||||
[
|
||||
token::Lt,
|
||||
|
2
tests/ui/parser/ice-issue-127600.rs
Normal file
2
tests/ui/parser/ice-issue-127600.rs
Normal file
@ -0,0 +1,2 @@
|
||||
const!(&raw mut a);
|
||||
//~^ ERROR expected identifier, found `!`
|
8
tests/ui/parser/ice-issue-127600.stderr
Normal file
8
tests/ui/parser/ice-issue-127600.stderr
Normal file
@ -0,0 +1,8 @@
|
||||
error: expected identifier, found `!`
|
||||
--> $DIR/ice-issue-127600.rs:1:6
|
||||
|
|
||||
LL | const!(&raw mut a);
|
||||
| ^ expected identifier
|
||||
|
||||
error: aborting due to 1 previous error
|
||||
|
Loading…
Reference in New Issue
Block a user