diff options
author | Anders Carlsson <andersca@mac.com> | 2010-02-04 17:23:15 +0000 |
---|---|---|
committer | Anders Carlsson <andersca@mac.com> | 2010-02-04 17:23:15 +0000 |
commit | 4e3014be0606d6be5554d76f317d5908be3bccfc (patch) | |
tree | d4c49c615f003e54e78ac75c11c400900e712218 /test/CodeGenCXX/conditional-temporaries.cpp | |
parent | 86a7625062abbd40fffa186f2f5d305cc89615b8 (diff) |
Improve conditional temporaries test.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@95310 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGenCXX/conditional-temporaries.cpp')
-rw-r--r-- | test/CodeGenCXX/conditional-temporaries.cpp | 27 |
1 files changed, 20 insertions, 7 deletions
diff --git a/test/CodeGenCXX/conditional-temporaries.cpp b/test/CodeGenCXX/conditional-temporaries.cpp index e9e684ea5a..66fd803c2e 100644 --- a/test/CodeGenCXX/conditional-temporaries.cpp +++ b/test/CodeGenCXX/conditional-temporaries.cpp @@ -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; } |