From: Per Bothner Date: Fri, 7 Jun 1996 03:04:54 +0000 (-0700) Subject: cpperror.c (cpp_message): Generalize for "fatal" errors. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=05a2b36fade742f173f9def1be59388c9ffcd3fa;p=gcc.git 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 --- diff --git a/gcc/cpperror.c b/gcc/cpperror.c index 5ba3b78f457..29bd9c8b85a 100644 --- a/gcc/cpperror.c +++ b/gcc/cpperror.c @@ -88,21 +88,38 @@ cpp_file_line_for_message (pfile, filename, line, column) 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) int is_error; cpp_reader *pfile; char *msg; char *arg1, *arg2, *arg3; { - if (is_error) - pfile->errors++; - else + if (!is_error) 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, "\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 fatal (str, arg) char *str, *arg;