X-Git-Url: http://drtracing.org/?a=blobdiff_plain;f=ld%2Fldmisc.c;h=e3439445c4b0d7fd9575a7c7debf3d2fafa14a83;hb=af28fce3e5061a26dfec41ae3c0aa72ecf2c09c5;hp=8fab22825f7add6f3aa29f374bbf3a269a43685d;hpb=252b5132c753830d5fd56823373aed85f2a0db63;p=deliverable%2Fbinutils-gdb.git diff --git a/ld/ldmisc.c b/ld/ldmisc.c index 8fab22825f..e3439445c4 100644 --- a/ld/ldmisc.c +++ b/ld/ldmisc.c @@ -1,5 +1,5 @@ /* ldmisc.c - Copyright (C) 1991, 92, 93, 94, 95, 96, 97, 98, 1999 + Copyright (C) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000 Free Software Foundation, Inc. Written by Steve Chamberlain of Cygnus Support. @@ -213,7 +213,7 @@ vfinfo (fp, fmt, arg) case 'E': /* current bfd error or errno */ - fprintf (fp, bfd_errmsg (bfd_get_error ())); + fprintf (fp, "%s", bfd_errmsg (bfd_get_error ())); break; case 'I': @@ -536,3 +536,22 @@ print_nl () { fprintf (config.map_file, "\n"); } + +/* A more or less friendly abort message. In ld.h abort is defined to + call this function. */ + +void +ld_abort (file, line, fn) + const char *file; + int line; + const char *fn; +{ + if (fn != NULL) + einfo (_("%P: internal error: aborting at %s line %d in %s\n"), + file, line, fn); + else + einfo (_("%P: internal error: aborting at %s line %d\n"), + file, line); + einfo (_("%P%F: please report this bug\n")); + xexit (1); +}