aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorgingerBill <bill@gingerbill.org>2020-11-10 19:00:16 +0000
committergingerBill <bill@gingerbill.org>2020-11-10 19:00:16 +0000
commit6c0fa24e5d5ddb0ed68c38ba54d202468cbd4a8a (patch)
tree56075a0972d5801d638edf4350c9d61544b4f374 /src
parent27d066054605ac96c8ae7236aee2021342492046 (diff)
Force dependency for @(export) entities
Diffstat (limited to 'src')
-rw-r--r--src/checker.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/checker.cpp b/src/checker.cpp
index ac324fffa..fe669ab8c 100644
--- a/src/checker.cpp
+++ b/src/checker.cpp
@@ -1842,6 +1842,22 @@ void generate_minimum_dependency_set(Checker *c, Entity *start) {
add_dependency_to_set(c, e);
}
+ for_array(i, c->info.entities) {
+ Entity *e = c->info.entities[i];
+ switch (e->kind) {
+ case Entity_Variable:
+ if (e->Variable.is_export) {
+ add_dependency_to_set(c, e);
+ }
+ break;
+ case Entity_Procedure:
+ if (e->Procedure.is_export) {
+ add_dependency_to_set(c, e);
+ }
+ break;
+ }
+ }
+
add_dependency_to_set(c, start);
}