aboutsummaryrefslogtreecommitdiff
path: root/src/checker.cpp
diff options
context:
space:
mode:
authorgingerBill <gingerBill@users.noreply.github.com>2025-10-30 16:14:32 +0000
committergingerBill <gingerBill@users.noreply.github.com>2025-10-30 16:14:32 +0000
commit816c47058da777bafb4bba17d0648a6e221b4a94 (patch)
treece0399a0c38cfefb3affcdc3f39e534965a491b6 /src/checker.cpp
parent1a00d02ee73b826d5cfa4eba06625ceee921c180 (diff)
For test runner, try to look for `os.exit` or `os2.exit`
Diffstat (limited to 'src/checker.cpp')
-rw-r--r--src/checker.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/checker.cpp b/src/checker.cpp
index 8b3638c9d..1daacd9ce 100644
--- a/src/checker.cpp
+++ b/src/checker.cpp
@@ -923,6 +923,22 @@ gb_internal AstPackage *get_core_package(CheckerInfo *info, String name) {
return *found;
}
+
+gb_internal AstPackage *try_get_core_package(CheckerInfo *info, String name) {
+ if (name == "runtime") {
+ return get_runtime_package(info);
+ }
+
+ gbAllocator a = heap_allocator();
+ String path = get_fullpath_core_collection(a, name, nullptr);
+ defer (gb_free(a, path.text));
+ auto found = string_map_get(&info->packages, path);
+ if (found == nullptr) {
+ return nullptr;
+ }
+ return *found;
+}
+
gb_internal void add_package_dependency(CheckerContext *c, char const *package_name, char const *name, bool required=false) {
String n = make_string_c(name);
AstPackage *p = get_core_package(&c->checker->info, make_string_c(package_name));