aboutsummaryrefslogtreecommitdiffstats
path: root/libsolidity/ast/Types.cpp
diff options
context:
space:
mode:
authorchriseth <chris@ethereum.org>2018-05-15 22:59:48 +0800
committerGitHub <noreply@github.com>2018-05-15 22:59:48 +0800
commit2ba0002998d12ea412f17d55b643ec85c02e6a30 (patch)
treec67243148b1b06eb6b8617fc344d0bc422874fa9 /libsolidity/ast/Types.cpp
parent007ecc849c917cdb5b2feaa20bbab84e0fe79104 (diff)
parentdac0029d16ffe31fba2e6241f99893ea9a26926e (diff)
downloaddexon-solidity-2ba0002998d12ea412f17d55b643ec85c02e6a30.tar
dexon-solidity-2ba0002998d12ea412f17d55b643ec85c02e6a30.tar.gz
dexon-solidity-2ba0002998d12ea412f17d55b643ec85c02e6a30.tar.bz2
dexon-solidity-2ba0002998d12ea412f17d55b643ec85c02e6a30.tar.lz
dexon-solidity-2ba0002998d12ea412f17d55b643ec85c02e6a30.tar.xz
dexon-solidity-2ba0002998d12ea412f17d55b643ec85c02e6a30.tar.zst
dexon-solidity-2ba0002998d12ea412f17d55b643ec85c02e6a30.zip
Merge pull request #4139 from ethereum/abiEncodeIsPure
ABI encoding functions are pure and should be usable in constants.
Diffstat (limited to 'libsolidity/ast/Types.cpp')
-rw-r--r--libsolidity/ast/Types.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/libsolidity/ast/Types.cpp b/libsolidity/ast/Types.cpp
index dc548538..60e3183c 100644
--- a/libsolidity/ast/Types.cpp
+++ b/libsolidity/ast/Types.cpp
@@ -2865,7 +2865,11 @@ bool FunctionType::isPure() const
m_kind == Kind::RIPEMD160 ||
m_kind == Kind::AddMod ||
m_kind == Kind::MulMod ||
- m_kind == Kind::ObjectCreation;
+ m_kind == Kind::ObjectCreation ||
+ m_kind == Kind::ABIEncode ||
+ m_kind == Kind::ABIEncodePacked ||
+ m_kind == Kind::ABIEncodeWithSelector ||
+ m_kind == Kind::ABIEncodeWithSignature;
}
TypePointers FunctionType::parseElementaryTypeVector(strings const& _types)