From 278d8f3760411958ca7d67c4d87128ae1b6f4a60 Mon Sep 17 00:00:00 2001 From: "H.J. Lu" Date: Mon, 18 Apr 2005 03:13:49 +0000 Subject: 2005-04-17 H.J. Lu PR 855 * elf.c (_bfd_elf_copy_private_section_data): Don't copy linker created group data. --- bfd/ChangeLog | 6 ++++++ bfd/elf.c | 11 ++++++++--- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index a44e8f24c1..9b20c92fa1 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +2005-04-17 H.J. Lu + + PR 855 + * elf.c (_bfd_elf_copy_private_section_data): Don't copy linker + created group data. + 2005-04-17 H.J. Lu PR 855 diff --git a/bfd/elf.c b/bfd/elf.c index 5f681129e5..1434678ce7 100644 --- a/bfd/elf.c +++ b/bfd/elf.c @@ -5519,9 +5519,14 @@ _bfd_elf_copy_private_section_data (bfd *ibfd, /* Set things up for objcopy. The output SHT_GROUP section will have its elf_next_in_group pointing back to the input group - members. */ - elf_next_in_group (osec) = elf_next_in_group (isec); - elf_group_name (osec) = elf_group_name (isec); + members. Ignore linker created group section. See + elfNN_ia64_object_p in elfxx-ia64.c. */ + if (elf_sec_group (isec) == NULL + || (elf_sec_group (isec)->flags & SEC_LINKER_CREATED) == 0) + { + elf_next_in_group (osec) = elf_next_in_group (isec); + elf_group_name (osec) = elf_group_name (isec); + } osec->use_rela_p = isec->use_rela_p; -- cgit v1.2.1