Parse-declaration
Parse a declaration.
- Signature
(parse-declaration parstate) → (mv erp decl span new-parstate)
- Arguments
- parstate — Guard (parstatep parstate).
- Returns
- decl — Type (declp decl).
- span — Type (spanp span).
- new-parstate — Type (parstatep new-parstate), given (parstatep parstate).
A declaration is either an assert declaration,
recognized by the starting _Static_assert keyword,
or a list of one or more declaration specifiers
optionally followed by a list of one or more initializer declarators
and mandatorily followed by a semicolon.
If GCC extensions are supported,
we must allow for an __extension__ keyword at the beginning.
See the ABNF grammar rule for declaration.