1 /* { dg-do preprocess } */
2 /* { dg-options "-ftrack-macro-expansion=0" } */
3 
4 int foo(int, ...);
5 
6 #define a(x, y...) foo(x, ##y)
7 a(1)
8 a(1, 2, 3)
9 #define b(x, y, z...) foo(x, ##y)
10 b(1, 2, 3)			/* { dg-error "valid preprocessing token" } */
11 #define c(x, y, z...) foo(x, ##z)
12 c(1, 2)
13 c(1, 2, 3)
14 #define d(x) fo(##x)
15 d(1)				/* { dg-error "valid preprocessing token" } */
16