1 typedef struct {int a;} T; 2 3 int h (T *); 4 T g (T); 5 6 #if COMPILER != 1 h(T * x)7h (T *x) 8 { 9 if (x->a != 47114711) 10 abort (); 11 } 12 #endif 13 14 #if COMPILER != 2 15 T g(T x)16g (T x) 17 { 18 if (x.a != 13) 19 abort (); 20 x.a = 47114711; 21 h (&x); 22 return x; 23 } 24 #endif 25 26 #if COMPILER != 1 f()27f () 28 { 29 T x; 30 x.a = 13; 31 g (x); 32 if (x.a != 13) 33 abort (); 34 x = g (x); 35 if (x.a != 47114711) 36 abort (); 37 } 38 #endif 39 40 #if COMPILER != 2 main()41main () 42 { 43 f (); 44 exit (0); 45 } 46 #endif 47