[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug gold/28871] New: gold: --no-define-common is incompatible with GNU
From: |
i at maskray dot me |
Subject: |
[Bug gold/28871] New: gold: --no-define-common is incompatible with GNU ld |
Date: |
Tue, 08 Feb 2022 08:57:02 +0000 |
https://sourceware.org/bugzilla/show_bug.cgi?id=28871
Bug ID: 28871
Summary: gold: --no-define-common is incompatible with GNU ld
Product: binutils
Version: unspecified
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: gold
Assignee: ccoutant at gmail dot com
Reporter: i at maskray dot me
CC: ian at airs dot com
Target Milestone: ---
In 2001-09, [optionally postpone assignment of
Common](https://sourceware.org/pipermail/binutils/2001-September/014015.html)
added --no-define-common to be used with -shared. --define-common is not
implemented.
Here is my understanding: glibc around 2.1.3 used to have a ld.so bug that the
ELF interposition might not work. Using --no-define-common with shared objects
can make COMMON symbols undefined and circumvent the bug.
gold confuses --define-common with -d/FORCE_COMMON_ALLOCATION (commit
0dfbdef4c43cfe12bb3e2505ebe5acc651a35c98) and implements --define-common with
-d semantics. Its --no-define-common is incompatible with GNU ld.
I suggest that gold removes --[no-]define-common. Debian Code Search says no
project uses this option.
--
You are receiving this mail because:
You are on the CC list for the bug.
- [Bug gold/28871] New: gold: --no-define-common is incompatible with GNU ld,
i at maskray dot me <=