aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ld/ChangeLog7
-rw-r--r--ld/emultempl/armelf.em7
-rw-r--r--ld/emultempl/elf32.em7
3 files changed, 15 insertions, 6 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog
index fc0c50e..d567f00 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,10 @@
+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.
+
2000-04-18 Alan Modra <alan@linuxcare.com.au>
* emultempl/elf32.em (struct orphan_save): Add section field.
diff --git a/ld/emultempl/armelf.em b/ld/emultempl/armelf.em
index 8632bd3..8de6c9b 100644
--- a/ld/emultempl/armelf.em
+++ b/ld/emultempl/armelf.em
@@ -933,13 +933,14 @@ gld${EMULATION_NAME}_place_orphan (file, s)
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)
diff --git a/ld/emultempl/elf32.em b/ld/emultempl/elf32.em
index d5ee9af..d57aadb 100644
--- a/ld/emultempl/elf32.em
+++ b/ld/emultempl/elf32.em
@@ -1015,13 +1015,14 @@ gld${EMULATION_NAME}_place_orphan (file, s)
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)