diff options
Diffstat (limited to 'gcc/config/elfos.h')
-rw-r--r-- | gcc/config/elfos.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/gcc/config/elfos.h b/gcc/config/elfos.h index 9eed0d1..6e41bb2 100644 --- a/gcc/config/elfos.h +++ b/gcc/config/elfos.h @@ -212,7 +212,15 @@ Boston, MA 02111-1307, USA. */ fprintf ((FILE), "%s\n", ASM_SECTION_START_OP) #endif -#define MAKE_DECL_ONE_ONLY(DECL) (DECL_WEAK (DECL) = 1) +/* Don't use weak for entities with vague linkage when HAVE_GAS_COMDAT_GROUP + is true. */ +#define MAKE_DECL_ONE_ONLY(DECL) \ + do \ + { \ + if (!HAVE_GAS_COMDAT_GROUP) \ + DECL_WEAK(DECL) = 1; \ + } \ + while (0) /* Switch into a generic section. */ #define TARGET_ASM_NAMED_SECTION default_elf_asm_named_section |