// RUN: %clang_cc1 -chain-include %s -chain-include %s -fsyntax-only %s // Just don't crash. #if !defined(RUN1) #define RUN1 struct CXXRecordDecl { CXXRecordDecl(int); }; template T cast(U u) { return reinterpret_cast(u); } void test1() { cast(1); } #elif !defined(RUN2) #define RUN2 template void test2(T) { cast(1.0f); } #else void test3() { cast(1.0f); test2(1); } #endif