diff options
-rw-r--r-- | ld/ChangeLog | 10 | ||||
-rw-r--r-- | ld/ldlang.c | 4 |
2 files changed, 12 insertions, 2 deletions
diff --git a/ld/ChangeLog b/ld/ChangeLog index 3c53837..4af9b07 100644 --- a/ld/ChangeLog +++ b/ld/ChangeLog @@ -1,5 +1,15 @@ 2001-08-20 Alan Modra <amodra@bigpond.net.au> + * ldlang.c (insert_pad): Fix typos in last patch. + + * ldlang.c: When traversing lang_statement_union_type lists, + consistently use "header.next" rather than "next". + * mpw-eppcmac.c: Likewise. + * emultempl/beos.em: Likewise. + * emultempl/hppaelf.em: Likewise. + * emultempl/pe.em: Likewise. + * ldlang.h (union lang_statement_union): Remove "next" field. + * ldlang.c (insert_pad): Use offsetof macro. (lang_size_sections): Always neuter padding statements. * emultempl/hppaelf.em (hppaelf_delete_padding_statements): Delete. diff --git a/ld/ldlang.c b/ld/ldlang.c index 03a79b8..30de02b 100644 --- a/ld/ldlang.c +++ b/ld/ldlang.c @@ -2637,9 +2637,9 @@ insert_pad (ptr, fill, alignment_needed, output_section, dot) lang_statement_union_type *pad; pad = ((lang_statement_union_type *) - ((char *) ptr - offsetof (lang_statement_union_type *, header.next))); + ((char *) ptr - offsetof (lang_statement_union_type, header.next))); if (ptr != &statement_list.head - && pad->header.type == lang_padding_statement_enum) + && pad->header.type == lang_padding_statement_enum && pad->padding_statement.output_section == output_section) { /* Use the existing pad statement. The above test on output |