diff --git a/tools/widl/utils.c b/tools/widl/utils.c index 1730e41c608..2e05addeb7a 100644 --- a/tools/widl/utils.c +++ b/tools/widl/utils.c @@ -66,18 +66,6 @@ static void generic_msg(const loc_info_t *loc_info, const char *s, const char *t } -/* yyerror: yacc assumes this is not newline terminated. */ -void parser_error(const char *s, ...) -{ - loc_info_t cur_location = CURRENT_LOCATION; - va_list ap; - va_start(ap, s); - generic_msg(&cur_location, s, "Error", ap); - fprintf(stderr, "\n"); - va_end(ap); - exit(1); -} - void error_loc(const char *s, ...) { loc_info_t cur_loc = CURRENT_LOCATION; @@ -88,6 +76,12 @@ void error_loc(const char *s, ...) exit(1); } +/* yyerror: yacc assumes this is not newline terminated. */ +void parser_error(const char *s) +{ + error_loc("%s\n", s); +} + void error_loc_info(const loc_info_t *loc_info, const char *s, ...) { va_list ap; diff --git a/tools/widl/utils.h b/tools/widl/utils.h index 761d3b46453..5c440be8c01 100644 --- a/tools/widl/utils.h +++ b/tools/widl/utils.h @@ -33,7 +33,7 @@ char *xstrdup(const char *str); #define __attribute__(X) #endif -void parser_error(const char *s, ...) __attribute__((format (printf, 1, 2))) __attribute__((noreturn)); +void parser_error(const char *s) __attribute__((noreturn)); int parser_warning(const char *s, ...) __attribute__((format (printf, 1, 2))); void error_loc(const char *s, ...) __attribute__((format (printf, 1, 2))) __attribute__((noreturn)); void error(const char *s, ...) __attribute__((format (printf, 1, 2))) __attribute__((noreturn));