diff options
Diffstat (limited to 'gcc/testsuite/gcc.c-torture/execute/980608-1.c')
-rw-r--r-- | gcc/testsuite/gcc.c-torture/execute/980608-1.c | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/gcc/testsuite/gcc.c-torture/execute/980608-1.c b/gcc/testsuite/gcc.c-torture/execute/980608-1.c new file mode 100644 index 000000000..b34d13749 --- /dev/null +++ b/gcc/testsuite/gcc.c-torture/execute/980608-1.c @@ -0,0 +1,36 @@ +#include <stdarg.h> + +void f1(int a,int b,int c,int d,int e, int f,int g,int h,int i,int j, int k,int +l,int m,int n,int o) +{ + return; +} + +inline void debug(const char *msg,...) +{ + va_list ap; + va_start( ap, msg ); + + f1(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15); + + if ( va_arg(ap,int) != 101) + abort(); + if ( va_arg(ap,int) != 102) + abort(); + if ( va_arg(ap,int) != 103) + abort(); + if ( va_arg(ap,int) != 104) + abort(); + if ( va_arg(ap,int) != 105) + abort(); + if ( va_arg(ap,int) != 106) + abort(); + + va_end( ap ); +} + +int main(void) +{ + debug("%d %d %d %d %d %d\n", 101, 102, 103, 104, 105, 106); + exit(0); +} |