1 static inline long g1(double x)2g1 (double x) 3 { 4 return (double) (long) x; 5 } 6 7 long g2(double f)8g2 (double f) 9 { 10 return f; 11 } 12 13 double f(long i)14f (long i) 15 { 16 if (g1 (i) != g2 (i)) 17 abort (); 18 return g2 (i); 19 } 20 main()21main () 22 { 23 if (f (123456789L) != 123456789L) 24 abort (); 25 if (f (123456789L) != g2 (123456789L)) 26 abort (); 27 exit (0); 28 } 29