/* Test support of scalar_storage_order attribute */ /* { dg-do compile } */ #include int x; #if __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__ struct __attribute__((scalar_storage_order("big-endian"))) Rec { va_list v; }; #else struct __attribute__((scalar_storage_order("little-endian"))) Rec { va_list v; }; #endif void foo (int i, ...) { struct Rec a; va_start (a.v, i); a.v = 0, x = va_arg (a.v, int); /* { dg-error "type|reverse storage order" } */ va_end (a.v); }