c: make the symbol kind definition nicer to read

From

    enum yysymbol_kind_t
    {
      YYSYMBOL_YYEMPTY = -2,
      YYSYMBOL_YYEOF = 0,
      YYSYMBOL_YYERROR = 1,
      YYSYMBOL_YYUNDEF = 2,

to

    enum yysymbol_kind_t
    {
      YYSYMBOL_YYEMPTY = -2,
      YYSYMBOL_YYEOF = 0,                      /* "end of file"  */
      YYSYMBOL_YYERROR = 1,                    /* error  */
      YYSYMBOL_YYUNDEF = 2,                    /* $undefined  */

* data/skeletons/bison.m4 (b4_last_symbol): New.
(b4_symbol_enum, b4_symbol_enums): Reformat the output.
* data/skeletons/c.m4
This commit is contained in:
Akim Demaille
2020-04-06 07:36:00 +02:00
parent 10e61eec6d
commit e657f04b62
4 changed files with 120 additions and 119 deletions

View File

@@ -494,15 +494,16 @@ m4_define([b4_symbol_translate],
## (Internal) symbol numbers. ##
## --------------------------- ##
# b4_symbol_enum(SYMBOL-NUM)
# --------------------------
# Output the definition of this symbol as an enum.
m4_define([b4_symbol_enum],
[m4_ifval(b4_symbol([$1], [kind]),
[m4_format([[%s = %s]],
b4_symbol([$1], [kind]),
b4_symbol([$1], [number]))])])
[m4_format([ %-40s %s],
m4_format([[%s = %s%s%s]],
b4_symbol([$1], [kind]),
[$1],
m4_if([$1], b4_last_symbol, [], [[,]])),
[b4_symbol_tag_comment([$1])])])
# b4_declare_symbol_enum
@@ -514,10 +515,8 @@ m4_define([b4_declare_symbol_enum],
[[/* Symbol type. */
enum yysymbol_kind_t
{
]m4_join([,
],
]b4_symbol_kind([-2])[ = -2,
b4_symbol_map([b4_symbol_enum]))[
]b4_symbol_kind([-2])[ = -2,
]b4_symbol_foreach([b4_symbol_enum])[
};
typedef enum yysymbol_kind_t yysymbol_kind_t;
]])])