1  struct S {
       2    struct { } empty[1];
       3    int i;
       4  };
       5  
       6  int foo(int i, ...)
       7  {
       8    struct S s;
       9    __builtin_va_list va;
      10    __builtin_va_start(va, i);
      11    s = __builtin_va_arg(va, struct S);
      12    __builtin_va_end(va);
      13    return s.i;
      14  }