generic type Value is private; Init_Val : Value; package Opt25_Pkg2 is type Stack (Size : Natural) is private; function Default_Stack return Stack; private type Value_Array is array (Natural range <>) of Value; type Stack (Size : Natural) is record Store : Value_Array (1 .. Size); end record; Default_Stack_Var : Stack (10); end Opt25_Pkg2;