aboutsummaryrefslogtreecommitdiffstats
path: root/libsolidity/analysis
diff options
context:
space:
mode:
authorLu Guanqun <guanqun.lu@gmail.com>2016-01-04 16:11:04 +0800
committerLu Guanqun <guanqun.lu@gmail.com>2016-01-04 16:11:36 +0800
commit568da1136992f8f188ba419bef814659f7a7794a (patch)
tree947396ddacbf9ed3d86434826b501a82f9ac7674 /libsolidity/analysis
parent6b711d0527823ff6287fe869579260bb27feacdd (diff)
downloaddexon-solidity-568da1136992f8f188ba419bef814659f7a7794a.tar.gz
dexon-solidity-568da1136992f8f188ba419bef814659f7a7794a.tar.zst
dexon-solidity-568da1136992f8f188ba419bef814659f7a7794a.zip
support decayed tuple expression as left value
Diffstat (limited to 'libsolidity/analysis')
-rw-r--r--libsolidity/analysis/TypeChecker.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/libsolidity/analysis/TypeChecker.cpp b/libsolidity/analysis/TypeChecker.cpp
index 9718bf75..de30dcf7 100644
--- a/libsolidity/analysis/TypeChecker.cpp
+++ b/libsolidity/analysis/TypeChecker.cpp
@@ -792,7 +792,10 @@ bool TypeChecker::visit(TupleExpression const& _tuple)
}
else
types.push_back(TypePointer());
- _tuple.annotation().type = make_shared<TupleType>(types);
+ if (components.size() == 1)
+ _tuple.annotation().type = type(*components[0]);
+ else
+ _tuple.annotation().type = make_shared<TupleType>(types);
// If some of the components are not LValues, the error is reported above.
_tuple.annotation().isLValue = true;
}