diff options
author | Leonardo <leo@ethereum.org> | 2018-11-17 16:48:22 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-11-17 16:48:22 +0800 |
commit | 5be45e736d2b111c9352ca2990a1c7a653c60c55 (patch) | |
tree | 1c52fe27dbdd73fc43967a427236e1662b74d47c /libsolidity/formal/CVC4Interface.cpp | |
parent | 460c58fbd194fef5add699405238d3ed302a003f (diff) | |
parent | 70bb0eaf95ab6a549f875b845395b31a5d49f99e (diff) | |
download | dexon-solidity-5be45e736d2b111c9352ca2990a1c7a653c60c55.tar dexon-solidity-5be45e736d2b111c9352ca2990a1c7a653c60c55.tar.gz dexon-solidity-5be45e736d2b111c9352ca2990a1c7a653c60c55.tar.bz2 dexon-solidity-5be45e736d2b111c9352ca2990a1c7a653c60c55.tar.lz dexon-solidity-5be45e736d2b111c9352ca2990a1c7a653c60c55.tar.xz dexon-solidity-5be45e736d2b111c9352ca2990a1c7a653c60c55.tar.zst dexon-solidity-5be45e736d2b111c9352ca2990a1c7a653c60c55.zip |
Merge pull request #5307 from ethereum/smt_uf
[SMTChecker] Uninterpreted functions for blockhash()
Diffstat (limited to 'libsolidity/formal/CVC4Interface.cpp')
-rw-r--r-- | libsolidity/formal/CVC4Interface.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/libsolidity/formal/CVC4Interface.cpp b/libsolidity/formal/CVC4Interface.cpp index 6cb91483..11822927 100644 --- a/libsolidity/formal/CVC4Interface.cpp +++ b/libsolidity/formal/CVC4Interface.cpp @@ -50,7 +50,7 @@ void CVC4Interface::pop() m_solver.pop(); } -void CVC4Interface::declareFunction(string _name, Sort _domain, Sort _codomain) +void CVC4Interface::declareFunction(string _name, vector<Sort> const& _domain, Sort _codomain) { if (!m_functions.count(_name)) { @@ -201,3 +201,11 @@ CVC4::Type CVC4Interface::cvc4Sort(Sort _sort) // Cannot be reached. return m_context.integerType(); } + +vector<CVC4::Type> CVC4Interface::cvc4Sort(vector<Sort> const& _sorts) +{ + vector<CVC4::Type> cvc4Sorts; + for (auto const& _sort: _sorts) + cvc4Sorts.push_back(cvc4Sort(_sort)); + return cvc4Sorts; +} |