2003-07-15 Andrew Cagney <cagney@redhat.com>

* complaints.c (struct explanation): Define.
	(struct complaints): Change type of "explanation" to "struct
	explanation".
	(symfile_explanations): Convert to a "struct explanation" table.
	(vcomplaint): Update.
This commit is contained in:
Andrew Cagney 2003-07-15 15:36:13 +00:00
parent ccbe497c53
commit d9170e221c
2 changed files with 29 additions and 11 deletions

View File

@ -1,3 +1,11 @@
2003-07-15 Andrew Cagney <cagney@redhat.com>
* complaints.c (struct explanation): Define.
(struct complaints): Change type of "explanation" to "struct
explanation".
(symfile_explanations): Convert to a "struct explanation" table.
(vcomplaint): Update.
2003-07-15 Michal Ludvig <mludvig@suse.cz>
* x86-64-linux-nat.c (regmap): Removed.

View File

@ -60,6 +60,15 @@ struct complain
struct complain *next;
};
/* The explanatory message that should accompany the complaint. The
message is in two parts - pre and post - that are printed around
the complaint text. */
struct explanation
{
const char *prefix;
const char *postfix;
};
struct complaints
{
struct complain *root;
@ -75,20 +84,21 @@ struct complaints
/* The explanatory messages that should accompany the complaint.
NOTE: cagney/2002-08-14: In a desperate attempt at being vaguely
i18n friendly, this is an array of two messages. When present,
EXPLANATION[SERIES] is used to wrap the message. */
const char **explanation;
the PRE and POST EXPLANATION[SERIES] are used to wrap the
message. */
const struct explanation *explanation;
};
static struct complain complaint_sentinel;
/* The symbol table complaint table. */
static const char *symfile_explanations[] = {
"During symbol reading, %s.",
"During symbol reading...%s...",
"%s...",
"%s...",
NULL
static struct explanation symfile_explanations[] = {
{ "During symbol reading, ", "." },
{ "During symbol reading...", "..."},
{ "", "..."},
{ "", "..."},
{ NULL, NULL }
};
static struct complaints symfile_complaint_book = {
@ -192,9 +202,9 @@ vcomplaint (struct complaints **c, const char *file, int line, const char *fmt,
wrap_here ("");
if (series != SUBSEQUENT_MESSAGE)
begin_line ();
fprintf_filtered (gdb_stderr,
complaints->explanation[series],
msg);
fprintf_filtered (gdb_stderr, "%s%s%s",
complaints->explanation[series].prefix, msg,
complaints->explanation[series].postfix);
/* Force a line-break after any isolated message. For the
other cases, clear_complaints() takes care of any missing
trailing newline, the wrap_here() is just a hint. */