with Ada.Tags.Generic_Dispatching_Constructor; | |
package Generic_Disp_Pkg is | |
type Iface is interface; | |
function Constructor (I : not null access Integer) return Iface is abstract; | |
function Dispatching_Constructor | |
is new Ada.Tags.Generic_Dispatching_Constructor | |
(T => Iface, | |
Parameters => Integer, | |
Constructor => Constructor); | |
type DT is new Iface with null record; | |
overriding | |
function Constructor (I : not null access Integer) return DT; | |
end Generic_Disp_Pkg; |