]> granicus.if.org Git - clang/commitdiff
Improve conditional temporaries test.
authorAnders Carlsson <andersca@mac.com>
Thu, 4 Feb 2010 17:23:15 +0000 (17:23 +0000)
committerAnders Carlsson <andersca@mac.com>
Thu, 4 Feb 2010 17:23:15 +0000 (17:23 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95310 91177308-0d34-0410-b5e6-96231b3b80d8

test/CodeGenCXX/conditional-temporaries.cpp

index e9e684ea5a0b5cda74ab6b3d2420593e2d6758cf..66fd803c2ee88300eeefc6a1558f097c6c9f4e54 100644 (file)
@@ -2,11 +2,12 @@
 
 namespace {
 
-static int counter;
+static int ctorcalls;
+static int dtorcalls;
   
 struct A {
-  A() : i(0) { counter++; }
-  ~A() { counter--; }
+  A() : i(0) { ctorcalls++; }
+  ~A() { dtorcalls++; }
   int i;
 };
 
@@ -29,8 +30,20 @@ Checker c;
 
 }
 
-// CHECK: define i32 @_Z10getCounterv()
-int getCounter() {
-  // CHECK: ret i32 0
-  return counter;
+// CHECK: define i32 @_Z12getCtorCallsv()
+int getCtorCalls() {
+  // CHECK: ret i32 3
+  return ctorcalls;
+}
+
+// CHECK: define i32 @_Z12getDtorCallsv()
+int getDtorCalls() {
+  // CHECK: ret i32 3
+  return dtorcalls;
+}
+
+// CHECK: define zeroext i1 @_Z7successv()
+bool success() {
+  // CHECK: ret i1 true
+  return ctorcalls == dtorcalls;
 }