Stream ODR types

Richard Biener rguenther@suse.de
Mon Sep 15 07:36:00 GMT 2014


On Fri, 12 Sep 2014, Jan Hubicka wrote:

> > > 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?

They are not merged if they have different name.

Richard.



More information about the Gcc-patches mailing list