-typedef struct {int a, b;} T;
-
-int h (T *);
-T g (T);
-
-#if COMPILER != 1
-h (T *x)
-{
- if (x->a != 0 || x->b != 1)
- abort ();
-}
-#endif
-
-#if COMPILER != 2
-T
-g (T x)
-{
- if (x.a != 13 || x.b != 47)
- abort ();
- x.a = 0;
- x.b = 1;
- h (&x);
- return x;
-}
-#endif
-
-#if COMPILER != 1
-f ()
-{
- T x;
- x.a = 13;
- x.b = 47;
- g (x);
- if (x.a != 13 || x.b != 47)
- abort ();
- x = g (x);
- if (x.a != 0 || x.b != 1)
- abort ();
-}
-#endif
-
-#if COMPILER != 2
-main ()
-{
- f ();
- exit (0);
-}
-#endif