Move internal_{,v}warning to common/errors.[ch]

This commit moves internal_warning and internal_vwarning into
common/errors.[ch].

gdb/ChangeLog:

	* common/errors.h (internal_warning): New declaration.
	(internal_vwarning): Likewise.
	* common/errors.c (internal_warning): New function.
	* utils.h (internal_warning): Don't declare.
	(internal_vwarning): Likewise.
	* utils.c (internal_warning): Removed.

gdb/gdbserver/ChangeLog:

	* utils.c (internal_vwarning): New function.
This commit is contained in:
Gary Benson 2014-08-04 12:04:02 +01:00
parent 075c703382
commit e3d6ba5d32
7 changed files with 51 additions and 17 deletions

View File

@ -1,3 +1,12 @@
2014-08-29 Gary Benson <gbenson@redhat.com>
* common/errors.h (internal_warning): New declaration.
(internal_vwarning): Likewise.
* common/errors.c (internal_warning): New function.
* utils.h (internal_warning): Don't declare.
(internal_vwarning): Likewise.
* utils.c (internal_warning): Removed.
2014-08-29 Gary Benson <gbenson@redhat.com>
* main.c (captured_main): Use warning during startup.

View File

@ -59,3 +59,15 @@ internal_error (const char *file, int line, const char *fmt, ...)
internal_verror (file, line, fmt, ap);
va_end (ap);
}
/* See common/errors.h. */
void
internal_warning (const char *file, int line, const char *fmt, ...)
{
va_list ap;
va_start (ap, fmt);
internal_vwarning (file, line, fmt, ap);
va_end (ap);
}

View File

@ -58,6 +58,21 @@ extern void internal_error (const char *file, int line,
extern void internal_verror (const char *file, int line,
const char *fmt, va_list args)
ATTRIBUTE_NORETURN ATTRIBUTE_PRINTF (3, 0);
/* An internal problem was detected, but the requested operation can
still proceed. Internal warnings indicate programming errors as
opposed to more general issues beyond the application's control.
A warning message is constructed using a printf- or vprintf-style
argument list. The function "internal_vwarning" must be provided
by the client. */
extern void internal_warning (const char *file, int line,
const char *fmt, ...)
ATTRIBUTE_PRINTF (3, 4);
extern void internal_vwarning (const char *file, int line,
const char *fmt, va_list args)
ATTRIBUTE_PRINTF (3, 0);
/* Like "error", but the error message is constructed by combining

View File

@ -1,3 +1,7 @@
2014-08-29 Gary Benson <gbenson@redhat.com>
* utils.c (internal_vwarning): New function.
2014-08-28 Gary Benson <gbenson@redhat.com>
* utils.h (fatal): Remove declaration.

View File

@ -110,6 +110,17 @@ internal_verror (const char *file, int line, const char *fmt, va_list args)
exit (1);
}
/* Report a problem internal to GDBserver. */
void
internal_vwarning (const char *file, int line, const char *fmt, va_list args)
{
fprintf (stderr, "\
%s:%d: A problem internal to " TOOLNAME " has been detected.\n", file, line);
vfprintf (stderr, fmt, args);
fprintf (stderr, "\n");
}
/* Convert a CORE_ADDR into a HEX string, like %lx.
The result is stored in a circular static buffer, NUMCELLS deep. */

View File

@ -823,16 +823,6 @@ internal_vwarning (const char *file, int line, const char *fmt, va_list ap)
internal_vproblem (&internal_warning_problem, file, line, fmt, ap);
}
void
internal_warning (const char *file, int line, const char *string, ...)
{
va_list ap;
va_start (ap, string);
internal_vwarning (file, line, string, ap);
va_end (ap);
}
static struct internal_problem demangler_warning_problem = {
"demangler-warning", 1, internal_problem_ask, 0, internal_problem_no
};

View File

@ -286,13 +286,6 @@ extern char *warning_pre_print;
extern void error_stream (struct ui_file *) ATTRIBUTE_NORETURN;
extern void internal_vwarning (const char *file, int line,
const char *, va_list ap)
ATTRIBUTE_PRINTF (3, 0);
extern void internal_warning (const char *file, int line,
const char *, ...) ATTRIBUTE_PRINTF (3, 4);
extern void demangler_vwarning (const char *file, int line,
const char *, va_list ap)
ATTRIBUTE_PRINTF (3, 0);