3 procedure frame_overflow is
5 type Bitpos_Range_T is new Positive;
6 type Bitmap_Array_T is array (Bitpos_Range_T) of Boolean;
8 type Bitmap_T is record
9 Bits : Bitmap_Array_T := (others => False);
12 function -- { dg-error "too large" "" }
13 Set_In (Bitmap : Bitmap_T; Bitpos : Bitpos_Range_T) return Bitmap_T
15 Result: Bitmap_T := Bitmap;
17 Result.Bits (Bitpos) := True;
21 function -- { dg-error "too large" "" }
22 Negate (Bitmap : Bitmap_T) return Bitmap_T is
25 for E in Bitpos_Range_T loop
26 Result.Bits (E) := not Bitmap.Bits (E);