diff options
Diffstat (limited to 'libsolidity/LValue.cpp')
-rw-r--r-- | libsolidity/LValue.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/libsolidity/LValue.cpp b/libsolidity/LValue.cpp index 81aaeb4d..9f33e846 100644 --- a/libsolidity/LValue.cpp +++ b/libsolidity/LValue.cpp @@ -435,9 +435,9 @@ StorageArrayLength::StorageArrayLength(CompilerContext& _compilerContext, const void StorageArrayLength::retrieveValue(SourceLocation const&, bool _remove) const { - if (!_remove) - m_context << eth::Instruction::DUP1; - m_context << eth::Instruction::SLOAD; + ArrayUtils(m_context).retrieveLength(m_arrayType); + if (_remove) + m_context << eth::Instruction::SWAP1 << eth::Instruction::POP; } void StorageArrayLength::storeValue(Type const&, SourceLocation const&, bool _move) const |