package body Limited3_Pkg is function F (I : Integer) return Rec is begin return (D => False, I => I); end; function FS (X : Integer) return Var_Rec is begin return (X, (1..X => '?'), Tag => <>); end FS; function F2 (I : Integer) return Rec2 is begin if I > 0 then return (D => False, I => I); else return (D => True, L => new Limited_Rec); end if; end; end Limited3_Pkg;