1with Pack13_Pkg; 2 3package Pack13 is 4 5 package Four_Bits is new Pack13_Pkg (4); 6 package Thirty_Two_Bits is new Pack13_Pkg (32); 7 8 type Object is private; 9 type Object_Ptr is access all Object; 10 11 procedure Set (Myself : Object_Ptr; The_Data : Thirty_Two_Bits.Object); 12 13private 14 15 type Some_Record is record 16 Data_1 : Thirty_Two_Bits.Object; 17 Data_2 : Thirty_Two_Bits.Object; 18 Small_Data : Four_Bits.Object; 19 end record; 20 for Some_Record use record 21 Data_1 at 0 range 0 .. 31; 22 Data_2 at 4 range 0 .. 31; 23 Small_Data at 8 range 0 .. 3; 24 end record; 25 26 type Object is record 27 Something : Some_Record; 28 end record; 29 for Object use record 30 Something at 0 range 0 .. 67; 31 end record; 32 33end Pack13; 34