1-- { dg-do run } 2 3with Modular3_Pkg; use Modular3_Pkg; 4 5procedure Modular3 is 6 7 function F1 (A : Int16_T) return Int16_T is 8 begin 9 return A + 128; 10 end; 11 12 function F2 (B : Mod16_T) return Mod16_T is 13 begin 14 return B + 128; 15 end; 16 17 A : Int16_T := 16384; 18 B : Mod16_T := 65504; 19 20begin 21 22 A := F1 (A); 23 if A /= 16512 then 24 raise Program_Error; 25 end if; 26 27 B := F2 (B); 28 if B /= 96 then 29 raise Program_Error; 30 end if; 31 32end Modular3; 33