aboutsummaryrefslogtreecommitdiff
path: root/src/type.zig
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2021-11-16 13:59:53 -0700
committerAndrew Kelley <andrew@ziglang.org>2021-11-16 14:01:07 -0700
commit85e427e4b21d88a870b4a34e9562f2ce7ab65fb7 (patch)
treec3655f0ea36fad5508f5652d86427a6bfb0da35e /src/type.zig
parent4eaf3c665e8c0b028a7ea02a0fbcb1950c8b1a25 (diff)
downloadzig-85e427e4b21d88a870b4a34e9562f2ce7ab65fb7.tar.gz
zig-85e427e4b21d88a870b4a34e9562f2ce7ab65fb7.zip
stage2: equality compare optional with non-optional
Diffstat (limited to 'src/type.zig')
-rw-r--r--src/type.zig6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/type.zig b/src/type.zig
index e02ec051cf..728ba8ef5f 100644
--- a/src/type.zig
+++ b/src/type.zig
@@ -175,7 +175,11 @@ pub const Type = extern union {
=> false,
.Pointer => is_equality_cmp or ty.isCPtr(),
- .Optional => is_equality_cmp and ty.isPtrLikeOptional(),
+ .Optional => {
+ if (!is_equality_cmp) return false;
+ var buf: Payload.ElemType = undefined;
+ return ty.optionalChild(&buf).isSelfComparable(is_equality_cmp);
+ },
};
}