diff options
author | Liana Husikyan <liana@ethdev.com> | 2015-06-01 22:39:09 +0800 |
---|---|---|
committer | Liana Husikyan <liana@ethdev.com> | 2015-06-01 22:39:09 +0800 |
commit | af4650beb2360ebdf75e0fb2126b88acf441080a (patch) | |
tree | 336e54c81348c1bcb0513eda264ed2f87d3c9253 /ExpressionCompiler.cpp | |
parent | 9af94ca0dc8e62d8cfe04a8b127522e5874e312d (diff) | |
download | dexon-solidity-af4650beb2360ebdf75e0fb2126b88acf441080a.tar.gz dexon-solidity-af4650beb2360ebdf75e0fb2126b88acf441080a.tar.zst dexon-solidity-af4650beb2360ebdf75e0fb2126b88acf441080a.zip |
fixed CALL case. added exception
Diffstat (limited to 'ExpressionCompiler.cpp')
-rw-r--r-- | ExpressionCompiler.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/ExpressionCompiler.cpp b/ExpressionCompiler.cpp index 6a246f44..ae8bcaee 100644 --- a/ExpressionCompiler.cpp +++ b/ExpressionCompiler.cpp @@ -1105,8 +1105,8 @@ void ExpressionCompiler::appendExternalFunctionCall( m_context << eth::Instruction::CALL; //Propagate error condition (if CALL pushes 0 on stack). - auto tag = m_context.appendConditionalJump(); - m_context << eth::Instruction::STOP << tag; // STOP if CALL leaves 0. + m_context << eth::Instruction::ISZERO; + m_context.appendConditionalJumpTo(m_context.errorTag()); if (_functionType.valueSet()) m_context << eth::Instruction::POP; |