https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78336

--- Comment #3 from David Edelsohn <dje at gcc dot gnu.org> ---
So the problem is the reference to ASM_OUTPUT_DEF in rs6000_asm_weaken_decl,
despite the fact that the function never will be called on Darwin.  Previously
the ASM_WEAKEN_DECL macro was protected by RS6000_WEAK and now the function --
with the reference to ASM_OUTPUT_DEF -- is defined regardless.

The solutions include:

1) Bracket rs6000_asm_weaken_decl with #if RS6000_WEAK to match the previous
logic.

2) Bracket rs6000_asm_weaken_decl with #ifdef ASM_OUTPUT_DEF.

3) Bracket the call to ASM_OUTPUT_DEF with #ifdef ASM_OUTPUT_DEF.

4) Create a no-op definition of ASM_OUTPUT_DEF on Darwin in darwin.h, similar
to xcoff.h.

Reply via email to