diff --git a/b2/lang.h b/b2/lang.h index ba8de4c..da060af 100644 --- a/b2/lang.h +++ b/b2/lang.h @@ -16,6 +16,7 @@ void parse_hierarchy(void); void parse_characteristics(void); +void yywarnf(const char *fmt, ...); void yyerrorf(const char *fmt, ...); void yyerror(const char *s); diff --git a/b2/lang.l b/b2/lang.l index c2b9744..99b5a4c 100644 --- a/b2/lang.l +++ b/b2/lang.l @@ -87,6 +87,18 @@ ID [-_A-Za-z0-9()+./] %% +void yywarnf(const char *fmt, ...) +{ + va_list ap; + + va_start(ap, fmt); + fprintf(stderr, "%d: warning: ", lineno); + vfprintf(stderr, fmt, ap) ; + fprintf(stderr, "\n"); + va_end(ap); +} + + void yyerrorf(const char *fmt, ...) { va_list ap;