zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

commit c804abc7f6948a14e806104dd5ded6cabc5665be (tree)
parent 012cbdb422fd4d89fe24d272a22f21376a4ab884
Author: Andrew Kelley <andrew@ziglang.org>
Date:   Sat, 22 Jul 2023 20:21:27 -0700

Sema: handle adhoc inferred error sets in helper functions

There were two missing places.

Regressed in the #16318 branch.

Found from compiling Bun. Unfortunately we do not have a behavior test
reduction for this bug.

Diffstat:
Msrc/type.zig | 3++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/type.zig b/src/type.zig @@ -2065,7 +2065,7 @@ pub const Type = struct { pub fn errorSetIsEmpty(ty: Type, mod: *Module) bool { const ip = &mod.intern_pool; return switch (ty.toIntern()) { - .anyerror_type => false, + .anyerror_type, .adhoc_inferred_error_set_type => false, else => switch (ip.indexToKey(ty.toIntern())) { .error_set_type => |error_set_type| error_set_type.names.len == 0, .inferred_error_set_type => |i| switch (ip.funcIesResolved(i).*) { @@ -2084,6 +2084,7 @@ pub const Type = struct { const ip = &mod.intern_pool; return switch (ty.toIntern()) { .anyerror_type => true, + .adhoc_inferred_error_set_type => false, else => switch (mod.intern_pool.indexToKey(ty.toIntern())) { .inferred_error_set_type => |i| ip.funcIesResolved(i).* == .anyerror_type, else => false,