diff options
| author | gingerBill <bill@gingerbill.org> | 2022-02-18 16:12:21 +0000 |
|---|---|---|
| committer | gingerBill <bill@gingerbill.org> | 2022-02-18 16:12:21 +0000 |
| commit | 5f8137025d0abb946c186dc01271495cf839a871 (patch) | |
| tree | a2ee8ce2a95f963c695211d3f49e49ec638c677a /src/checker.cpp | |
| parent | 1843d522173a646786a226320e1443d43591fbca (diff) | |
Use `try_to_add_package_dependency`
Diffstat (limited to 'src/checker.cpp')
| -rw-r--r-- | src/checker.cpp | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/src/checker.cpp b/src/checker.cpp index 81e6f256e..f8aa8d45b 100644 --- a/src/checker.cpp +++ b/src/checker.cpp @@ -733,12 +733,25 @@ void add_package_dependency(CheckerContext *c, char const *package_name, char co String n = make_string_c(name); AstPackage *p = get_core_package(&c->checker->info, make_string_c(package_name)); Entity *e = scope_lookup(p->scope, n); - e->flags |= EntityFlag_Used; GB_ASSERT_MSG(e != nullptr, "%s", name); GB_ASSERT(c->decl != nullptr); + e->flags |= EntityFlag_Used; + add_dependency(c->info, c->decl, e); +} + +void try_to_add_package_dependency(CheckerContext *c, char const *package_name, char const *name) { + String n = make_string_c(name); + AstPackage *p = get_core_package(&c->checker->info, make_string_c(package_name)); + Entity *e = scope_lookup(p->scope, n); + if (e == nullptr) { + return; + } + GB_ASSERT(c->decl != nullptr); + e->flags |= EntityFlag_Used; add_dependency(c->info, c->decl, e); } + void add_declaration_dependency(CheckerContext *c, Entity *e) { if (e == nullptr) { return; |