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.