Support Bison version 3.1 through 3.4

No significant changes in the generated code since 3.0.
This commit is contained in:
Dagfinn Ilmari Mannsåker 2019-07-11 16:27:29 +01:00
parent e3d2bd9675
commit 86b50d930c
5 changed files with 274 additions and 266 deletions

507
perly.act

File diff suppressed because it is too large Load Diff

15
perly.h
View File

@ -4,14 +4,15 @@
Any changes made here will be lost!
*/
#define PERL_BISON_VERSION 30000
#define PERL_BISON_VERSION 30004
#ifdef PERL_CORE
/* A Bison parser, made by GNU Bison 3.0.4. */
/* A Bison parser, made by GNU Bison 3.4.1. */
/* Bison interface for Yacc-like parsers in C
Copyright (C) 1984, 1989-1990, 2000-2015 Free Software Foundation, Inc.
Copyright (C) 1984, 1989-1990, 2000-2015, 2018-2019 Free Software Foundation,
Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@ -39,6 +40,9 @@
This special exception was added by the Free Software Foundation in
version 2.2 of Bison. */
/* Undocumented macros, especially those whose name start with YY_,
are private implementation details. Do not rely on them. */
/* Debug traces. */
#ifndef YYDEBUG
# define YYDEBUG 0
@ -165,7 +169,6 @@ S_is_opval_token(int type) {
#endif /* PERL_IN_TOKE_C */
#endif /* PERL_CORE */
#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
union YYSTYPE
{
@ -175,8 +178,8 @@ union YYSTYPE
OP *opval;
GV *gvval;
};
};
typedef union YYSTYPE YYSTYPE;
# define YYSTYPE_IS_TRIVIAL 1
# define YYSTYPE_IS_DECLARED 1
@ -189,5 +192,5 @@ int yyparse (void);
/* Generated from:
* 41d458c12a47d69d8ab1315970582b2055ecea77bfc8a582b557e9b3df1c290a perly.y
* b6fae5748f9bef6db4740aa5e122b84ac5181852d42474d0ecad621fa4253306 regen_perly.pl
* 0947213b55d0ed11693554bea04987e886cf285f5c14cf9075fa1e7acc3f4061 regen_perly.pl
* ex: set ro: */

View File

@ -17,16 +17,16 @@
/* YYNSTATES -- Number of states. */
#define YYNSTATES 552
/* YYTRANSLATE[YYX] -- Symbol number corresponding to YYX as returned
by yylex, with out-of-bounds checking. */
#define YYUNDEFTOK 2
#define YYMAXUTOK 341
/* YYTRANSLATE(TOKEN-NUM) -- Symbol number corresponding to TOKEN-NUM
as returned by yylex, with out-of-bounds checking. */
#define YYTRANSLATE(YYX) \
((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
((unsigned) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
/* YYTRANSLATE[TOKEN-NUM] -- Symbol number corresponding to TOKEN-NUM
as returned by yylex, without out-of-bounds checking. */
as returned by yylex. */
static const yytype_uint8 yytranslate[] =
{
0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
@ -1131,5 +1131,5 @@ static const toketypes yy_type_tab[] =
/* Generated from:
* 41d458c12a47d69d8ab1315970582b2055ecea77bfc8a582b557e9b3df1c290a perly.y
* b6fae5748f9bef6db4740aa5e122b84ac5181852d42474d0ecad621fa4253306 regen_perly.pl
* 0947213b55d0ed11693554bea04987e886cf285f5c14cf9075fa1e7acc3f4061 regen_perly.pl
* ex: set ro: */

View File

@ -264,6 +264,10 @@ that was originally changed for FreeBSD, and the FreeBSD make
apparently predefines it. The Solaris make does not predefine C<ECHO>
which broke this rule on Solaris. [perl #134218]
=item *
Bison versions 3.1 through 3.4 are now supported.
=back
=head1 Testing

View File

@ -76,10 +76,10 @@ EOF
# Don't change this to add new bison versions without testing that the generated
# files actually work :-) Win32 in particular may not like them. :-(
unless ($version =~ /\b(1\.875[a-z]?|2\.[0134567]|3\.[0])\b/) { die <<EOF; }
unless ($version =~ /\b(1\.875[a-z]?|2\.[0134567]|3\.[0-4])\b/) { die <<EOF; }
You have the wrong version of bison in your path; currently versions
1.875, 2.0-2.7 or 3.0 are known to work. Try installing
1.875, 2.0-2.7 or 3.0-3.4 are known to work. Try installing
http://ftp.gnu.org/gnu/bison/bison-2.5.1.tar.gz
or similar. Your bison identifies itself as: