cpperror.c (cpp_message): Generalize for "fatal" errors.
* cpperror.c (cpp_message): Generalize for "fatal" errors. (cpp_fatal): New function (just calls cpp_message). From-SVN: r12201
This commit is contained in:
parent
b23378c8ab
commit
05a2b36fad
1 changed files with 21 additions and 4 deletions
|
@ -88,21 +88,38 @@ cpp_file_line_for_message (pfile, filename, line, column)
|
||||||
fprintf (stderr, "%s:%d: ", filename, line);
|
fprintf (stderr, "%s:%d: ", filename, line);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* IS_ERROR is 1 for error, 0 for warning */
|
/* IS_ERROR is 2 for "fatal" error, 1 for error, 0 for warning */
|
||||||
void cpp_message (pfile, is_error, msg, arg1, arg2, arg3)
|
void cpp_message (pfile, is_error, msg, arg1, arg2, arg3)
|
||||||
int is_error;
|
int is_error;
|
||||||
cpp_reader *pfile;
|
cpp_reader *pfile;
|
||||||
char *msg;
|
char *msg;
|
||||||
char *arg1, *arg2, *arg3;
|
char *arg1, *arg2, *arg3;
|
||||||
{
|
{
|
||||||
if (is_error)
|
if (!is_error)
|
||||||
pfile->errors++;
|
|
||||||
else
|
|
||||||
fprintf (stderr, "warning: ");
|
fprintf (stderr, "warning: ");
|
||||||
|
else if (is_error == 2)
|
||||||
|
pfile->errors = CPP_FATAL_LIMIT;
|
||||||
|
else if (pfile->errors < CPP_FATAL_LIMIT)
|
||||||
|
pfile->errors++;
|
||||||
fprintf (stderr, msg, arg1, arg2, arg3);
|
fprintf (stderr, msg, arg1, arg2, arg3);
|
||||||
fprintf (stderr, "\n");
|
fprintf (stderr, "\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Same as cpp_error, except we consider the error to be "fatal",
|
||||||
|
such as inconsistent options. I.e. there is little point in continuing.
|
||||||
|
(We do not exit, to support use of cpplib as a library.
|
||||||
|
Instead, it is the caller's responsibility to check
|
||||||
|
CPP_FATAL_ERRORS. */
|
||||||
|
|
||||||
|
void
|
||||||
|
cpp_fatal (pfile, str, arg)
|
||||||
|
cpp_reader *pfile;
|
||||||
|
char *str, *arg;
|
||||||
|
{
|
||||||
|
fprintf (stderr, "%s: ", progname);
|
||||||
|
cpp_message (pfile, 2, str, arg);
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
fatal (str, arg)
|
fatal (str, arg)
|
||||||
char *str, *arg;
|
char *str, *arg;
|
||||||
|
|
Loading…
Add table
Reference in a new issue