aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/Module.zig2
-rw-r--r--src/Sema.zig8
2 files changed, 3 insertions, 7 deletions
diff --git a/src/Module.zig b/src/Module.zig
index 2bda1707b2..6ef5389360 100644
--- a/src/Module.zig
+++ b/src/Module.zig
@@ -1578,7 +1578,7 @@ pub const Fn = struct {
errors: ErrorSet.NameMap = .{},
/// Other inferred error sets which this inferred error set should include.
- inferred_error_sets: std.AutoHashMapUnmanaged(*InferredErrorSet, void) = .{},
+ inferred_error_sets: std.AutoArrayHashMapUnmanaged(*InferredErrorSet, void) = .{},
/// Whether the function returned anyerror. This is true if either of
/// the dependent functions returns anyerror.
diff --git a/src/Sema.zig b/src/Sema.zig
index b2a0dfa779..bd956d32bc 100644
--- a/src/Sema.zig
+++ b/src/Sema.zig
@@ -27509,9 +27509,7 @@ fn analyzeIsNonErrComptimeOnly(
// Try to avoid resolving inferred error set if possible.
if (ies.errors.count() != 0) break :blk;
if (ies.is_anyerror) break :blk;
- var it = ies.inferred_error_sets.keyIterator();
- while (it.next()) |other_error_set_ptr| {
- const other_ies: *Module.Fn.InferredErrorSet = other_error_set_ptr.*;
+ for (ies.inferred_error_sets.keys()) |other_ies| {
if (ies == other_ies) continue;
try sema.resolveInferredErrorSet(block, src, other_ies);
if (other_ies.is_anyerror) {
@@ -29432,9 +29430,7 @@ fn resolveInferredErrorSet(
ies.is_resolved = true;
- var it = ies.inferred_error_sets.keyIterator();
- while (it.next()) |other_error_set_ptr| {
- const other_ies: *Module.Fn.InferredErrorSet = other_error_set_ptr.*;
+ for (ies.inferred_error_sets.keys()) |other_ies| {
if (ies == other_ies) continue;
try sema.resolveInferredErrorSet(block, src, other_ies);