aboutsummaryrefslogtreecommitdiffstats
path: root/libsolidity/analysis
diff options
context:
space:
mode:
Diffstat (limited to 'libsolidity/analysis')
-rw-r--r--libsolidity/analysis/TypeChecker.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/libsolidity/analysis/TypeChecker.cpp b/libsolidity/analysis/TypeChecker.cpp
index 058e879e..416ac1ef 100644
--- a/libsolidity/analysis/TypeChecker.cpp
+++ b/libsolidity/analysis/TypeChecker.cpp
@@ -769,6 +769,14 @@ void TypeChecker::endVisit(Conditional const& _conditional)
"."
);
_conditional.annotation().type = commonType;
+
+ if (_conditional.annotation().lValueRequested)
+ {
+ requireLValue(_conditional.trueExpression());
+ requireLValue(_conditional.falseExpression());
+
+ _conditional.annotation().isLValue = true;
+ }
}
bool TypeChecker::visit(Assignment const& _assignment)