| -- { dg-do run } |
| |
| procedure Sizetype2 is |
| |
| function Ident_Int (X : Integer) return Integer is |
| begin |
| return X; |
| end; |
| |
| type A is array (Integer range <>) of Boolean; |
| subtype T1 is A (Ident_Int (- 6) .. Ident_Int (Integer'Last - 4)); |
| subtype T2 is A (- 6 .. Ident_Int (Integer'Last - 4)); |
| subtype T3 is A (Ident_Int (- 6) .. Integer'Last - 4); |
| |
| begin |
| if T1'Size /= 17179869200 then |
| raise Program_Error; |
| end if; |
| |
| if T2'Size /= 17179869200 then |
| raise Program_Error; |
| end if; |
| |
| if T3'Size /= 17179869200 then |
| raise Program_Error; |
| end if; |
| end; |