text: /* On the i960 any arg bigger than 16 bytes causes all subsequent args
     to be passed on the stack.  We test this.  */
  
  #include <stdarg.h>
  
  typedef struct {
    char a[32];
  } big;
  
  void
  f (big x, char *s, ...)
  {
    va_list ap;
  
    if (x.a[0] != 'a' || x.a[1] != 'b' || x.a[2] != 'c')
      abort ();
    va_start (ap, s);
    if (va_arg (ap, int) != 42)
      abort ();
    if (va_arg (ap, int) != 'x')
      abort ();
    if (va_arg (ap, int) != 0)
      abort ();
    va_end (ap);
  }
  
  main ()
  {
    static big x = { "abc" };
  
    f (x, "", 42, 'x', 0);
    exit (0);
  }
  