3 procedure Abstract_With_Anonymous_Result is
6 type I is abstract tagged null record;
7 type Acc_I_Class is access all I'Class;
8 function Func (V : I) return access I'Class is abstract;
9 procedure Proc (V : access I'Class);
10 type New_I is new I with null record;
11 function Func (V : New_I) return access I'Class;
17 procedure Proc (V : access I'Class) is begin null; end Proc;
19 function Func (V : New_I) return access I'Class is
28 New_I_Obj : aliased New_I;
30 procedure Proc2 (V : access I'Class) is
32 Proc (Func (V.all)); -- Call to Func causes gigi abort 122
36 Proc2 (New_I_Obj'Access);
37 end Abstract_With_Anonymous_Result;