diff options
Diffstat (limited to 'lib/Core/ExecutionState.cpp')
-rw-r--r-- | lib/Core/ExecutionState.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/Core/ExecutionState.cpp b/lib/Core/ExecutionState.cpp index b3719295..7b600003 100644 --- a/lib/Core/ExecutionState.cpp +++ b/lib/Core/ExecutionState.cpp @@ -41,6 +41,10 @@ cl::opt<bool> DebugLogStateMerge( /***/ +std::uint32_t ExecutionState::nextID = 1; + +/***/ + StackFrame::StackFrame(KInstIterator _caller, KFunction *_kf) : caller(_caller), kf(_kf), callPathNode(0), minDistToUncoveredOnReturn(0), varargs(0) { @@ -75,6 +79,7 @@ ExecutionState::ExecutionState(KFunction *kf) : coveredNew(false), forkDisabled(false) { pushFrame(nullptr, kf); + setID(); } ExecutionState::ExecutionState(const std::vector<ref<Expr>> &assumptions) @@ -116,6 +121,7 @@ ExecutionState *ExecutionState::branch() { depth++; auto *falseState = new ExecutionState(*this); + falseState->setID(); falseState->coveredNew = false; falseState->coveredLines.clear(); |