commit 8df84cce8b68339c332d30213efe90cdc833d059 (tree)
parent 4dd65316b7d5756809394710078718b3ee536a9b
Author: Andrew Kelley <andrew@ziglang.org>
Date: Mon, 28 Mar 2022 18:49:49 -0700
Sema: queue full type resolution of builtin types
Diffstat:
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/src/Sema.zig b/src/Sema.zig
@@ -11594,6 +11594,7 @@ fn typeInfoDecls(
var buffer: Value.ToTypeBuffer = undefined;
break :t try declaration_ty_decl.val.toType(&buffer).copy(decls_anon_decl.arena());
};
+ try sema.queueFullTypeResolution(try declaration_ty.copy(sema.arena));
const decls_len = if (opt_namespace) |ns| ns.decls.count() else 0;
const decls_vals = try decls_anon_decl.arena().alloc(Value, decls_len);
@@ -22047,7 +22048,9 @@ fn getBuiltinType(
name: []const u8,
) CompileError!Type {
const ty_inst = try sema.getBuiltin(block, src, name);
- return sema.analyzeAsType(block, src, ty_inst);
+ const result_ty = try sema.analyzeAsType(block, src, ty_inst);
+ try sema.queueFullTypeResolution(result_ty);
+ return result_ty;
}
/// There is another implementation of this in `Type.onePossibleValue`. This one