Re: bison problems (test suite)
Boyd Lynn Gerber <[email protected]> Fri, 4 Feb 2022 07:21:34 -0700
| Newsgroups | gmane.comp.parsers.bison.bugs |
|---|---|
| Message-ID | <[email protected]> |
On Wednesday 2022-02-02 10:53, Boyd Lynn Gerber wrote:
> I need to debug errors with bison on UnixWare 7 Definitive.
>
> without the CFLAGS="-O0 -g"
>
> bison builds but test tests fail with
>
> "bison: input/output error"
>
> trying to debug using this configure
>
> /configure CFLAGS="-O0 -g" --disable-yacc --enable-nls \
> --with-libiconv-prefix=/usr/pkg --prefix=/usr/pkg \
> --build=i486-unknown-sysv5UnixWare7.1.4 \
> --host=i486-unknown-sysv5UnixWare7.1.4 \
> --infodir=/usr/pkg/info --mandir=/usr/pkg/man \
> --enable-option-checking=yes
>
> I see all these errors.
>
> updating examples/c/bistromathic/parse.output
> updating examples/c/bistromathic/parse.h
> CC examples/c/bistromathic/bistromathic-parse.o
> examples/c/bistromathic/parse.c: In function 'yy_lac':
> examples/c/bistromathic/parse.c:1048:18: error: 'YYSYMBOL_YYUNDEF' undeclared
> (first use in this function); did you mean 'YYSYMBOL_YYEMPTY'?
> if (yytoken == YYSYMBOL_YYUNDEF)
> ^~~~~~~~~~~~~~~~
> YYSYMBOL_YYEMPTY
> examples/c/bistromathic/parse.c:1048:18: note: each undeclared identifier is
> reported only once for each function it appears in
> examples/c/bistromathic/parse.c: In function 'yypstate_expected_tokens':
> examples/c/bistromathic/parse.c:1170:20: error: 'YYSYMBOL_YYerror' undeclared
> (first use in this function); did you mean 'YYSYMBOL_YYEMPTY'?
> if (yysym != YYSYMBOL_YYerror && yysym != YYSYMBOL_YYUNDEF)
> ^~~~~~~~~~~~~~~~
> YYSYMBOL_YYEMPTY
> examples/c/bistromathic/parse.c:1170:49: error: 'YYSYMBOL_YYUNDEF' undeclared
> (first use in this function); did you mean 'YYSYMBOL_YYerror'?
> if (yysym != YYSYMBOL_YYerror && yysym != YYSYMBOL_YYUNDEF)
> ^~~~~~~~~~~~~~~~
> YYSYMBOL_YYerror
> examples/c/bistromathic/parse.c: In function 'yypush_parse':
> examples/c/bistromathic/parse.c:1522:17: error: 'TOK_YYEOF' undeclared (first
> use in this function); did you mean 'TOK_YYEMPTY'?
> if (yychar <= TOK_YYEOF)
> ^~~~~~~~~
> TOK_YYEMPTY
> examples/c/bistromathic/parse.c:1525:17: error: 'YYSYMBOL_YYEOF' undeclared
> (first use in this function); did you mean 'YYSYMBOL_YYEMPTY'?
> yytoken = YYSYMBOL_YYEOF;
> ^~~~~~~~~~~~~~
> YYSYMBOL_YYEMPTY
> examples/c/bistromathic/parse.c:1528:22: error: 'TOK_YYerror' undeclared
> (first use in this function); did you mean 'TOK_YYEOF'?
> else if (yychar == TOK_YYerror)
> ^~~~~~~~~~~
> TOK_YYEOF
> examples/c/bistromathic/parse.c:1534:16: error: 'TOK_YYUNDEF' undeclared
> (first use in this function); did you mean 'TOK_YYEOF'?
> yychar = TOK_YYUNDEF;
> ^~~~~~~~~~~
> TOK_YYEOF
> examples/c/bistromathic/parse.c:1535:17: error: 'YYSYMBOL_YYerror' undeclared
> (first use in this function); did you mean 'YYSYMBOL_YYEOF'?
> yytoken = YYSYMBOL_YYerror;
> ^~~~~~~~~~~~~~~~
> YYSYMBOL_YYEOF
> examples/c/bistromathic/parse.c:437:6: error: 'YYSYMBOL_YYUNDEF' undeclared
> (first use in this function); did you mean 'YYSYMBOL_YYEOF'?
> : YYSYMBOL_YYUNDEF)
> ^
> examples/c/bistromathic/parse.c:1541:17: note: in expansion of macro
> 'YYTRANSLATE'
> yytoken = YYTRANSLATE (yychar);
> ^~~~~~~~~~~
> examples/c/bistromathic/parse.c:1618:41: error: 'YYSTYPE {aka union YYSTYPE}'
> has no member named 'TOK_exp'
> { printf ("%.10g\n", (yyvsp[0].TOK_exp)); }
> ^
> examples/c/bistromathic/parse.c:1626:29: error: 'YYSTYPE {aka union YYSTYPE}'
> has no member named 'TOK_exp'
> { (yyval.TOK_exp) = (yyvsp[0].TOK_VAR)->value.var; }
> ^
> examples/c/bistromathic/parse.c:1626:50: error: 'YYSTYPE {aka union YYSTYPE}'
> has no member named 'TOK_VAR'
> { (yyval.TOK_exp) = (yyvsp[0].TOK_VAR)->value.var; }
> ^
> examples/c/bistromathic/parse.c:1630:29: error: 'YYSTYPE {aka union YYSTYPE}'
> has no member named 'TOK_exp'
> { (yyval.TOK_exp) = (yyvsp[0].TOK_exp);
> (yyvsp[-2].TOK_VAR)->value.var = (yyvsp[0].TOK_exp); }
> ^
> examples/c/bistromathic/parse.c:1630:50: error: 'YYSTYPE {aka union YYSTYPE}'
> has no member named 'TOK_exp'
> { (yyval.TOK_exp) = (yyvsp[0].TOK_exp);
> (yyvsp[-2].TOK_VAR)->value.var = (yyvsp[0].TOK_exp); }
> ^
> examples/c/bistromathic/parse.c:1630:71: error: 'YYSTYPE {aka union YYSTYPE}'
> has no member named 'TOK_VAR'
> { (yyval.TOK_exp) = (yyvsp[0].TOK_exp); ...
> examples/c/bistromathic/parse.c:2292:26: error: 'TOK_FUN' undeclared (first
> use in this f
> unction)
> if (s->type == TOK_FUN && strncmp (text, s->name, len) == 0)
> ^~~~~~~
> examples/c/bistromathic/parse.c:2295:12: error: 'YYSYMBOL_VAR' undeclared
> (first use in t
> his function); did you mean 'YYSYMBOL_FUN'?
> case YYSYMBOL_VAR:
> ^~~~~~~~~~~~
> YYSYMBOL_FUN
> examples/c/bistromathic/parse.c:2297:26: error: 'TOK_VAR' undeclared (first
> use in this function); did you mean 'TOK_FUN'?
> if (s->type == TOK_VAR && strncmp (text, s->name, len) == 0)
> ^~~~~~~
> TOK_FUN
>
These errors were introduced with
2020-04-10 Akim Demaille <[email protected]>
c++: improvements on symbol kinds
Instead of
/// (Internal) symbol kind.
enum symbol_kind_type
{
YYNTOKENS = 5, ///< Number of tokens.
YYSYMBOL_YYEMPTY = -2,
YYSYMBOL_YYEOF = 0, // END_OF_FILE
YYSYMBOL_YYERROR = 1, // error
YYSYMBOL_YYUNDEF = 2, // $undefined
YYSYMBOL_TEXT = 3, // TEXT
YYSYMBOL_NUMBER = 4, // NUMBER
YYSYMBOL_YYACCEPT = 5, // $accept
YYSYMBOL_result = 6, // result
YYSYMBOL_list = 7, // list
YYSYMBOL_item = 8 // item
};
generate
/// Symbol kinds.
struct symbol_kind
{
enum symbol_kind_type
{
YYNTOKENS = 5, ///< Number of tokens.
S_YYEMPTY = -2,
S_YYEOF = 0, // END_OF_FILE
S_YYERROR = 1, // error
S_YYUNDEF = 2, // $undefined
S_TEXT = 3, // TEXT
S_NUMBER = 4, // NUMBER
S_YYACCEPT = 5, // $accept
S_result = 6, // result
S_list = 7, // list
S_item = 8 // item
};
};
--
Boyd Gerber <[email protected]> 801 849-0213
ZENEZ 1042 East Fort Union #135, Midvale Utah 84047