diff --git a/doc/bison.texi b/doc/bison.texi index 0301a96c..927b9374 100644 --- a/doc/bison.texi +++ b/doc/bison.texi @@ -2715,11 +2715,11 @@ operators in @code{yylex}. int yylex (void) @{ - int c; + int c = getchar (); /* Ignore white space, get first nonwhite character. */ - while ((c = getchar ()) == ' ' || c == '\t') - continue; + while (c == ' ' || c == '\t') + c = getchar (); if (c == EOF) return 0; diff --git a/tests/calc.at b/tests/calc.at index 38f85dcd..ba33592a 100644 --- a/tests/calc.at +++ b/tests/calc.at @@ -168,7 +168,7 @@ class CalcLexer(R) : Lexer return YYTokenType.EOF; // Numbers. - if (input.front == '.' || input.front.isNumber) + if (input.front.isNumber) { import std.conv : parse; semanticVal_.ival = input.parse!int; @@ -257,8 +257,8 @@ read_integer (]AT_YYLEX_FORMALS[) } while ((c = get_char (]AT_YYLEX_ARGS[)) == ' ' || c == '\t'); - /* Process numbers */ - if (c == '.' || isdigit (c)) + /* Process numbers. */ + if (isdigit (c)) { unget_char (]AT_YYLEX_PRE_ARGS[ c); ]AT_VAL[.ival = read_integer (]AT_YYLEX_ARGS[);