diff options
author | Timotej Kapus <timotej.kapus13@imperial.ac.uk> | 2018-03-16 10:42:12 +0000 |
---|---|---|
committer | Cristian Cadar <c.cadar@imperial.ac.uk> | 2018-05-09 12:19:53 +0100 |
commit | 13b5bcbfd933461526f08c6ad759af9e129d6764 (patch) | |
tree | fb3eb848493ccf697f8193aeae81d098874dc340 /lib/Solver/Z3Builder.h | |
parent | e0aff85c24c039606d82d209617a1334a9ed21e2 (diff) | |
download | klee-13b5bcbfd933461526f08c6ad759af9e129d6764.tar.gz |
Improve handling of constant array in Z3
Diffstat (limited to 'lib/Solver/Z3Builder.h')
-rw-r--r-- | lib/Solver/Z3Builder.h | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/lib/Solver/Z3Builder.h b/lib/Solver/Z3Builder.h index a3473f82..7cdb2b5e 100644 --- a/lib/Solver/Z3Builder.h +++ b/lib/Solver/Z3Builder.h @@ -10,9 +10,10 @@ #ifndef __UTIL_Z3BUILDER_H__ #define __UTIL_Z3BUILDER_H__ -#include "klee/util/ExprHashMap.h" -#include "klee/util/ArrayExprHash.h" #include "klee/Config/config.h" +#include "klee/util/ArrayExprHash.h" +#include "klee/util/ExprHashMap.h" +#include <unordered_map> #include <z3.h> namespace klee { @@ -72,7 +73,7 @@ public: // To be specialised void dump(); - operator T() { return node; } + operator T() const { return node; } }; // Specialise for Z3_sort @@ -169,6 +170,8 @@ private: public: Z3_context ctx; + std::unordered_map<const Array *, std::vector<Z3ASTHandle> > + constant_array_assertions; Z3Builder(bool autoClearConstructCache, const char *z3LogInteractionFile); ~Z3Builder(); |