aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--bfd/ChangeLog7
-rw-r--r--bfd/elflink.c4
-rw-r--r--ld/testsuite/ChangeLog8
-rw-r--r--ld/testsuite/ld-i386/i386.exp1
-rw-r--r--ld/testsuite/ld-i386/warn1.d4
-rw-r--r--ld/testsuite/ld-i386/warn1.s5
6 files changed, 27 insertions, 2 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index ab00026..813c13d 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,3 +1,10 @@
+2007-04-05 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR ld/4304
+ * elflink.c (bfd_elf_final_link): Call einfo callback in
+ bfd_link_info instead of _bfd_error_handler for DT_TEXTREL
+ warning.
+
2007-04-05 Alan Modra <amodra@bigpond.net.au>
* elf32-spu.c (spu_elf_output_symbol_hook): New function.
diff --git a/bfd/elflink.c b/bfd/elflink.c
index 360ac69c..228debb 100644
--- a/bfd/elflink.c
+++ b/bfd/elflink.c
@@ -9944,8 +9944,8 @@ bfd_elf_final_link (bfd *abfd, struct bfd_link_info *info)
if (dyn.d_tag == DT_TEXTREL)
{
- _bfd_error_handler
- (_("warning: creating a DT_TEXTREL in a shared object."));
+ info->callbacks->einfo
+ (_("%P: warning: creating a DT_TEXTREL in a shared object.\n"));
break;
}
}
diff --git a/ld/testsuite/ChangeLog b/ld/testsuite/ChangeLog
index d15e797..bea757e 100644
--- a/ld/testsuite/ChangeLog
+++ b/ld/testsuite/ChangeLog
@@ -1,5 +1,13 @@
2007-04-05 H.J. Lu <hongjiu.lu@intel.com>
+ PR ld/4304
+ * ld-i386/i386.exp: Run "warn1".
+
+ * ld-i386/warn1.d: New file.
+ * ld-i386/warn1.s: Likewise.
+
+2007-04-05 H.J. Lu <hongjiu.lu@intel.com>
+
* ld-i386/combreloc.d: Remove #target: i?86-*-*.
* ld-i386/reloc.d: Likewise.
diff --git a/ld/testsuite/ld-i386/i386.exp b/ld/testsuite/ld-i386/i386.exp
index f008829..1032e8e 100644
--- a/ld/testsuite/ld-i386/i386.exp
+++ b/ld/testsuite/ld-i386/i386.exp
@@ -115,3 +115,4 @@ run_dump_test "pcrel8"
run_dump_test "pcrel16"
run_dump_test "pcrel16abs"
run_dump_test "alloc"
+run_dump_test "warn1"
diff --git a/ld/testsuite/ld-i386/warn1.d b/ld/testsuite/ld-i386/warn1.d
new file mode 100644
index 0000000..dd541f2
--- /dev/null
+++ b/ld/testsuite/ld-i386/warn1.d
@@ -0,0 +1,4 @@
+#name: --warn-shared-textrel --fatal-warnings
+#as: --32
+#ld: -shared -melf_i386 --warn-shared-textrel --fatal-warnings
+#error: .*warning: creating a DT_TEXTREL in a shared object.
diff --git a/ld/testsuite/ld-i386/warn1.s b/ld/testsuite/ld-i386/warn1.s
new file mode 100644
index 0000000..ca3481a
--- /dev/null
+++ b/ld/testsuite/ld-i386/warn1.s
@@ -0,0 +1,5 @@
+ .text
+ .globl foo
+ .type foo, @function
+foo:
+ movl bar, %eax