aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/ChangeLog4
-rw-r--r--include/bfdlink.h5
-rw-r--r--ld/ChangeLog8
-rw-r--r--ld/ldmain.c3
-rw-r--r--ld/ldmisc.c11
-rw-r--r--ld/ldmisc.h1
6 files changed, 31 insertions, 1 deletions
diff --git a/include/ChangeLog b/include/ChangeLog
index 37bf713..3d7ec5c 100644
--- a/include/ChangeLog
+++ b/include/ChangeLog
@@ -1,3 +1,7 @@
+2003-04-23 H.J. Lu <hjl@gnu.org>
+
+ * bfdlink.h (bfd_link_callbacks): Add error_handler.
+
2003-04-04 Svein E. Seldal <Svein.Seldal@solidas.com>
* coff/tic4x.h: Namespace cleanup. Replace s/c4x/tic4x
diff --git a/include/bfdlink.h b/include/bfdlink.h
index c258262..acb7449 100644
--- a/include/bfdlink.h
+++ b/include/bfdlink.h
@@ -481,6 +481,11 @@ struct bfd_link_callbacks
bfd_boolean (*notice)
PARAMS ((struct bfd_link_info *, const char *name,
bfd *abfd, asection *section, bfd_vma address));
+ /* A function which is called for reporting a linker error. ID is the
+ error identifier. The remaining input is the same as einfo () in
+ ld. */
+ bfd_boolean (*error_handler)
+ PARAMS ((int id, const char * fmt, ...));
};
/* The linker builds link_order structures which tell the code how to
diff --git a/ld/ChangeLog b/ld/ChangeLog
index babbd97..1bbbc66 100644
--- a/ld/ChangeLog
+++ b/ld/ChangeLog
@@ -1,3 +1,11 @@
+2003-04-23 H.J. Lu <hjl@gnu.org>
+
+ * ldmain.c (link_callbacks): Initialize error_handler.
+
+ * ldmisc.c (error_handler): New function.
+
+ * ldmisc.h (error_handler): New prototype.
+
2003-04-21 Stephane Carrez <stcarrez@nerim.fr>
* emulparams/m68hc11elf.sh: Use m68hc1xelf.em extra.
diff --git a/ld/ldmain.c b/ld/ldmain.c
index 125dc6a..d8ee1b2 100644
--- a/ld/ldmain.c
+++ b/ld/ldmain.c
@@ -155,7 +155,8 @@ static struct bfd_link_callbacks link_callbacks =
reloc_overflow,
reloc_dangerous,
unattached_reloc,
- notice
+ notice,
+ error_handler
};
struct bfd_link_info link_info;
diff --git a/ld/ldmisc.c b/ld/ldmisc.c
index 4f25dbb..a2e496d 100644
--- a/ld/ldmisc.c
+++ b/ld/ldmisc.c
@@ -506,3 +506,14 @@ ld_abort (file, line, fn)
einfo (_("%P%F: please report this bug\n"));
xexit (1);
}
+
+bfd_boolean
+error_handler VPARAMS ((int id ATTRIBUTE_UNUSED, const char *fmt, ...))
+{
+ VA_OPEN (arg, fmt);
+ VA_FIXEDARG (arg, const char *, fmt);
+
+ vfinfo (stderr, fmt, arg);
+ VA_CLOSE (arg);
+ return TRUE;
+}
diff --git a/ld/ldmisc.h b/ld/ldmisc.h
index aa3f6af..c03ed97 100644
--- a/ld/ldmisc.h
+++ b/ld/ldmisc.h
@@ -22,6 +22,7 @@
#ifndef LDMISC_H
#define LDMISC_H
+extern bfd_boolean error_handler PARAMS ((int, const char *, ...));
extern void einfo PARAMS ((const char *, ...));
extern void minfo PARAMS ((const char *, ...));
extern void info_msg PARAMS ((const char *, ...));