Related articles |
---|
help on reentrant parser in bison hnair@msmail.sapient.com (Hari Nair) (1995-11-11) |
Re: help on reentrant parser in bison mats@snake.irf.se (Mats Luspa) (1995-11-14) |
Newsgroups: | comp.compilers |
From: | Mats Luspa <mats@snake.irf.se> |
Keywords: | yacc |
Organization: | Compilers Central |
Date: | Tue, 14 Nov 1995 07:53:32 GMT |
When you want to use an reentrant parser in bison with the declaration
%pure_parser the effect is that the two communication variables become local
variables in yyparse, and a different calling convention is used for yylex.
The communcation variables yylval and yylloc are usually global but as told
they become local in the reentrant parser. Therefore you must replace them
with pointers passed as arguments to yylex. The call to yylex will now be
yylex(YYSTYPE* lvalp, YYLTYPE* llocp).
To set a value you of course use *lvalp=value.
If you have access to a WWW-browser you can obtain this information from
http://www.cs.utah.edu/csinfo/texinfo/bison/bison.html.
/Regards Mats L
--
Return to the
comp.compilers page.
Search the
comp.compilers archives again.