2010-07-16 05:05:01 +08:00
|
|
|
// RUN: %clang_cc1 -fsyntax-only -verify %s
|
|
|
|
|
|
|
|
struct X {
|
|
|
|
template<typename T, typename U>
|
|
|
|
static void f(int, int);
|
|
|
|
};
|
|
|
|
|
|
|
|
void f() {
|
|
|
|
void (*ptr)(int, int) = &X::f<int, int>;
|
2012-08-24 04:19:14 +08:00
|
|
|
|
|
|
|
unknown *p = 0; // expected-error {{unknown type name 'unknown'}}
|
|
|
|
unknown * p + 0; // expected-error {{undeclared identifier 'unknown'}}
|
2010-07-16 05:05:01 +08:00
|
|
|
}
|
2018-02-03 06:24:54 +08:00
|
|
|
|
|
|
|
auto (*p)() -> int(nullptr);
|
|
|
|
auto (*q)() -> int(*)(unknown); // expected-error {{unknown type name 'unknown'}}
|
|
|
|
auto (*r)() -> int(*)(unknown + 1); // expected-error {{undeclared identifier 'unknown'}}
|