12.6. Bison — 一个更好的 Yacc

在 Debian 里,有几个软件包提供 Yacc兼容的前瞻性的 LR 解析LALR 解析的生成器。

表 12.15. 兼容 Yacc 的 LALR 解析器生成器列表

软件包流行度大小说明
bisonV:11, I:1092253GNU LALR 解析器生成器
byaccV:0, I:6160伯克利(Berkeley)LALR 解析器生成器
btyaccV:0, I:0207基于 byacc 的回溯解析生成器

可以使用 “info bison” 查看 bison(1) 的教程。

你需要提供你自己的的 “main()“ 和 “yyerror()“.通常,Flex 创建的 “main()“ 调用 “yyparse()“,它又调用了 “yylex()“.

  1. %%
  2. %%