> On Tue, Jan 7, 2020 at 3:26 PM Jan Hubicka <hubi...@ucw.cz> wrote:
> >
> > > Err - Optimization also lists it in some -help section?  It's a Warning
> > > option and certainly we don't handle per-function Warnings in general
> > > (with LTO) even though we have #pragma GCC diagnostic, no?
> > >
> > > I'm not sure why we force warn_inline to zero with -O0, it seems much
> > > better to guard false warnings in some other way for -O0?
> >
> > Well, we can do that with warn_inline, but in general we do want to
> > stream late warnings (so things like -Wmaybe-uninitialized works sort of
> > as expected for -flto). So I guess we want way to mark option as part of
> > TARGET_OPTIMIZATION_NODE even though it is not realy an optimization
> > option but parameter, warning or semantic change.
> 
> Given all warning options can be enabled/disabled via #pragma GCC diagnostic
> all Warning annotated options should be implicitely 'Optimization' for
> the purpose
> of LTO streaming then?

Well, perhaps they can be marked but for late optimizations this does
not work
__attribute__ ((warning("haha"))) test() { }
#pragma gcc diagnostic ignore "-Wattribute-warning"
test2() { test(); }

We have many warning options but only few of them are late - it would be
nice to have them explicitly marked somehow IMO (by design and to avoid
streaming a lot of useless flags)

honza

> 
> Richard.
> 
> > Honza

Reply via email to