aboutsummaryrefslogtreecommitdiff
path: root/src/Sema.zig
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2025-07-21 16:11:26 -0700
committerAndrew Kelley <andrew@ziglang.org>2025-07-21 16:11:26 -0700
commit85b997b346aac7d5dc51f9b49ba7596db1b407b0 (patch)
tree5c8adf61117dbd8dbb54c3b6fb08360126f491c9 /src/Sema.zig
parent63f672d3228c2cdd97ab0934b888931a67ce887f (diff)
downloadzig-85b997b346aac7d5dc51f9b49ba7596db1b407b0.tar.gz
zig-85b997b346aac7d5dc51f9b49ba7596db1b407b0.zip
Sema: fix missed error union OPV
Diffstat (limited to 'src/Sema.zig')
-rw-r--r--src/Sema.zig4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/Sema.zig b/src/Sema.zig
index 1e3140528a..f3cca1ea6a 100644
--- a/src/Sema.zig
+++ b/src/Sema.zig
@@ -9058,6 +9058,10 @@ fn analyzeErrUnionPayload(
try sema.addSafetyCheckUnwrapError(block, src, operand, .unwrap_errunion_err, .is_non_err);
}
+ if (try sema.typeHasOnePossibleValue(payload_ty)) |payload_only_value| {
+ return Air.internedToRef(payload_only_value.toIntern());
+ }
+
return block.addTyOp(.unwrap_errunion_payload, payload_ty, operand);
}