| /* { dg-options "-fgnu89-inline" } */ |
| |
| #include <stdarg.h> |
| |
| extern void abort(void); |
| extern void exit (int); |
| |
| 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); |
| } |