URL
https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk
Subversion Repositories openrisc_me
[/] [openrisc/] [trunk/] [gnu-src/] [gcc-4.5.1/] [gcc/] [testsuite/] [gcc.c-torture/] [execute/] [va-arg-4.c] - Rev 297
Compare with Previous | Blame | View Log
/* 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); }