From cc8fdc6c6fe87efb4fc95aee3a5c7532f0049533 Mon Sep 17 00:00:00 2001 From: Nikita Smith Date: Tue, 16 Sep 2025 16:00:09 -0700 Subject: [PATCH] order check for COMDATs with any property --- src/linker/lnk_symbol_table.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/src/linker/lnk_symbol_table.c b/src/linker/lnk_symbol_table.c index 175c5e54..dc9f37a0 100644 --- a/src/linker/lnk_symbol_table.c +++ b/src/linker/lnk_symbol_table.c @@ -273,12 +273,7 @@ lnk_can_replace_symbol(LNK_Symbol *dst, LNK_Symbol *src) switch (src_select) { case COFF_ComdatSelect_Null: case COFF_ComdatSelect_Any: { - if (src_section_length == dst_section_length) { - can_replace = lnk_obj_is_before(src_obj, dst_obj); - } else { - // both COMDATs are valid but to get smaller exe pick smallest - can_replace = 0; - } + can_replace = lnk_obj_is_before(src_obj, dst_obj); } break; case COFF_ComdatSelect_NoDuplicates: { lnk_error_multiply_defined_symbol(dst, src);