This is the mail archive of the
binutils@sourceware.cygnus.com
mailing list for the binutils project.
Patch: ld in CVS is still broken
- To: binutils at sourceware dot cygnus dot com
- Subject: Patch: ld in CVS is still broken
- From: "H . J . Lu" <hjl at valinux dot com>
- Date: Tue, 18 Apr 2000 16:41:16 -0700
- Cc: Ian Lance Taylor <ian at zembu dot com>, alan at linuxcare dot com dot au
I checked in the following patch to fix:
http://sourceware.cygnus.com/ml/binutils/2000-04/msg00439.html
--
H.J. Lu (hjl@gnu.org)
--
2000-04-18 H.J. Lu <hjl@gnu.org>
* emultempl/elf32.em (gld${EMULATION_NAME}_place_orphan): Call
lang_leave_output_section_statement () after calling
lang_enter_output_section_statement ().
* emultempl/armelf.em: Likewise.
Index: emultempl/armelf.em
===================================================================
RCS file: /work/cvs/gnu/binutils/ld/emultempl/armelf.em,v
retrieving revision 1.1.1.13
diff -u -p -r1.1.1.13 armelf.em
--- emultempl/armelf.em 2000/04/18 17:06:32 1.1.1.13
+++ emultempl/armelf.em 2000/04/18 23:34:09
@@ -933,13 +933,14 @@ gld${EMULATION_NAME}_place_orphan (file,
os = lang_output_section_statement_lookup (outsecname);
wild_doit (&os->children, s, os, file);
+ lang_leave_output_section_statement
+ ((bfd_vma) 0, "*default*",
+ (struct lang_output_section_phdr_list *) NULL, "*default*");
+
if (place != NULL)
{
asection *snew, **pps;
- lang_leave_output_section_statement
- ((bfd_vma) 0, "*default*",
- (struct lang_output_section_phdr_list *) NULL, "*default*");
stat_ptr = &add;
if (*ps == '\0' && config.build_constructors)
Index: emultempl/elf32.em
===================================================================
RCS file: /work/cvs/gnu/binutils/ld/emultempl/elf32.em,v
retrieving revision 1.13
diff -u -p -r1.13 elf32.em
--- emultempl/elf32.em 2000/04/18 17:12:40 1.13
+++ emultempl/elf32.em 2000/04/18 23:31:34
@@ -1015,13 +1015,14 @@ gld${EMULATION_NAME}_place_orphan (file,
os = lang_output_section_statement_lookup (outsecname);
wild_doit (&os->children, s, os, file);
+ lang_leave_output_section_statement
+ ((bfd_vma) 0, "*default*",
+ (struct lang_output_section_phdr_list *) NULL, "*default*");
+
if (place != NULL)
{
asection *snew, **pps;
- lang_leave_output_section_statement
- ((bfd_vma) 0, "*default*",
- (struct lang_output_section_phdr_list *) NULL, "*default*");
stat_ptr = &add;
if (*ps == '\0' && config.build_constructors)