bugfix import member queue detection

This commit is contained in:
Nikita Smith
2026-01-16 18:53:03 -08:00
parent 8f47ce7616
commit 0c4009c328
2 changed files with 3 additions and 3 deletions
+2 -3
View File
@@ -1623,9 +1623,8 @@ lnk_link_inputs(TP_Context *tp,
member_ref->link_symbol->refs = import_stub->refs; member_ref->link_symbol->refs = import_stub->refs;
// push import member for import obj generation // push import member for import obj generation
LNK_LibMemberFlags member_flags = lib->member_flags[member_ref->member_idx]; if (!(lib->member_flags[member_ref->member_idx] & LNK_LibMemberFlag_WasQueued)) {
B32 is_first_link = member_flags != (LNK_LibMemberFlag_LinkedRegular | LNK_LibMemberFlag_LinkedImp); lib->member_flags[member_ref->member_idx] |= LNK_LibMemberFlag_WasQueued;
if (is_first_link) {
lnk_lib_member_ref_list_push_node(&link->imports, member_ref); lnk_lib_member_ref_list_push_node(&link->imports, member_ref);
} }
} break; } break;
+1
View File
@@ -8,6 +8,7 @@ enum
{ {
LNK_LibMemberFlag_LinkedRegular = (1 << 0), LNK_LibMemberFlag_LinkedRegular = (1 << 0),
LNK_LibMemberFlag_LinkedImp = (1 << 1), LNK_LibMemberFlag_LinkedImp = (1 << 1),
LNK_LibMemberFlag_WasQueued = (1 << 2),
}; };
typedef struct LNK_Lib typedef struct LNK_Lib