https://gcc.gnu.org/bugzilla/show_bug.cgi?id=123583

--- Comment #2 from Senthil Kumar Selvaraj <saaadhu at gcc dot gnu.org> ---
This appears to be a regression introduced by PR 67784.

When c_parser_maybe_reclassify_token peeks the next token, it is correctly
classified as C_ID_ADDRSPACE, but it proceeds to override and set id_kind to
C_ID_ID, causing the error. It does refuse to override if token->id_kind is 
C_ID_CLASSNAME though, suggesting C_ID_ADDRSPACE was mistakenly overlooked?

As PR 67784 only appears to try and reclassify identifiers that got
token->id_kind mixed up between C_ID_ID and C_ID_TYPENAME, perhaps do
reclassification only for those two kinds?

The attached (tentative) patch does just that, and fixes the problem. Not yet
regtested.

Reply via email to