1with Ada.Finalization; 2 3package Access8_Pkg is 4 5 type Discriminant is record 6 Component : Integer := 6; 7 end record; 8 9 type Object (D : access Discriminant) 10 is tagged limited private; 11 12 function Get return Object; 13 function Get_Access return access Object; 14private 15 type Object (D : access Discriminant) 16 is new Ada.Finalization.Limited_Controlled with null record; 17 overriding procedure Initialize (O : in out Object); 18 overriding procedure Finalize (O : in out Object); 19end; 20