1 // RUN: %clang_cc1 -fsyntax-only -pedantic -verify %s
16 S
w(int(a
)); // expected-warning{{disambiguated as a function declaration}} expected-note{{add a pair of parentheses}}
18 S
x1(int()); // expected-warning{{disambiguated as a function declaration}} expected-note{{add a pair of parentheses}}
28 void *operator new(__SIZE_TYPE__
, int);
31 new (int(*p
)) int; //new-placement expression
32 new (int(*[x
])); //new type-id
36 template <class T
> // expected-note{{here}}
40 S4
<int()> x
; //type-id
41 S4
<int(1)> y
; // expected-error{{must be a type}}
46 (void)sizeof(int(1)); //expression
47 (void)sizeof(int()); // expected-error{{function type}}
53 (void)(int(1)); //expression
54 (void)(int())1; // expected-error{{to 'int ()'}}
59 void f7(int(C7
)) { } // expected-note{{candidate}}
62 f7(1); // expected-error{{no matching function}}
66 void h7(int *(C7
[10])) { } // expected-note{{previous}}
67 void h7(int *(*_fp
)(C7 _parm
[10])) { } // expected-error{{redefinition}}
70 static bool const value
= false;
73 int v(int(S5::value
)); // expected-warning{{disambiguated as a function declaration}} expected-note{{add a pair of parentheses}} expected-error{{parameter declarator cannot be qualified}}
77 void rdar8739801( void (T::*)( void ) __attribute__((unused
)) );