aboutsummaryrefslogtreecommitdiff
path: root/src/check_stmt.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/check_stmt.cpp')
-rw-r--r--src/check_stmt.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/check_stmt.cpp b/src/check_stmt.cpp
index 1b94e8ade..8cbbf4c25 100644
--- a/src/check_stmt.cpp
+++ b/src/check_stmt.cpp
@@ -1297,7 +1297,11 @@ void check_stmt_internal(Checker *c, AstNode *node, u32 flags) {
check_comparison(c, &a1, &b1, op);
} else {
Operand y = {};
- check_expr(c, &y, expr);
+ if (is_operand_a_type_value(x)) {
+ check_expr_or_type(c, &y, expr);
+ } else {
+ check_expr(c, &y, expr);
+ }
if (x.mode == Addressing_Invalid ||
y.mode == Addressing_Invalid) {
continue;