bfd/
authorH.J. Lu <hjl.tools@gmail.com>
Thu, 22 Jul 2004 14:19:04 +0000 (14:19 +0000)
committerH.J. Lu <hjl.tools@gmail.com>
Thu, 22 Jul 2004 14:19:04 +0000 (14:19 +0000)
2004-07-22  H.J. Lu  <hongjiu.lu@intel.com>

* elflink.c (elf_fixup_link_order): Issue a warning and flag
an error if failed.

ld/

2004-07-22  H.J. Lu  <hongjiu.lu@intel.com>

* ld-scripts/crossref.exp: XFAIL ia64-*-* on the first test.

bfd/ChangeLog
bfd/elflink.c
ld/testsuite/ChangeLog
ld/testsuite/ld-scripts/crossref.exp

index fce9926e97f48fc8522d9e28435f85f9c761a4a2..d0eb8ee0849213bcf6fc9aa1c6a5e82c67492b9c 100644 (file)
@@ -1,3 +1,8 @@
+2004-07-22  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * elflink.c (elf_fixup_link_order): Issue a warning and flag
+       an error if failed.
+
 2004-07-21  H.J. Lu  <hongjiu.lu@intel.com>
 
        * aout-adobe.c (aout_32_section_already_linked): Defined.
index f75dbaca8d98d03da906a4751e867ebf18e27e2b..e3f5e4af828076b45debd11799bc5b13b8ce699d 100644 (file)
@@ -7252,7 +7252,12 @@ elf_fixup_link_order (bfd *abfd, asection *o)
     return TRUE;
 
   if (seen_other && seen_linkorder)
-    return FALSE;
+    {
+      (*_bfd_error_handler) ("%s: has both ordered and unordered sections",
+                            o->name);
+      bfd_set_error (bfd_error_bad_value);
+      return FALSE;
+    }
   
   sections = (struct bfd_link_order **)
     xmalloc (seen_linkorder * sizeof (struct bfd_link_order *));
index ec185219043856dada41c6b4a7ad798e4a55d743..74732d4f8989278d38138b0b2301a9f5b84f242e 100644 (file)
@@ -1,3 +1,7 @@
+2004-07-22  H.J. Lu  <hongjiu.lu@intel.com>
+
+       * ld-scripts/crossref.exp: XFAIL ia64-*-* on the first test.
+
 2004-07-13  Nitin Yewale <nitiny@kpitcummins.com>
 
        * ld-h8300/h8300.exp: Addition of gcsection test case.
index 4fd81b3de89e47ab87de90e3ede7c395ad3b8f30..e6761ef48a9b79a1a88963ffb6734fde879dbb72 100644 (file)
@@ -54,6 +54,9 @@ if [istarget sh64*-*-elf] {
     set flags "-mshelf32"
 }
 
+# IA64 has both ordered and unordered sections in an input file.
+setup_xfail ia64-*-*
+
 verbose -log "$ld $flags -o tmpdir/cross1 -T $srcdir/$subdir/cross1.t tmpdir/cross1.o tmpdir/cross2.o"
 
 catch "exec $ld $flags -o tmpdir/cross1 -T $srcdir/$subdir/cross1.t tmpdir/cross1.o tmpdir/cross2.o" exec_output