diff options
author | chriseth <chris@ethereum.org> | 2018-08-16 20:38:44 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-08-16 20:38:44 +0800 |
commit | c274af077040a726fd63764ef13319078b686968 (patch) | |
tree | 62c69295b13e0eb5fa0311e490b8a40e54e30415 /libsolidity/codegen | |
parent | a9e7ae2954550409eac09f1e8f656561cf75a12a (diff) | |
parent | 455345871d286c24d393fbc9dea3d8a71f1a5b23 (diff) | |
download | dexon-solidity-c274af077040a726fd63764ef13319078b686968.tar dexon-solidity-c274af077040a726fd63764ef13319078b686968.tar.gz dexon-solidity-c274af077040a726fd63764ef13319078b686968.tar.bz2 dexon-solidity-c274af077040a726fd63764ef13319078b686968.tar.lz dexon-solidity-c274af077040a726fd63764ef13319078b686968.tar.xz dexon-solidity-c274af077040a726fd63764ef13319078b686968.tar.zst dexon-solidity-c274af077040a726fd63764ef13319078b686968.zip |
Merge pull request #4825 from ethereum/expressionCompBareCall
More safeguards for (library) function types.
Diffstat (limited to 'libsolidity/codegen')
-rw-r--r-- | libsolidity/codegen/ExpressionCompiler.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/libsolidity/codegen/ExpressionCompiler.cpp b/libsolidity/codegen/ExpressionCompiler.cpp index 9baad7d1..53a06090 100644 --- a/libsolidity/codegen/ExpressionCompiler.cpp +++ b/libsolidity/codegen/ExpressionCompiler.cpp @@ -1165,19 +1165,19 @@ bool ExpressionCompiler::visit(MemberAccess const& _memberAccess) solAssert(false, "event not found"); // no-op, because the parent node will do the job break; - case FunctionType::Kind::External: - case FunctionType::Kind::Creation: case FunctionType::Kind::DelegateCall: + _memberAccess.expression().accept(*this); + m_context << funType->externalIdentifier(); + break; case FunctionType::Kind::CallCode: + case FunctionType::Kind::External: + case FunctionType::Kind::Creation: case FunctionType::Kind::Send: case FunctionType::Kind::BareCall: case FunctionType::Kind::BareCallCode: case FunctionType::Kind::BareDelegateCall: case FunctionType::Kind::BareStaticCall: case FunctionType::Kind::Transfer: - _memberAccess.expression().accept(*this); - m_context << funType->externalIdentifier(); - break; case FunctionType::Kind::Log0: case FunctionType::Kind::Log1: case FunctionType::Kind::Log2: |