From 222e2a7620e6520ffaf4fc4e69d79c18da31542e Mon Sep 17 00:00:00 2001 From: "Zancanaro; Carlo" Date: Mon, 24 Sep 2012 09:58:17 +1000 Subject: Add the clang library to the repo (with some of my changes, too). --- clang/test/CodeGenCXX/debug-info-template.cpp | 46 +++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 clang/test/CodeGenCXX/debug-info-template.cpp (limited to 'clang/test/CodeGenCXX/debug-info-template.cpp') diff --git a/clang/test/CodeGenCXX/debug-info-template.cpp b/clang/test/CodeGenCXX/debug-info-template.cpp new file mode 100644 index 0000000..9d52159 --- /dev/null +++ b/clang/test/CodeGenCXX/debug-info-template.cpp @@ -0,0 +1,46 @@ +// RUN: %clang -emit-llvm -g -S %s -o - | FileCheck %s + +//CHECK: TC +//CHECK: DW_TAG_template_type_parameter + +template +class TC { +public: + TC(const TC &) {} + TC() {} +}; + +TC tci; + +//CHECK: TU<2> +//CHECK: DW_TAG_template_value_parameter +template +class TU { + int b; +}; + +TU<2> u2; + +// PR9600 +template class vector {}; +class Foo; +typedef vector FooVector[3]; +struct Test { + virtual void foo(FooVector *); +}; +static Test test; + +// PR9608 +template struct TheTemplate { + struct Empty2 {}; + typedef const Empty2 DependentType[i]; + TheTemplate() {} +}; + +class TheTemplateTest : public TheTemplate<42> { + TheTemplateTest(); + void method(const TheTemplate<42>::DependentType *) {} +}; + +TheTemplateTest::TheTemplateTest() : TheTemplate<42>() {} + -- cgit v1.2.3