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

--- Comment #2 from cookevillain at yahoo dot com ---
There is nothing obvious about the intent of the Standard here (see the
definition of type name scope introduced into the standard to handle a similar
formal issue). Grammatically, parameter declarations are not identical to
ordinary declarations so  6.7.6.3(18) is only tangentially relevant here (where
tag declarations are considered). 

The Standard is supposed to be a formal specification of the language, so if
the implementors feel they implement what is intended and not what is written
this creates a problem for compiler users (especially those of us who write
formal verification tools). I have no problem accepting that gcc implements a
version of C11 that is better than the standard one, however 'perverse' is bit
too strong a term, maybe 'literal' is more appropriate.

Reply via email to