diff options
author | chriseth <chris@ethereum.org> | 2016-12-01 22:14:31 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-12-01 22:14:31 +0800 |
commit | 55a719a79c1ab5b78ea6e1bcb4f27a888494a538 (patch) | |
tree | ceb3fbab0eb902fcd1a728cb10efe89ca825debc | |
parent | 1367aef83b91f2cf9f28faf54fa61f0594e3b9dc (diff) | |
parent | 422140f60369a2e69c6cb446528737d5d23a3e3d (diff) | |
download | dexon-solidity-55a719a79c1ab5b78ea6e1bcb4f27a888494a538.tar.gz dexon-solidity-55a719a79c1ab5b78ea6e1bcb4f27a888494a538.tar.zst dexon-solidity-55a719a79c1ab5b78ea6e1bcb4f27a888494a538.zip |
Merge pull request #1462 from ethereum/fix-incorrect-assertion
codegen: assertion did not assert non-nullness
-rw-r--r-- | libsolidity/codegen/ContractCompiler.cpp | 2 | ||||
-rw-r--r-- | test/libsolidity/SolidityNameAndTypeResolution.cpp | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/libsolidity/codegen/ContractCompiler.cpp b/libsolidity/codegen/ContractCompiler.cpp index 93083e25..a0f196bc 100644 --- a/libsolidity/codegen/ContractCompiler.cpp +++ b/libsolidity/codegen/ContractCompiler.cpp @@ -583,7 +583,7 @@ bool ContractCompiler::visit(InlineAssembly const& _inlineAssembly) // lvalue context auto variable = dynamic_cast<VariableDeclaration const*>(decl); solAssert( - !!variable || !m_context.isLocalVariable(variable), + !!variable && m_context.isLocalVariable(variable), "Can only assign to stack variables in inline assembly." ); unsigned size = variable->type()->sizeOnStack(); diff --git a/test/libsolidity/SolidityNameAndTypeResolution.cpp b/test/libsolidity/SolidityNameAndTypeResolution.cpp index 34f7033f..627aaa2f 100644 --- a/test/libsolidity/SolidityNameAndTypeResolution.cpp +++ b/test/libsolidity/SolidityNameAndTypeResolution.cpp @@ -4521,7 +4521,7 @@ BOOST_AUTO_TEST_CASE(inline_assembly_storage) } } )"; - CHECK_ERROR(text, DeclarationError, ""); + CHECK_ERROR(text, DeclarationError, "not found, not unique or not lvalue."); } BOOST_AUTO_TEST_CASE(inline_assembly_storage_in_modifiers) |