From 61db6c1234d6a38723fbd38da45e52ea773ca2a7 Mon Sep 17 00:00:00 2001 From: gingerBill Date: Wed, 10 Jun 2020 16:36:59 +0100 Subject: [PATCH] Add force usage when importing `intrinsics` or `builtin` --- src/checker.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/checker.cpp b/src/checker.cpp index 41453dc99..2ca4d794f 100644 --- a/src/checker.cpp +++ b/src/checker.cpp @@ -3524,12 +3524,16 @@ void check_add_import_decl(CheckerContext *ctx, Ast *decl) { Scope *scope = nullptr; + bool force_use = false; + if (id->fullpath == "builtin") { scope = builtin_pkg->scope; builtin_pkg->used = true; + force_use = true; } else if (id->fullpath == "intrinsics") { scope = intrinsics_pkg->scope; intrinsics_pkg->used = true; + force_use = true; } else { AstPackage **found = string_map_get(pkgs, id->fullpath); if (found == nullptr) { @@ -3575,7 +3579,7 @@ void check_add_import_decl(CheckerContext *ctx, Ast *decl) { scope); add_entity(ctx->checker, parent_scope, nullptr, e); - if (id->is_using) { + if (force_use || id->is_using) { add_entity_use(ctx, nullptr, e); } }