diff options
| author | Lu Guanqun <guanqun.lu@gmail.com> | 2016-01-04 16:11:04 +0800 |
|---|---|---|
| committer | Lu Guanqun <guanqun.lu@gmail.com> | 2016-01-04 16:11:36 +0800 |
| commit | 568da1136992f8f188ba419bef814659f7a7794a (patch) | |
| tree | 947396ddacbf9ed3d86434826b501a82f9ac7674 /libsolidity/codegen | |
| parent | 6b711d0527823ff6287fe869579260bb27feacdd (diff) | |
| download | dexon-solidity-568da1136992f8f188ba419bef814659f7a7794a.tar dexon-solidity-568da1136992f8f188ba419bef814659f7a7794a.tar.gz dexon-solidity-568da1136992f8f188ba419bef814659f7a7794a.tar.bz2 dexon-solidity-568da1136992f8f188ba419bef814659f7a7794a.tar.lz dexon-solidity-568da1136992f8f188ba419bef814659f7a7794a.tar.xz dexon-solidity-568da1136992f8f188ba419bef814659f7a7794a.tar.zst dexon-solidity-568da1136992f8f188ba419bef814659f7a7794a.zip | |
support decayed tuple expression as left value
Diffstat (limited to 'libsolidity/codegen')
| -rw-r--r-- | libsolidity/codegen/ExpressionCompiler.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/libsolidity/codegen/ExpressionCompiler.cpp b/libsolidity/codegen/ExpressionCompiler.cpp index 2fd0b2c4..b0e92b59 100644 --- a/libsolidity/codegen/ExpressionCompiler.cpp +++ b/libsolidity/codegen/ExpressionCompiler.cpp @@ -233,7 +233,12 @@ bool ExpressionCompiler::visit(TupleExpression const& _tuple) else if (_tuple.annotation().lValueRequested) lvalues.push_back(unique_ptr<LValue>()); if (_tuple.annotation().lValueRequested) - m_currentLValue.reset(new TupleObject(m_context, move(lvalues))); + { + if (_tuple.components().size() == 1) + m_currentLValue = move(lvalues[0]); + else + m_currentLValue.reset(new TupleObject(m_context, move(lvalues))); + } return false; } |
