aboutsummaryrefslogtreecommitdiffstats
path: root/libsolidity/formal/SMTChecker.h
diff options
context:
space:
mode:
authorLeonardo Alt <leo@ethereum.org>2018-06-05 17:46:21 +0800
committerLeonardo Alt <leo@ethereum.org>2018-06-12 16:58:50 +0800
commit678a769cd7332fb2cde69b750ec93c4b3fc5b838 (patch)
tree09a28ac792f36fcee4707d90bc18c981568b88f0 /libsolidity/formal/SMTChecker.h
parent8999a2f375410a29bae46b8e87a70c62036c880d (diff)
downloaddexon-solidity-678a769cd7332fb2cde69b750ec93c4b3fc5b838.tar
dexon-solidity-678a769cd7332fb2cde69b750ec93c4b3fc5b838.tar.gz
dexon-solidity-678a769cd7332fb2cde69b750ec93c4b3fc5b838.tar.bz2
dexon-solidity-678a769cd7332fb2cde69b750ec93c4b3fc5b838.tar.lz
dexon-solidity-678a769cd7332fb2cde69b750ec93c4b3fc5b838.tar.xz
dexon-solidity-678a769cd7332fb2cde69b750ec93c4b3fc5b838.tar.zst
dexon-solidity-678a769cd7332fb2cde69b750ec93c4b3fc5b838.zip
Refactoring how storage and local variables are managed.
Diffstat (limited to 'libsolidity/formal/SMTChecker.h')
-rw-r--r--libsolidity/formal/SMTChecker.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/libsolidity/formal/SMTChecker.h b/libsolidity/formal/SMTChecker.h
index 50d40ab9..b5c5cfd7 100644
--- a/libsolidity/formal/SMTChecker.h
+++ b/libsolidity/formal/SMTChecker.h
@@ -161,12 +161,14 @@ private:
/// Add to the solver: the given expression implied by the current path conditions
void addPathImpliedExpression(smt::Expression const& _e);
+ /// Clears the local variables of a function.
+ void clearLocalVariables();
+
std::shared_ptr<smt::SolverInterface> m_interface;
std::shared_ptr<VariableUsage> m_variableUsage;
bool m_loopExecutionHappened = false;
std::map<Expression const*, smt::Expression> m_expressions;
std::map<Declaration const*, SSAVariable> m_variables;
- std::map<Declaration const*, SSAVariable> m_stateVariables;
std::vector<smt::Expression> m_pathConditions;
ErrorReporter& m_errorReporter;