Files
bison/examples
Akim Demaille 00c80bc96c yacc.c: use yysymbol_type_t instead of int for yytoken
Now that we have a proper type for internal symbol numbers, let's use
it.  More code needs conversion, e.g., printers and destructors, but
they are shared with glr.c, which is not ready yet for this change.

It will also help us deal with warnings such as (GCC9 on GNU/Linux):

    input.c: In function 'int yyparse()':
    input.c:475:37: error: enumeral and non-enumeral type in conditional expression [-Werror=extra]
      475 |   (0 <= (YYX) && (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYSYMBOL_YYUNDEF)
          |    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    input.c:1024:17: note: in expansion of macro 'YYTRANSLATE'
     1024 |       yytoken = YYTRANSLATE (yychar);
          |                 ^~~~~~~~~~~

* data/skeletons/yacc.c (yytranslate, yysymbol_name)
(yyparse_context_t, yyexpected_tokens, yypstate_expected_tokens)
(yysyntax_error_arguments):
Use yysymbol_type_t instead of int.
2020-04-01 08:31:48 +02:00
..
2020-01-05 10:26:35 +01:00
2020-01-05 10:26:35 +01:00
2020-01-05 10:26:35 +01:00
2020-01-05 10:26:35 +01:00
2020-02-29 12:22:31 +01:00

This directory contains examples of Bison grammar files, sorted per language.

Several of them come from the documentation, which should be installed together with Bison. The URLs are provided for convenience.

These examples come with a README and a Makefile. Not only can they be used to toy with Bison, they can also be starting points for your own grammars.

Please, be sure to read the C examples before looking at the other languages, as these examples are simpler.