Changes in C++ FE regarding pedwarns to be errors are harmful

Jason Merrill jason@redhat.com
Fri Jan 11 17:06:00 GMT 2008


Mark Mitchell wrote:
  > I think Jason's input would be helpful.  I remember having a discussion
> about this years ago (1998?), but I don't remember the complete
> rationale.  I think the idea was that we wanted many of these things
> (ugly old ARM-era C++ things) to be errors, but didn't want to make it
> impossible to compile old code.  They're not "pedantic" in the sense
> that you only care if you're trying extremely hard to be ISO-conformant;
> they're things no sane C++ programmer would do at this point, but we
> want to support for legacy C++ code.

Right. -fpermissive was a kludgey way to make these things errors by 
default but still allow them to compile.

> I don't see any a priori problem with changing to match the C front end.
>  We could of course change some of the pedwarns into errors if we really
> think they ought to be errors.  Or, some of them could be ordinary
> warnings when not -pedantic, and pedwarns when -pedantic.

Sounds like we want a separate category of diagnostic with the current 
C++ pedwarn semantics so that we can change pedwarns themselves back to 
a warning by default.

Jason



More information about the Gcc mailing list