From cdf515793f839021850f29d3923d7f4fd7c33482 Mon Sep 17 00:00:00 2001 From: Nikita Smith Date: Mon, 18 Aug 2025 15:42:47 -0700 Subject: [PATCH] stop walking on reaching an undefined symbol --- src/linker/lnk.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/linker/lnk.c b/src/linker/lnk.c index 0a2621ee..6a62f2ca 100644 --- a/src/linker/lnk.c +++ b/src/linker/lnk.c @@ -1138,6 +1138,9 @@ lnk_opt_ref(TP_Context *tp, LNK_SymbolTable *symtab, LNK_Config *config, LNK_Obj if (reloc_parsed.storage_class == COFF_SymStorageClass_External) { LNK_Symbol *defn = lnk_symbol_table_search(symtab, LNK_SymbolScope_Defined, ref_parsed.name); next_ref = defn->u.defined; + } else { + MemoryZeroStruct(&ref_symbol); + break; } } else if (ref_interp == COFF_SymbolValueInterp_Weak) { LNK_Symbol *defn = lnk_symbol_table_search(symtab, LNK_SymbolScope_Defined, ref_parsed.name);