summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gnat.dg/frame_overflow.adb
blob: 1e7405fa5258c89751a79a3c959e9f7f22f65eb7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
-- { dg-do compile }

package body Frame_Overflow is

   function -- { dg-error "too large" }
     Set_In (Bitmap : Bitmap_T; Bitpos : Bitpos_Range_T)  return Bitmap_T
   is
      Result: Bitmap_T := Bitmap;
   begin
      Result.Bits (Bitpos) := True;
      return Result;
   end;

   function -- { dg-error "too large" }
     Negate (Bitmap : Bitmap_T) return Bitmap_T
   is
      Result: Bitmap_T;
   begin
      for E in Bitpos_Range_T loop
        Result.Bits (E) := not Bitmap.Bits (E);
      end loop;
      return Result;
  end;

end Frame_Overflow;