29得票4回答
安装Bison后出现“make: yacc: Command not found”错误

在gcc 4.1.2 (linux 5)中运行makefile时,我收到了以下错误信息。make: yacc: Command not found 通过谷歌搜索,我了解到安装Bison-GNU解析器生成器可以纠正这个错误。但即使安装了Bison,我仍然遇到同样的错误。 如何解决这个错误?

27得票9回答
在使用VC++编译Bison和Flex程序时,与unistd.h相关的困难

我正在使用通过cygwin下载的bison和flex,以及vc++。当我编译程序时,我遇到了一个错误:...: fatal error C1083: Cannot open include file: 'unistd.h': No such file or directory 在生成的 fle...

24得票2回答
yylval和联合体

在yacc文件中,联合体的作用是什么?它是否直接与flex文件中的yylval相关?如果您不使用yylval,则不需要使用union吗?

24得票8回答
编写编译器...什么是正确的,什么是错误的?

好的,在我探索编写编译器所需的必要知识时,遇到了一些障碍。似乎每个我找到的技术或工具都在某个地方有反对声音。 目前我正在使用Bison和Flex,但我感觉这种方法已经过时了。这是真的吗?在编写完整的编程语言时,这是一种良好的向前兼容的方式吗? 在不同概念和工具(ANTLR、LL(k)、GL...

23得票8回答
灵活布局(Flex)如何准确支持Bison位置信息?

我正在尝试使用flex和bison创建一个过滤器,因为我想从一种复杂的语言中获取某些语法元素。我的计划是使用flex + bison来识别语法,并输出感兴趣的元素的位置。(然后使用脚本根据转储位置获取文本。) 我发现flex可以支持bison-locations的功能,但它如何工作还不是很清...

23得票3回答
改进语法以消除if-then-else中的移位约简冲突

如何针对给定语法,在Bison中消除移进-规约冲突? selection-stmt -> if ( expression ) statement | if ( expression ) statement else statement 非常希望...

22得票3回答
选择解析器生成器

好的,我知道这个问题可能听起来很主观,但由于我有几个具体的选择标准,所以我认为它很适合SO。所以,这就是我在这里的原因... 我过去经常从事编译器/解释器构建(显然大多数是作为业余爱好),出于某种原因,我一直使用Lex/Yacc(或Flex/Bison,我对他们现在被称为什么感到非常困惑.....

22得票13回答
使用flex/yacc编写C++编译器需要多长时间?

使用lex/yacc编写C++编译器需要多长时间? 我应该从哪里开始学习?

20得票3回答
使用Bison/Yacc在%union定义中包含结构体

我尝试在Bison中将结构体包含在联合体中,但我在%union中的'struct node args'上遇到了一个错误:parser.y:17: error: field ‘args’ has incomplete type 代码如下:struct node { char * val;...

20得票2回答
CMake和Flex/Bison

我正在将我的编译系统从configure/make转换为cmake系统。 该系统有一些由bison/flex自动生成的文件。原始的makefile命令如下:bison --defines=tokens.h --output=parser.cpp parser.y flex --outfile...