]> granicus.if.org Git - clang/commitdiff
PR10506: Extend test for temporary cleanups in range-based for loop to cover the...
authorRichard Smith <richard-llvm@metafoo.co.uk>
Sun, 4 Sep 2011 23:52:03 +0000 (23:52 +0000)
committerRichard Smith <richard-llvm@metafoo.co.uk>
Sun, 4 Sep 2011 23:52:03 +0000 (23:52 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@139109 91177308-0d34-0410-b5e6-96231b3b80d8

test/CodeGenCXX/for-range-temporaries.cpp

index be594ce5223d1272dfb06a27ed1261f72ae5c043..188c9a5d18bcdf568a94423ed8110d31b38a7cda 100644 (file)
@@ -1,5 +1,6 @@
 // RUN: %clang_cc1 -triple x86_64-apple-darwin10 -std=c++0x -emit-llvm -o - -UDESUGAR %s | opt -instnamer -S | FileCheck %s
 // RUN: %clang_cc1 -triple x86_64-apple-darwin10 -std=c++0x -emit-llvm -o - -DDESUGAR %s | opt -instnamer -S | FileCheck %s
+// RUN: %clang_cc1 -triple x86_64-apple-darwin10 -std=c++0x -emit-llvm -o - -DDESUGAR -DTEMPLATE %s | opt -instnamer -S | FileCheck %s
 
 struct A {
   A();
@@ -65,6 +66,9 @@ struct I {
 
 void body(const I &);
 
+#ifdef TEMPLATE
+template<typename D>
+#endif
 void for_temps() {
   A a;
 #ifdef DESUGAR
@@ -83,7 +87,11 @@ void for_temps() {
 #endif
 }
 
-// CHECK: define void @_Z9for_tempsv()
+#ifdef TEMPLATE
+template void for_temps<D>();
+#endif
+
+// CHECK: define {{.*}}for_temps
 // CHECK: call void @_ZN1AC1Ev(
 // CHECK: call void @_ZN1BC1Ev(
 // CHECK: call void @_ZN1CC1ERK1B(