aboutsummaryrefslogtreecommitdiff
path: root/src/checker.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/checker.cpp')
-rw-r--r--src/checker.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/checker.cpp b/src/checker.cpp
index a8efa39ab..18d403d80 100644
--- a/src/checker.cpp
+++ b/src/checker.cpp
@@ -1922,6 +1922,12 @@ gb_internal void add_type_info_type_internal(CheckerContext *c, Type *t) {
for_array(i, bt->Union.variants) {
add_type_info_type_internal(c, bt->Union.variants[i]);
}
+ if (bt->Union.scope != nullptr) {
+ for (auto const &entry : bt->Union.scope->elements) {
+ Entity *e = entry.value;
+ add_type_info_type_internal(c, e->type);
+ }
+ }
break;
case Type_Struct:
@@ -2265,7 +2271,6 @@ gb_internal void add_dependency_to_set(Checker *c, Entity *entity) {
if (decl == nullptr) {
return;
}
-
for (Type *t : decl->type_info_deps) {
add_min_dep_type_info(c, t);
}