blob: b391950b372f81e58206654a59f61b2a2c78589b [file] [log] [blame]
-- { dg-do compile }
-- { dg-options "-O" }
package Opt4 is
type Rec (D : Boolean := False) is record
case D is
when False => null;
when True => I : Integer;
end case;
end record;
Null_Rec : constant Rec := (D => False);
type I1 is limited interface;
type I2 is limited interface;
function Func (Data : I2) return Rec is abstract;
type Ext is limited new I1 and I2 with null record;
overriding function Func (Data : Ext) return Rec is (Null_Rec);
end Opt4;