aboutsummaryrefslogtreecommitdiff
path: root/src/codegen/spirv.zig
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2023-10-23 03:19:03 -0400
committerGitHub <noreply@github.com>2023-10-23 03:19:03 -0400
commit94d61ce964cd23fcf46dabeddc19837b4dd3209f (patch)
tree00fc6af0a362d7d5744744e3f5e8008136957401 /src/codegen/spirv.zig
parentb82459fa435c366c6af0fee96c3d9b95c24078f9 (diff)
parented82e4f7ac057286444135dda79fb7c6a579573a (diff)
downloadzig-94d61ce964cd23fcf46dabeddc19837b4dd3209f.tar.gz
zig-94d61ce964cd23fcf46dabeddc19837b4dd3209f.zip
Merge pull request #17651 from Vexu/error-limit
Make distinct error limit configurable (attempt #2)
Diffstat (limited to 'src/codegen/spirv.zig')
-rw-r--r--src/codegen/spirv.zig5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/codegen/spirv.zig b/src/codegen/spirv.zig
index e7e6ebdef3..40fc2f50bb 100644
--- a/src/codegen/spirv.zig
+++ b/src/codegen/spirv.zig
@@ -742,16 +742,17 @@ const DeclGen = struct {
.error_union => |error_union| {
// TODO: Error unions may be constructed with constant instructions if the payload type
// allows it. For now, just generate it here regardless.
+ const err_int_ty = try mod.errorIntType();
const err_ty = switch (error_union.val) {
.err_name => ty.errorUnionSet(mod),
- .payload => Type.err_int,
+ .payload => err_int_ty,
};
const err_val = switch (error_union.val) {
.err_name => |err_name| (try mod.intern(.{ .err = .{
.ty = ty.errorUnionSet(mod).toIntern(),
.name = err_name,
} })).toValue(),
- .payload => try mod.intValue(Type.err_int, 0),
+ .payload => try mod.intValue(err_int_ty, 0),
};
const payload_ty = ty.errorUnionPayload(mod);
const eu_layout = self.errorUnionLayout(payload_ty);