内容简介:GNU Bison 是一个自由软件,用于自动生成语法分析器程序,实际上可用于所有常见的操作系统。Bison 把 LALR 形式的上下文无关文法描述转换为可做语法分析的 C 或 C++ 程序。GNU bison 基本兼容Yacc,并做了一些改进。它一般与 flex 一起使用。Bison 3.2 主要包括对 lalr1.cc 的改进,具体如下:向后不兼容的更改
GNU Bison 是一个自由软件,用于自动生成语法分析器程序,实际上可用于所有常见的操作系统。Bison 把 LALR 形式的上下文无关文法描述转换为可做语法分析的 C 或 C++ 程序。GNU bison 基本兼容Yacc,并做了一些改进。它一般与 flex 一起使用。
Bison 3.2 主要包括对 lalr1.cc 的改进,具体如下:
向后不兼容的更改
-
对 DJGPP 的支持已过时,多年来也一直没有维护和测试。 除非有恢复它的提案,否则它将被删除。
其他更改
-
%printers should use yyo rather than yyoutput to denote the output stream.
-
Variant-based symbols in C++ should use emplace() rather than build().
-
In C++ parsers, parser::operator() is now a synonym for the parser::parse.
新特性
-
C++: Support for move semantics (lalr1.cc)
-
C++: Implicit move of right-hand side values (lalr1.cc)
-
C++: The implicit default semantic action is always run
-
C++: Renaming location.hh
-
C++: stack.hh and position.hh are deprecated
Bug 修复
-
Portability issues on MinGW and VS2015.
-
Portability issues in the test suite.
-
Portability/warning issues with Flex.
更多详情可查阅发行说明: https://lwn.net/Articles/770138/
下载地址:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。