diff options
| author | Alan Modra <amodra@gmail.com> | 2026-02-21 10:56:57 +1030 |
|---|---|---|
| committer | Alan Modra <amodra@gmail.com> | 2026-02-21 10:57:14 +1030 |
| commit | 646982f4295bf0a1e64867606d496c34c9a15a0c (patch) | |
| tree | 1e334817aebebd1d65e1e711e38d3aeae5596f67 /libbacktrace/ChangeLog | |
| parent | 3049829f1e6dd849e5d3ca71d633990f8d799ae6 (diff) | |
| download | gdb-master.zip gdb-master.tar.gz gdb-master.tar.bz2 | |
Commit d4d05d13eba6 attempted to fix a similar error to that uncovered
by the testcase in pr33917, but did so in a way that was wrong.
Modifying an undefined_section symbol that is an equate breaks prior
use of that symbol, as shown in the rewrite of the
section-symbol-redef test.
Another oddity found when poking at pr33917 is that gas allows
x=0
.sect x
x=u
while
.sect x
x=u
fails with "Error: symbol `x' is already defined".
Fix all of this by rewriting section_symbol to properly check for the
only case where we want to redefine an existing symbol, a truly
undefined symbol, and always use section_symbol in obj-elf rather than
trying to handle undefined symbols there too.
PR 33917
* config/obj-elf.c (change_section): Always call section_symbol
to set up sym.
* subsegs.c (section_symbol): Rewrite.
* testsuite/gas/elf/section-symbol-redef.d
* testsuite/gas/elf/section-symbol-redef.s: Rewrite.
* testsuite/gas/elf/section-symbol-redef-2.d,
* testsuite/gas/elf/section-symbol-redef-2.s: New test.
* testsuite/gas/elf/elf.exp: Run new test.
Diffstat (limited to 'libbacktrace/ChangeLog')
0 files changed, 0 insertions, 0 deletions
