mirror of
https://git.savannah.gnu.org/git/bison.git
synced 2026-03-09 12:23:04 +00:00
Reported by Uxio Prego. https://lists.gnu.org/archive/html/help-bison/2018-11/msg00031.html We also need to move the unreachable 'goto' to a reachable place, otherwise clang complains about the code being unreachable anyway. See also https://bugs.llvm.org/show_bug.cgi?id=39736. Interestingly, we don't have to apply that trick to `#define YYCDEBUG if (false) std::cerr`, clang does not warn when the code comes from macro expansion. * configure.ac: Use -Wunreachable-code when supported. * data/lalr1.cc, data/yacc.c: Pacify clang's warning about `if (0)` by using a macro. Another possibility was to move this statement to a reachable place. * tests/actions.at, tests/c++.at: Avoid generating unreachable code.
This directory contains examples of Bison grammar files. Most of them come from the documentation, which should be installed together with Bison. The URLs are provided for convenience. * Examples in C ** rpcalc - Reverse Polish Notation Calculator The first example is that of a simple double-precision Reverse Polish Notation calculator (a calculator using postfix operators). This example provides a good starting point, since operator precedence is not an issue. Extracted from the documentation: "Reverse Polish Notation Calculator" https://www.gnu.org/software/bison/manual/html_node/RPN-Calc.html ** mfcalc - Multi-Function Calculator A more complete C example: a multi-function calculator. Extracted from the documentation: "Multi-Function Calculator: mfcalc". https://www.gnu.org/software/bison/manual/html_node/Multi_002dfunction-Calc.html * Examples in C++ ** c++ - A directory of simple C++ examples ** calc++ - A Complete C++ Example A fully featured C++ version of the canonical example for parsers: a calculator. Also uses Flex for the scanner. Extracted from the documentation: "A Complete C++ Example". https://www.gnu.org/software/bison/manual/html_node/A-Complete-C_002b_002b-Example.html ----- Local Variables: mode: outline fill-column: 76 ispell-dictionary: "american" End: Copyright (C) 2018 Free Software Foundation, Inc. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the license is included in the "GNU Free Documentation License" file as part of this distribution. # LocalWords: mfcalc calc parsers yy