GIMPLE types merging in LTO compiler

2010-05-14 Thread Eric Botcazou
Hi, most of the remaining warnings issued by the LTO compiler on object files compiled from Ada are caused by a small flaw in the GIMPLE types merging process: it is done before symbols are merged so compatible types (typically domain types of arrays) whose distinguishing features depend on

Re: GIMPLE types merging in LTO compiler

2010-05-14 Thread Richard Guenther
On Fri, May 14, 2010 at 1:24 PM, Eric Botcazou ebotca...@adacore.com wrote: Hi, most of the remaining warnings issued by the LTO compiler on object files compiled from Ada are caused by a small flaw in the GIMPLE types merging process: it is done before symbols are merged so compatible types

Re: GIMPLE types merging in LTO compiler

2010-05-14 Thread Eric Botcazou
Ugh. This presents a chicken-and-egg problem to symbol resolution and type-merging. To be clear, the issue is sth like unit1 - int size; int a[size]; unit2 -- extern int size; extern a[size]; ? And you get the a's merged but a diagnostic about mismatched types? Yes,

Re: GIMPLE types merging in LTO compiler

2010-05-14 Thread Richard Guenther
On Fri, May 14, 2010 at 9:33 PM, Eric Botcazou ebotca...@adacore.com wrote: Ugh.  This presents a chicken-and-egg problem to symbol resolution and type-merging. To be clear, the issue is sth like unit1 - int size; int a[size]; unit2 -- extern int size; extern a[size]; ?  

Re: GIMPLE types merging in LTO compiler

2010-05-14 Thread Jan Hubicka
On Fri, May 14, 2010 at 9:33 PM, Eric Botcazou ebotca...@adacore.com wrote: Ugh.  This presents a chicken-and-egg problem to symbol resolution and type-merging. To be clear, the issue is sth like unit1 - int size; int a[size]; unit2 -- extern int size; extern