Bison is a parser generator in the style of yacc(1). It should be upwardly compatible with input files designed for yacc.
Release Notes: Several deprecated features were removed, such as support for YYFAIL, yystype, yyltype, YYLEX_PARAM, and YYPARSE_PARAM. The user epilogue is no longer affected by internal #defines. The recently-introduced dependency on stdio.h when locations are enabled was removed. Caret errors, as introduced in 2.7, are now activated by default. The "-Werror" option was enhanced, and categorization of warnings and errors was modified. Many other changes and various bugfixes were made.
Release Notes: Compiler attribute portability was fixed. Compiler warnings were eliminated.
Release Notes: %language is no longer an experimental feature. Experimental exception safety was introduced. Compiler warnings from Bison-generated parsers are now fully avoided. The formats of error messages and reports was slightly modified. Various minor bugs were fixed.
Release Notes: Generated headers are now guarded against multiple inclusion. A new variable "api.prefix" has been introduced to replace "%name-prefix". Warnings for stray "@" or "$" in actions have been expanded. Creation of spurious whitespace and empty lines is now avoided. Various further minor fixes and improvements have been made.
Release Notes: Support was added for dashes in grammar symbol names, for named references in semantic actions such as "$sym" instead of "$1", and for LAC (Lookahead Correction) for syntax error handling. Bison can now generate IELR(1) and canonical LR(1) parser tables in place of its traditional LALR(1) parser tables. Fixes were made for %error-verbose syntax error messages. Many other improvements and bugfixes were made.