bison-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: yacc: comply with recent POSIX updates: declare yyerror and yylex


From: Akim Demaille
Subject: Re: yacc: comply with recent POSIX updates: declare yyerror and yylex
Date: Wed, 11 Aug 2021 18:02:45 +0200


> commit fda40895114e5fdeb8c5fc3091c259a3952babac
> Author: Akim Demaille <akim.demaille@gmail.com>
> Date:   Thu Aug 5 08:39:24 2021 +0200
> 
>    yacc: comply with recent POSIX updates: declare yyerror and yylex
> 
>    In POSIX Yacc mode, declare yyerror and yylex unless already #defined,
>    or if YYERROR_IS_DECLARED/YYLEX_IS_DECLARED are defined (for
>    consistency with Bison's YYSTYPE_IS_DECLARED/YYLTYPE_IS_DECLARED).
>    See <https://austingroupbugs.net/view.php?id=1388#c5220>.
> 
>    * data/skeletons/c.m4 (b4_function_declare): Resurect.
>    (b4_lex_formals): Since we will possibly expose this prototype
>    in the header, take the prefix into account.
>    * data/skeletons/yacc.c (b4_declare_yyerror_and_yylex): New.
>    (b4_shared_declarations): Use it.
> 
>    * tests/local.at (AT_YACC_IF): New.
>    When in Yacc mode, set the `yacc` Autotest keyword.
>    (AT_YYERROR_DECLARE(c)): Don't declare in Yacc mode,
>    to avoid clashes (since this signature is static).
>    (AT_YYERROR_DEFINE(c)): Don't define as static in Yacc mode.
>    * tests/regression.at (Early token definitions with --yacc): Specify
>    that we are in Yacc mode.

Pushed.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]