Reinstate bfd_print_error as an extern function
* bfd.c (_bfd_print): Renamed from bfd_print_error. (bfd_print_error): Reinstate previous code but using the above. (error_handler_fprintf, error_handler_sprintf): Adjust. * bfd-in2.h: Regenerate.
This commit is contained in:
parent
0c947d990a
commit
5cd5266180
2 changed files with 32 additions and 4 deletions
|
@ -2558,6 +2558,9 @@ void bfd_perror (const char *message);
|
|||
typedef void (*bfd_error_handler_type) (const char *, va_list);
|
||||
|
||||
typedef int (*bfd_print_callback) (void *, const char *, ...);
|
||||
void bfd_print_error (bfd_print_callback print_func,
|
||||
void *stream, const char *fmt, va_list ap);
|
||||
|
||||
void _bfd_error_handler (const char *fmt, ...) ATTRIBUTE_PRINTF_1;
|
||||
|
||||
bfd_error_handler_type bfd_set_error_handler (bfd_error_handler_type);
|
||||
|
|
33
bfd/bfd.c
33
bfd/bfd.c
|
@ -1450,8 +1450,8 @@ _bfd_doprnt_scan (const char *format, va_list ap, union _bfd_doprnt_args *args)
|
|||
}
|
||||
|
||||
static void
|
||||
bfd_print_error (bfd_print_callback print_func, void *stream,
|
||||
const char *fmt, va_list ap)
|
||||
_bfd_print (bfd_print_callback print_func, void *stream,
|
||||
const char *fmt, va_list ap)
|
||||
{
|
||||
union _bfd_doprnt_args args[MAX_ARGS];
|
||||
|
||||
|
@ -1459,6 +1459,32 @@ bfd_print_error (bfd_print_callback print_func, void *stream,
|
|||
_bfd_doprnt (print_func, stream, fmt, args);
|
||||
}
|
||||
|
||||
/*
|
||||
FUNCTION
|
||||
bfd_print_error
|
||||
|
||||
SYNOPSIS
|
||||
void bfd_print_error (bfd_print_callback print_func,
|
||||
void *stream, const char *fmt, va_list ap);
|
||||
|
||||
DESCRIPTION
|
||||
|
||||
This formats FMT and AP according to BFD "printf" rules,
|
||||
sending the output to STREAM by repeated calls to PRINT_FUNC.
|
||||
PRINT_FUNC is a printf-like function; it does not need to
|
||||
implement the BFD printf format extensions. This can be used
|
||||
in a callback that is set via bfd_set_error_handler to turn
|
||||
the error into ordinary output.
|
||||
*/
|
||||
|
||||
void
|
||||
bfd_print_error (bfd_print_callback print_func, void *stream,
|
||||
const char *fmt, va_list ap)
|
||||
{
|
||||
print_func (stream, "%s: ", _bfd_get_error_program_name ());
|
||||
_bfd_print (print_func, stream, fmt, ap);
|
||||
}
|
||||
|
||||
/* The standard error handler that prints to stderr. */
|
||||
|
||||
static void
|
||||
|
@ -1467,7 +1493,6 @@ error_handler_fprintf (const char *fmt, va_list ap)
|
|||
/* PR 4992: Don't interrupt output being sent to stdout. */
|
||||
fflush (stdout);
|
||||
|
||||
fprintf (stderr, "%s: ", _bfd_get_error_program_name ());
|
||||
bfd_print_error ((bfd_print_callback) fprintf, stderr, fmt, ap);
|
||||
|
||||
/* On AIX, putc is implemented as a macro that triggers a -Wunused-value
|
||||
|
@ -1526,7 +1551,7 @@ error_handler_sprintf (const char *fmt, va_list ap)
|
|||
error_stream.ptr = error_buf;
|
||||
error_stream.left = sizeof (error_buf);
|
||||
|
||||
bfd_print_error (err_sprintf, &error_stream, fmt, ap);
|
||||
_bfd_print (err_sprintf, &error_stream, fmt, ap);
|
||||
|
||||
size_t len = error_stream.ptr - error_buf;
|
||||
struct per_xvec_message **warn
|
||||
|
|
Loading…
Add table
Reference in a new issue