-- Chapter 28 - Program 3 generic type LIMPRIV is limited private; -- Limited private type PRIV is private; -- Private type DISCRETE_TYPE is (<>); -- Discrete type INT_TYPE is range <>; -- Integer type FLOAT_TYPE is digits <>; -- Floating point type FIXED_TYPE is delta <>; -- Fixed point procedure AllGener; procedure AllGener is begin null; end AllGener; generic type LIMPRIV is limited private; type PRIV is private; type DISCRETE_TYPE is (<>); type INT_TYPE is range <>; type FLOAT_TYPE is digits <>; type FIXED_TYPE is delta <>; procedure AllUsed(Data_In : LIMPRIV; More_Dat : PRIV; List_Of : DISCRETE_TYPE; Index : INT_TYPE; Real_Dat : FLOAT_TYPE; Fix_Dat : FIXED_TYPE); procedure AllUsed(Data_In : LIMPRIV; More_Dat : PRIV; List_Of : DISCRETE_TYPE; Index : INT_TYPE; Real_Dat : FLOAT_TYPE; Fix_Dat : FIXED_TYPE) is Index2 : INT_TYPE := 4; Index3 : INTEGER := 7; type NEW_INTEGER is new INTEGER range 12..34; Small_Int : NEW_INTEGER := 17; begin Index2 := Index + INT_TYPE(Index3) + INT_TYPE(Small_Int); end AllUsed; -- Result of execution -- (No results, this is not executable)