/* This used to segfault on SPARC 64-bit at runtime because | |
the stack pointer was clobbered by the function call. */ | |
/* { dg-do run } */ | |
#include <stdarg.h> | |
union U | |
{ | |
long l1[2]; | |
}; | |
union U u; | |
void foo (int z, ...) | |
{ | |
int i; | |
va_list ap; | |
va_start(ap,z); | |
i = va_arg(ap, int); | |
va_end(ap); | |
} | |
int main(void) | |
{ | |
foo (1, 1, 1, 1, 1, u); | |
return 0; | |
} |