diff --git a/b2/lang.h b/b2/lang.h index 869ce20..439dd87 100644 --- a/b2/lang.h +++ b/b2/lang.h @@ -34,6 +34,7 @@ void parse_kicad_bom(const char *name); void parse_symbols(const char *name); void yywarnf(const char *fmt, ...); +void yywarn(const char *s); void __attribute__((noreturn)) yyerrorf(const char *fmt, ...); void __attribute__((noreturn)) yyerror(const char *s); diff --git a/b2/lang.l b/b2/lang.l index 6fe325b..e04c262 100644 --- a/b2/lang.l +++ b/b2/lang.l @@ -197,6 +197,12 @@ void yywarnf(const char *fmt, ...) } +void yywarn(const char *s) +{ + yywarnf("%s", s); +} + + void __attribute__((noreturn)) yyerrorf(const char *fmt, ...) { va_list ap; @@ -212,8 +218,7 @@ void __attribute__((noreturn)) yyerrorf(const char *fmt, ...) void __attribute__((noreturn)) yyerror(const char *s) { - fprintf(stderr, "%s:%d: %s\n", file_name, lineno, s); - exit(1); + yyerrorf("%s", s); }