Browse Source

Force dependency for @(export) entities

gingerBill 4 years ago
parent
commit
6c0fa24e5d
1 changed files with 16 additions and 0 deletions
  1. 16 0
      src/checker.cpp

+ 16 - 0
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);
 }