On Mon, Sep 20, 2021 at 02:37:03PM -0400, Marek Polacek wrote: > > So, wouldn't be this better specified as > > Wno-attributes= > > Common Joined RejectNegative > > (not sure if RejectNegative is actually needed for an option > > starting with Wno- )? > > Looks like RejectNegative is not needed. I could do that, but I think > it regresses the diagnostic: > > error: unrecognized command-line option '-Wattributes=attr::' > vs > error: arguments ignored for ‘-Wattributes=’; use ‘-Wno-attributes=’ instead > > I prefer the latter. (I've changed the warning into error.)
Ok. > > > +/* { dg-additional-options "-std=c++11" { target c++ } } */ > > > +/* { dg-additional-options "-Wno-attributes=company::,yoyodyne::attr" } > > > */ > > > +/* { dg-additional-options > > > "-Wno-attributes=c1::attr,c1::attr,c1::__attr__" } */ > > > +/* { dg-additional-options "-Wno-attributes=clang" } */ > > > +/* { dg-additional-options "-Wno-attributes=c2::,c2::attr" } */ > > > +/* { dg-additional-options "-Wno-attributes=c3::attr,c3::" } */ > > > +/* { dg-additional-options "-Wno-attributes=x::," } */ > > > > Should the above be accepted (I mean trailing , ?) What does that mean? > > I'm thinking it should: the arguments to -Wno-attributes= could be > generated by a tool so accepting the trailing , might help, like in > enums etc. I don't think we allow that for any other options that accept a list of something (except maybe -W{p,c,a,l}, those just pass the args through). Generating a list that has comma separation only in between items and not at the end is trivial. Jakub