mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
fixed CALL case. added exception
This commit is contained in:
parent
9af94ca0dc
commit
af4650beb2
@ -1105,8 +1105,8 @@ void ExpressionCompiler::appendExternalFunctionCall(
|
|||||||
m_context << eth::Instruction::CALL;
|
m_context << eth::Instruction::CALL;
|
||||||
|
|
||||||
//Propagate error condition (if CALL pushes 0 on stack).
|
//Propagate error condition (if CALL pushes 0 on stack).
|
||||||
auto tag = m_context.appendConditionalJump();
|
m_context << eth::Instruction::ISZERO;
|
||||||
m_context << eth::Instruction::STOP << tag; // STOP if CALL leaves 0.
|
m_context.appendConditionalJumpTo(m_context.errorTag());
|
||||||
|
|
||||||
if (_functionType.valueSet())
|
if (_functionType.valueSet())
|
||||||
m_context << eth::Instruction::POP;
|
m_context << eth::Instruction::POP;
|
||||||
|
Loading…
Reference in New Issue
Block a user