> Not obvious enough, it seems: this patch broke gnat.dg/lto* tests at
> least on i386-pc-solaris2.10.  E.g.
> 
> FAIL: gnat.dg/lto1.adb (test for excess errors)
> WARNING: gnat.dg/lto1.adb compilation failed to produce executable
> 
> FAIL: gnat.dg/lto1.adb (test for excess errors)
> Excess errors:
> /vol/gcc/src/hg/trunk/solaris/gcc/testsuite/gnat.dg/lto1_pkg.adb:23:1:
> error: TYPE_MIN_VALUE is not constant 

TYPE_MIN_VALUE can be arbitrary in Ada, with or without LTO.  For

package Q is

   function LB return Natural;
   function UB return Natural;

end Q;
with Q;

package P is

   type Arr1 is array (Natural range <>) of Boolean;

   subtype Arr2 is Arr1 (Q.LB .. Q.UB);

end P;

the TYPE_DOMAIN of Arr2 is

    domain <integer_type 0x7ffff69be000 type <integer_type 0x7ffff6d0e0a8 
sizetype>
        sizes-gimplified visited DI size <integer_cst 0x7ffff6d0abb8 64> unit 
size <integer_cst 0x7ffff6d0abd0 8>
        align 64 symtab 0 alias set -1 canonical type 0x7ffff69be000 precision 
64 min <nop_expr 0x7ffff69bd000> max <cond_expr 0x7ffff69b9420>

-- 
Eric Botcazou

Reply via email to