diff options
author | Dan Liew <delcypher@gmail.com> | 2015-12-18 12:48:18 +0000 |
---|---|---|
committer | Dan Liew <delcypher@gmail.com> | 2015-12-18 12:48:18 +0000 |
commit | 535be01be5ab33a0e7106e2d5511bba2797d1ed0 (patch) | |
tree | 026a4f1b16c1996755954f7824e0d10f8ed0ef8e /unittests/Expr | |
parent | 7e75fa79b2e76251c2cd417a7eae8a7620b014ae (diff) | |
parent | 53ff7a002a8213a5d5e778bef2a895998d9890e1 (diff) | |
download | klee-535be01be5ab33a0e7106e2d5511bba2797d1ed0.tar.gz |
Merge pull request #315 from delcypher/array_leak
Try to fix leaking Array objects detected by ASan.
Diffstat (limited to 'unittests/Expr')
-rw-r--r-- | unittests/Expr/ExprTest.cpp | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/unittests/Expr/ExprTest.cpp b/unittests/Expr/ExprTest.cpp index d05eb7ec..25129d8e 100644 --- a/unittests/Expr/ExprTest.cpp +++ b/unittests/Expr/ExprTest.cpp @@ -11,6 +11,7 @@ #include "gtest/gtest.h" #include "klee/Expr.h" +#include "klee/util/ArrayCache.h" using namespace klee; @@ -29,9 +30,10 @@ TEST(ExprTest, BasicConstruction) { } TEST(ExprTest, ConcatExtract) { - const Array *array = Array::CreateArray("arr0", 256); + ArrayCache ac; + const Array *array = ac.CreateArray("arr0", 256); ref<Expr> read8 = Expr::createTempRead(array, 8); - const Array *array2 = Array::CreateArray("arr1", 256); + const Array *array2 = ac.CreateArray("arr1", 256); ref<Expr> read8_2 = Expr::createTempRead(array2, 8); ref<Expr> c100 = getConstant(100, 8); @@ -81,10 +83,11 @@ TEST(ExprTest, ConcatExtract) { } TEST(ExprTest, ExtractConcat) { - const Array *array = Array::CreateArray("arr2", 256); + ArrayCache ac; + const Array *array = ac.CreateArray("arr2", 256); ref<Expr> read64 = Expr::createTempRead(array, 64); - const Array *array2 = Array::CreateArray("arr3", 256); + const Array *array2 = ac.CreateArray("arr3", 256); ref<Expr> read8_2 = Expr::createTempRead(array2, 8); ref<Expr> extract1 = ExtractExpr::create(read64, 36, 4); |