Stream ODR types

Jan Hubicka hubicka@ucw.cz
Fri Sep 12 16:46:00 GMT 2014


> > For ODR warnings and TBAA I think i want other types, too.  But yep, we need to handle
> > gracefuly component types that does not have names and we could drop names of types
> > and handle them as component types as it seems fit.
> > 
> > OK, so if you agree, I will go ahead with this patch and we can resolve these details
> > incrementally.
> 
> Yes, but please disable !record type handing for now.
Bugzilla already has case where we report useful warning about union. I suppose
but unions and arrays would also make sense.  I will test patch limiting for
records for now and lets see how much difference it makes (real world warnings
I saw was all class types IMO)

The confused uint8 warning was my local hack in the - if warning happened on
component type I went into type it was constructed from. The anonymous arrays
indeed have different size.  Mainline just reports type difference without
giving reason and while analyzing strange reports on libreoffice I added this
hoping to get extra info. I suppose I should extent warning of type mismatch
to be able to report array size difference.

Note that uint8 mangling is same as char's (i.e. typedefs do not matter). So
stremaing those should not be terribly expensive, but we can probably just
establish equivalency by main variant as these ought to be reliably merged?

Honza
> 
> Richard.



More information about the Gcc-patches mailing list