blob: 7a40d3c23d0fdedf992a269060a74bfa7954c335 [file] [log] [blame]
-- { dg-do run }
-- { dg-options "-gnatws" }
pragma Assertion_Policy (Check);
procedure assert1 is
Int128 : constant Boolean := Standard'Max_Integer_Size = 128;
type p1 is array (1 .. 113) of Boolean;
pragma Pack (p1);
type p2 is array (1 .. 13) of Boolean;
pragma Pack (p2);
type p3 is array (1 .. 113) of Boolean;
pragma Pack (p3);
for p3'size use 113;
type p4 is array (1 .. 13) of Boolean;
pragma Pack (p4);
for p4'size use 13;
v1 : p1;
v2 : p2;
v3 : p3;
v4 : p4;
begin
pragma Assert (p1'Size = (if Int128 then 113 else 120));
pragma Assert (p2'Size = 13);
pragma Assert (p3'Size = 113);
pragma Assert (p4'Size = 13);
pragma Assert (p1'Value_Size = (if Int128 then 113 else 120));
pragma Assert (p2'Value_Size = 13);
pragma Assert (p3'Value_Size = 113);
pragma Assert (p4'Value_Size = 13);
pragma Assert (p1'Object_Size = (if Int128 then 128 else 120));
pragma Assert (p2'Object_Size = 16);
pragma Assert (p3'Object_Size = (if Int128 then 128 else 120));
pragma Assert (p4'Object_Size = 16);
pragma Assert (v1'Size = (if Int128 then 128 else 120));
pragma Assert (v2'Size = 16);
pragma Assert (v3'Size = (if Int128 then 128 else 120));
pragma Assert (v4'Size = 16);
null;
end;