我刚刚安装了flex,我正在尝试一些简单的testing,在Windows 7 64位的2.5.4版本。 我想将它与一个野牛生成的parsing器。 因此, flex手册说必须声明%选项bison-bridge。
在input.l文件上运行flex时,出现错误:
Unrecognized %option bison-bridge
我试图在命令行中而不是在input中设置这个选项,但是input时:
flex.exe --help
没有可用的选项设置“野牛桥”…
有人可以帮我吗 ?
为什么你使用这样一个古老的Flex版本? 版本2.5.31于2003年发布; 目前的版本是2012年8月的2.5.37。
我不确定什么时候发布Flex 2.5.4(源代码仍然可以在上面的URL中找到),但是它可能根本不包含你之后的功能。
升级!
那么,使用更新版本的flex是最好的答案,但是如果你确实必须使用老版本的flex,那么通过在.l文件的顶部定义YY_DECL
宏,可以访问这种功能:
%{ #define YY_DECL int yylex(YYSTYPE *yylval) %}
会做%option bison-bridge
的等值
您可以使用来自http://sourceforge.net/projects/winflexbison/的最新版本的flex&bison for windows