与flex 2.5.4无法识别的%选项bison-bridge

时间:2012-09-26 11:37:12

标签: windows mingw bison flex-lexer

我刚刚安装了flex,我正在尝试使用Windows 7 64位上的2.5.4版本进行一些简单的测试。 我想将它与野牛生成的解析器集成。 因此,flex manual表示必须声明%选项bison-bridge。

在输入.l文件上运行flex时,出现错误:

Unrecognized %option bison-bridge 

我尝试在命令行中而不是在输入中设置此选项,但在键入时设置:

flex.exe --help

没有可用选项设置“野牛桥”......

有人可以帮帮我吗?

3 个答案:

答案 0 :(得分:4)

你为什么使用Flex这样古老的版本?版本2.5.31于2003年发布;目前的版本是2012年8月起的2.5.37。

我不确定何时发布了Flex 2.5.4(源代码仍然可以在上面的URL中找到),但它可能根本不包含您所使用的功能。

升级!

答案 1 :(得分:4)

好吧,使用更新版本的flex是最好的答案,但是如果你真的必须使用较旧版本的flex,那么过去可以通过在顶部定义YY_DECL宏来访问这种功能。 .l文件:

%{
#define YY_DECL    int yylex(YYSTYPE *yylval)
%}

会相当于%option bison-bridge

答案 2 :(得分:2)

您可以使用最新版本的flex& bison for http://sourceforge.net/projects/winflexbison/