34 lines
748 B
Diff
34 lines
748 B
Diff
|
--- modutils-2.4.26.orig/genksyms/lex.l
|
||
|
+++ modutils-2.4.26/genksyms/lex.l
|
||
|
@@ -130,6 +130,7 @@
|
||
|
|
||
|
static int suppress_type_lookup, dont_want_brace_phrase;
|
||
|
static struct string_list *next_node;
|
||
|
+ static int next_token = 0;
|
||
|
|
||
|
int token, count = 0;
|
||
|
struct string_list *cur_node;
|
||
|
@@ -144,7 +145,12 @@
|
||
|
}
|
||
|
|
||
|
repeat:
|
||
|
- token = yylex1();
|
||
|
+ if (next_token != 0) {
|
||
|
+ token = next_token;
|
||
|
+ next_token = 0;
|
||
|
+ }
|
||
|
+ else
|
||
|
+ token = yylex1();
|
||
|
|
||
|
if (token == 0)
|
||
|
return 0;
|
||
|
@@ -425,7 +431,7 @@
|
||
|
{
|
||
|
/* Put back the token we just read so's we can find it again
|
||
|
after registering the expression. */
|
||
|
- unput(token);
|
||
|
+ next_token = token;
|
||
|
|
||
|
lexstate = ST_NORMAL;
|
||
|
token = EXPRESSION_PHRASE;
|