131
|
1 // { dg-do run { target { { i?86-*-* x86_64-*-* } && { ! { ia32 } } } } }
|
|
2 // { dg-options "-O2 -fabi-version=11" }
|
|
3
|
|
4 #include <stdarg.h>
|
|
5
|
|
6 struct dummy { };
|
|
7
|
|
8 void
|
|
9 test (struct dummy a, int m, ...)
|
|
10 {
|
|
11 va_list va_arglist;
|
|
12 int i;
|
|
13 int count = 0;
|
|
14
|
|
15 if (m == 0)
|
|
16 count++;
|
|
17 va_start (va_arglist, m);
|
|
18 i = va_arg (va_arglist, int);
|
|
19 if (i == 1)
|
|
20 count++;
|
|
21 i = va_arg (va_arglist, int);
|
|
22 if (i == 2)
|
|
23 i = va_arg (va_arglist, int);
|
|
24 count++;
|
|
25 if (i == 3)
|
|
26 count++;
|
|
27 i = va_arg (va_arglist, int);
|
|
28 if (i == 4)
|
|
29 count++;
|
|
30 i = va_arg (va_arglist, int);
|
|
31 if (i == 5)
|
|
32 count++;
|
|
33 i = va_arg (va_arglist, int);
|
|
34 if (i == 6)
|
|
35 count++;
|
|
36 va_end (va_arglist);
|
|
37 if (count == 7)
|
|
38 __builtin_abort ();
|
|
39 }
|
|
40
|
|
41 struct dummy a0;
|
|
42
|
|
43 int
|
|
44 main ()
|
|
45 {
|
|
46 test (a0, 0, 1, 2, 3, 4, 5, 6);
|
|
47 return 0;
|
|
48 }
|