我正在寻找GCC源代码中的C语法,更具体地说是yacc / bison形式的语法。
答案 0 :(得分:12)
在文件“c-parse.y”中的GCC版本3.3中找到Yacc规范中的C语法
答案 1 :(得分:10)
在当前的GCC源代码中,您将找不到C语法yacc / bison文件。它是在过去,在egcs fork之前完成的。我不能给你确切的版本和位置,但我可以告诉你它应该在2.x版本中
当前版本的GCC有自己的C解析器
答案 2 :(得分:7)
版本4.3的GCC不包含明确编写的C语法。同时进行解析和语义分析,而不将语法树作为单独的数据结构呈现。
信息来源:我阅读了GCC源代码。
答案 3 :(得分:7)
在C ++中使用这个解析器好几年之后,他们还将C转换为使用recursive decent进行解析。
您必须返回多个版本才能以野兔格式找到语法,但它就在那里。您应该尝试使用
gcc yyparse
更新:2012年Google代码搜索关闭
http://en.wikipedia.org/wiki/Google_Code_Search
旧:http://yaxx.googlecode.com/svn/branches/yaxx-proc/gcc-3.4.0/gcc/c-parse.y
找到有它的gcc版本然后你应该能够在那里找到yacc / bison源文件。但它会很老。
答案 4 :(得分:5)
答案 5 :(得分:4)
GCC不使用生成的解析器;它的解析器是一个手写的递归下降解析器。
答案 6 :(得分:0)
可以在GCC源中 c-parser.c 文件的注释中找到C语法。 它虽然已经说过,但它不是一个yacc / bison。