help-bison
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: set flex start conditions from bison?


From: Akim Demaille
Subject: Re: set flex start conditions from bison?
Date: Tue, 25 Aug 2009 13:14:50 +0200


Le 25 août 09 à 12:19, Rui Maciel a écrit :

Is it possible to set the flex start conditions from within bison? I've set a couple of lexer start conditions in the flex file and added yy_push_state() to the bison file, which already includes a flex- generated header. Nonetheless, the compiler still complains that the start condition symbol (named s_element) is undeclared. As the start condition symbol is described in the flex file as:

#ifdef YY_HEADER_EXPORT_START_CONDITIONS
#define INITIAL 0
#define s_element 1

#endif

That leads me to believe that some other tweaking is needed to at least define YY_HEADER_EXPORT_START_CONDITIONS and therefore declare the start condition symbol.

So, how do we set flex start conditions from within a bison file?

AFAIK, Flex does not generate a header file with its definitions such as start conditions, so you probably need to write a small wrapper around flex that extracts it from the generated scanner *.c file. Then, from the grammar file, just include that extracted file from like any other.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]