// RUN: clang-cc -fsyntax-only -verify %s class X { public: virtual int f(); }; void g(int); // expected-note{{candidate function}} template T f(T x) { (void)(x + 0); (void)T(0); (void)(x += 0); (void)(x? x : x); (void)static_cast(x); (void)reinterpret_cast(x); (void)dynamic_cast(&x); (void)const_cast(x); return g(x); h(x); // h is a dependent name g(1, 1); // expected-error{{no matching function for call}} h(1); // expected-error{{no matching function for call to 'h'}} return 0; }