From 995f7e89d1f7966fb46683c25f689a3c90d69422 Mon Sep 17 00:00:00 2001 From: steve Date: Wed, 29 Mar 2000 04:36:42 +0000 Subject: [PATCH] Handle define of macro without value. --- ivlpp/lexor.lex | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/ivlpp/lexor.lex b/ivlpp/lexor.lex index e7ade1f9d..8e8215542 100644 --- a/ivlpp/lexor.lex +++ b/ivlpp/lexor.lex @@ -19,7 +19,7 @@ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA */ #if !defined(WINNT) -#ident "$Id: lexor.lex,v 1.16 2000/03/18 06:12:26 steve Exp $" +#ident "$Id: lexor.lex,v 1.17 2000/03/29 04:36:42 steve Exp $" #endif # include @@ -35,6 +35,7 @@ static void output_init(); static void def_match(); static void def_start(); +static void def_finish(); static void def_undefine(); static void do_define(); static int is_defined(const char*name); @@ -135,12 +136,14 @@ W [ \t\b\f]+ .* { do_define(); } \n { + def_finish(); istack->lineno += 1; fputc('\n', yyout); BEGIN(0); } <> { + def_finish(); istack->lineno += 1; fputc('\n', yyout); BEGIN(0); @@ -326,6 +329,13 @@ static void do_define() } define_macro(def_name, yytext); + def_name[0] = 0; +} + +static void def_finish() +{ + if (def_name[0]) + define_macro(def_name, "1"); } static void def_undefine()