aboutsummaryrefslogtreecommitdiffstats
path: root/AST.cpp
diff options
context:
space:
mode:
authorChristian <c@ethdev.com>2015-02-10 16:00:50 +0800
committerChristian <c@ethdev.com>2015-02-12 18:33:09 +0800
commit20b4c6900982302fd07df12e2a1f6f0e15886834 (patch)
tree3a202298db494951bb5caa6bf04f92517d525d14 /AST.cpp
parent1369337808ef5d2e4394336eec78f0cff406d55c (diff)
downloaddexon-solidity-20b4c6900982302fd07df12e2a1f6f0e15886834.tar.gz
dexon-solidity-20b4c6900982302fd07df12e2a1f6f0e15886834.tar.zst
dexon-solidity-20b4c6900982302fd07df12e2a1f6f0e15886834.zip
Tests and some code for msg.data.
Diffstat (limited to 'AST.cpp')
-rw-r--r--AST.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/AST.cpp b/AST.cpp
index 041b6277..33cf8c12 100644
--- a/AST.cpp
+++ b/AST.cpp
@@ -403,7 +403,8 @@ void Assignment::checkTypeRequirements()
m_leftHandSide->checkTypeRequirements();
m_leftHandSide->requireLValue();
//@todo later, assignments to structs might be possible, but not to mappings
- if (!m_leftHandSide->getType()->isValueType() && !m_leftHandSide->isLocalLValue())
+ if (m_leftHandSide->getType()->getCategory() != Type::Category::ByteArray &&
+ !m_leftHandSide->getType()->isValueType() && !m_leftHandSide->isLocalLValue())
BOOST_THROW_EXCEPTION(createTypeError("Assignment to non-local non-value lvalue."));
m_type = m_leftHandSide->getType();
if (m_assigmentOperator == Token::Assign)