我刚刚安装了 flex,我正在用它的 2.5.4 版本在 windows 7 64 位上尝试一些简单的测试。我想将它与野牛生成的解析器集成。因此,弹性手册说必须声明 %option bison-bridge。
在输入 .l 文件上运行 flex 时,出现错误:
Unrecognized %option bison-bridge
我尝试在命令行中而不是在输入中设置此选项,但是在键入时:
flex.exe --help
没有可用的选项设置“野牛桥”......
有人可以帮我吗 ?
我刚刚安装了 flex,我正在用它的 2.5.4 版本在 windows 7 64 位上尝试一些简单的测试。我想将它与野牛生成的解析器集成。因此,弹性手册说必须声明 %option bison-bridge。
在输入 .l 文件上运行 flex 时,出现错误:
Unrecognized %option bison-bridge
我尝试在命令行中而不是在输入中设置此选项,但是在键入时:
flex.exe --help
没有可用的选项设置“野牛桥”......
有人可以帮我吗 ?
好吧,使用更新版本的 flex 是最好的答案,但如果你真的必须使用旧版本的 flex,过去可以通过YY_DECL在 .l 文件顶部定义宏来访问这种功能:
%{
#define YY_DECL int yylex(YYSTYPE *yylval)
%}
会做相当于%option bison-bridge
为什么要使用这么古老的Flex版本?2.5.31 版本于 2003 年发布;当前版本是 2012 年 8 月的 2.5.37。
我不确定 Flex 2.5.4 何时发布(源代码仍可在上面的 URL 中找到),但它可能根本不包括您所追求的功能。
升级!
you can use latest versions of flex&bison for windows from http://sourceforge.net/projects/winflexbison/