Merge pull request #5860 from harold-b/hb.fix-export-link-libs-file

Fix `-export-linked-libs-file` issue where it multiple libraries in a single foreign export.
This commit is contained in:
Jeroen van Rijn
2025-10-29 09:41:02 +01:00
committed by GitHub
+5 -5
View File
@@ -2296,9 +2296,10 @@ gb_internal void export_linked_libraries(LinkerData *gen) {
for (auto *e : gen->foreign_libraries) { for (auto *e : gen->foreign_libraries) {
GB_ASSERT(e->kind == Entity_LibraryName); GB_ASSERT(e->kind == Entity_LibraryName);
ast_node(imp, ForeignImportDecl, e->LibraryName.decl);
for (auto lib_path : e->LibraryName.paths) { for (isize i = 0; i < e->LibraryName.paths.count; i++) {
lib_path = string_trim_whitespace(lib_path); String lib_path = string_trim_whitespace(e->LibraryName.paths[i]);
if (lib_path.len == 0) { if (lib_path.len == 0) {
continue; continue;
} }
@@ -2319,8 +2320,8 @@ gb_internal void export_linked_libraries(LinkerData *gen) {
} }
gb_fprintf(&f, "\t"); gb_fprintf(&f, "\t");
ast_node(imp, ForeignImportDecl, e->LibraryName.decl);
for (Ast* file_path : imp->filepaths) { Ast *file_path = imp->filepaths[i];
GB_ASSERT(file_path->tav.mode == Addressing_Constant && file_path->tav.value.kind == ExactValue_String); GB_ASSERT(file_path->tav.mode == Addressing_Constant && file_path->tav.value.kind == ExactValue_String);
String file_path_str = file_path->tav.value.value_string; String file_path_str = file_path->tav.value.value_string;
@@ -2329,7 +2330,6 @@ gb_internal void export_linked_libraries(LinkerData *gen) {
} else { } else {
gb_fprintf(&f, "user"); gb_fprintf(&f, "user");
} }
}
gb_fprintf(&f, "\n"); gb_fprintf(&f, "\n");
} }