Ignore constructor member templates in CodeGenModule::EmitTopLevelDecl.

llvm-svn: 89737
This commit is contained in:
Anders Carlsson
2009-11-24 05:16:24 +00:00
parent 6445773279
commit 0ade9715f2
2 changed files with 13 additions and 0 deletions

View File

@@ -1734,6 +1734,10 @@ void CodeGenModule::EmitTopLevelDecl(Decl *D) {
case Decl::NamespaceAlias:
break;
case Decl::CXXConstructor:
// Skip function templates
if (cast<FunctionDecl>(D)->getDescribedFunctionTemplate())
return;
EmitCXXConstructors(cast<CXXConstructorDecl>(D));
break;
case Decl::CXXDestructor:

View File

@@ -0,0 +1,9 @@
// RUN: clang-cc %s -triple=x86_64-apple-darwin10 -emit-llvm -o - | FileCheck %s
// CHECK: ; ModuleID
struct A {
template<typename T>
A(T);
};
template<typename T> A::A(T) {}