[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#642980: shorter example



Control: found -1 4.6.4-1
Control: retitle -1 Bug box in interpret_loop_phi, at tree-scalar-evolution.c:1645

The bug is also related to overflow checks (-gnato). The following
source triggers it on falla.debian.org, but only with -O1. An eventual
patch will have to be tested on asis with -O2 too.

gcc-4.6 -c -O1 -gnato p.adb
+===========================GNAT BUG DETECTED==============================+
| 4.6.4 (x86_64-pc-kfreebsd-gnu) GCC error:                                |
| in interpret_loop_phi, at tree-scalar-evolution.c:1645                   |
| Error detected around p.adb:14:1                         .

package P is
   type A is array (Positive range <>) of Integer;
   Nil_A : constant A;
   procedure Proc;
private
   Nil_A : constant A := (1 .. 0 => 0);
end P;
package body P is
   function One (L : integer) return Integer is
   begin
      return 1;
   end One;
   procedure Proc is
      I : Integer := 1;
   begin
      for J in Nil_A'Range loop
         I := I + 1;
         I := I + One (Nil_A (J));
       end loop;
  end Proc;
end P;


Reply to: