1 int g(int a,int b,int (* gi)(int,int))2g (int a, int b, int (*gi) (int, int)) 3 { 4 if ((*gi) (a, b)) 5 return a; 6 else 7 return b; 8 } 9 f()10f () 11 { 12 #ifndef NO_TRAMPOLINES 13 int i, j; 14 int f2 (int a, int b) 15 { 16 return a > b; 17 } 18 19 if (g (1, 2, f2) != 2) 20 abort (); 21 #endif 22 } 23 main()24main () 25 { 26 f (); 27 exit (0); 28 } 29