1-- { dg-do run } 2 3with Interfaces; use Interfaces; 4procedure Conv_Real is 5 Small : constant := 10.0**(-9); 6 type Time_Type is delta Small range -2**63 * Small .. (2**63-1) * Small; 7 for Time_Type'Small use Small; 8 for Time_Type'Size use 64; 9 procedure Cache (Seconds_Per_GDS_Cycle : in Time_Type) is 10 Cycles_Per_Second : constant Time_Type := (1.0 / Seconds_Per_GDS_Cycle); 11 begin 12 if Integer_32 (Seconds_Per_GDS_Cycle * Cycles_Per_Second) /= 1 then 13 raise Program_Error; 14 end if; 15 end Cache; 16begin 17 Cache (0.035); 18end; 19