From fc62ff77c3921758624a81970f3098300992ee47 Mon Sep 17 00:00:00 2001 From: Veikka Tuominen Date: Mon, 1 Mar 2021 23:03:26 +0200 Subject: [PATCH] stage2: error union payload must also be a valid variable type --- src/codegen/c.zig | 2 +- src/type.zig | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/codegen/c.zig b/src/codegen/c.zig index ceafe01d35..af8d2d272d 100644 --- a/src/codegen/c.zig +++ b/src/codegen/c.zig @@ -566,7 +566,7 @@ pub fn genBody(o: *Object, body: ir.Body) error{ AnalysisFail, OutOfMemory }!voi .is_non_null_ptr => try genIsNull(o, inst.castTag(.is_non_null_ptr).?), .wrap_optional => try genWrapOptional(o, inst.castTag(.wrap_optional).?), .optional_payload => try genOptionalPayload(o, inst.castTag(.optional_payload).?), - .optional_payload_ptr => try genOptionalPayload(o, inst.castTag(.optional_payload).?), + .optional_payload_ptr => try genOptionalPayload(o, inst.castTag(.optional_payload_ptr).?), .is_err => try genIsErr(o, inst.castTag(.is_err).?), .is_err_ptr => try genIsErr(o, inst.castTag(.is_err_ptr).?), .unwrap_errunion_payload => try genUnwrapErrUnionPay(o, inst.castTag(.unwrap_errunion_payload).?), diff --git a/src/type.zig b/src/type.zig index b9f9207d4a..9599a165fd 100644 --- a/src/type.zig +++ b/src/type.zig @@ -1663,7 +1663,6 @@ pub const Type = extern union { .Int, .Float, .ErrorSet, - .ErrorUnion, .Enum, .Frame, .AnyFrame, @@ -1687,6 +1686,7 @@ pub const Type = extern union { return ty.optionalChild(&buf).isValidVarType(is_extern); }, .Pointer, .Array => ty = ty.elemType(), + .ErrorUnion => ty = ty.errorUnionChild(), .Fn => @panic("TODO fn isValidVarType"), .Struct => @panic("TODO struct isValidVarType"),