Update concepts branch to revision 131834
[official-gcc.git] / gcc / testsuite / gnat.dg / pack4.adb
blob2c73e1dd4ea3b6cf4c01df42cbaeb9ae11bf06a0
1 -- { dg-do run }
3 procedure Pack4 is
5 type Time_T is record
6 Hour : Integer;
7 end record;
9 type Date_And_Time_T is record
10 Date : Integer;
11 Time : Time_T;
12 end record;
14 pragma Pack(Date_And_Time_T);
16 procedure
17 Assign_Hour_Of (T : out Time_T)
19 begin
20 T.Hour := 44;
21 end;
23 procedure
24 Clobber_Hour_Of (DT: out Date_And_Time_T)
26 begin
27 Assign_Hour_Of (Dt.Time);
28 end;
30 DT : Date_And_Time_T;
32 begin
33 DT.Time.Hour := 22;
34 Clobber_Hour_Of (DT);
35 if DT.Time.Hour /= 44 then
36 raise Program_Error;
37 end if;
38 end;