diff options
author | Nick Clifton <nickc@redhat.com> | 2018-02-03 13:11:35 +0000 |
---|---|---|
committer | Nick Clifton <nickc@redhat.com> | 2018-02-03 13:11:35 +0000 |
commit | b0daac83d78c82f7998287bb717063c4d01d4f97 (patch) | |
tree | 2beb203c407b3a1225e23ceb23cb401fbee24a31 /ld/ld.texinfo | |
parent | 138a158f0a561d406bebb8b91eba0dd6dedd430e (diff) | |
download | gdb-b0daac83d78c82f7998287bb717063c4d01d4f97.zip gdb-b0daac83d78c82f7998287bb717063c4d01d4f97.tar.gz gdb-b0daac83d78c82f7998287bb717063c4d01d4f97.tar.bz2 |
Remove PROVIDE() qualifiers from definition of __CTOR_LIST__ and __DTOR_LIST__ symbols in PE linker scripts.
PR 22762
* scripttempl/pe.sc: Remove PROVIDE()s from __CTOR_LIST__ and
__DTOR_LIST__ symbols. Add a comment explaining why this is
necessary.
* scripttemp/pep.sc: Likewise.
* ld.texinfo (PROVIDE): Add a note about the effect of common
symbols.
Diffstat (limited to 'ld/ld.texinfo')
-rw-r--r-- | ld/ld.texinfo | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/ld/ld.texinfo b/ld/ld.texinfo index c89915f..764c401 100644 --- a/ld/ld.texinfo +++ b/ld/ld.texinfo @@ -4001,6 +4001,12 @@ underscore), the linker will silently use the definition in the program. If the program references @samp{etext} but does not define it, the linker will use the definition in the linker script. +Note - the @code{PROVIDE} directive considers a common symbol to be +defined, even though such a symbol could be combined with the symbol +that the @code{PROVIDE} would create. This is particularly important +when considering constructor and destructor list symbols such as +@samp{__CTOR_LIST__} as these are often defined as common symbols. + @node PROVIDE_HIDDEN @subsection PROVIDE_HIDDEN @cindex PROVIDE_HIDDEN |