util_expr_parse.c revision 68dfc95acc4fde241e0124dd29cdda973bd6ec2c
842ae4bd224140319ae7feec1872b93dfd491143fielding
842ae4bd224140319ae7feec1872b93dfd491143fielding/* A Bison parser, made by GNU Bison 2.4.1. */
842ae4bd224140319ae7feec1872b93dfd491143fielding
842ae4bd224140319ae7feec1872b93dfd491143fielding/* Skeleton implementation for Bison's Yacc-like parsers in C
842ae4bd224140319ae7feec1872b93dfd491143fielding
842ae4bd224140319ae7feec1872b93dfd491143fielding Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb Free Software Foundation, Inc.
ce9621257ef9e54c1bbe5ad8a5f445a1f211c2dcnd
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb This program is free software: you can redistribute it and/or modify
ce9621257ef9e54c1bbe5ad8a5f445a1f211c2dcnd it under the terms of the GNU General Public License as published by
ce9621257ef9e54c1bbe5ad8a5f445a1f211c2dcnd the Free Software Foundation, either version 3 of the License, or
ce9621257ef9e54c1bbe5ad8a5f445a1f211c2dcnd (at your option) any later version.
ce9621257ef9e54c1bbe5ad8a5f445a1f211c2dcnd
ce9621257ef9e54c1bbe5ad8a5f445a1f211c2dcnd This program is distributed in the hope that it will be useful,
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb but WITHOUT ANY WARRANTY; without even the implied warranty of
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb GNU General Public License for more details.
9d129b55f5a43abf43865c6b0eb6dd19bc22aba8ianh
9d129b55f5a43abf43865c6b0eb6dd19bc22aba8ianh You should have received a copy of the GNU General Public License
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb along with this program. If not, see <http://www.gnu.org/licenses/>. */
9d129b55f5a43abf43865c6b0eb6dd19bc22aba8ianh
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb/* As a special exception, you may create a larger work that contains
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb part or all of the Bison parser skeleton and distribute that work
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb under terms of your choice, so long as that work isn't itself a
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb parser generator using the skeleton or a modified version thereof
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb as a parser skeleton. Alternatively, if you modify or redistribute
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb the parser skeleton itself, you may (at your option) remove this
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb special exception, which will cause the skeleton and the resulting
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb Bison output files to be licensed under the GNU General Public
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb License without this special exception.
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb This special exception was added by the Free Software Foundation in
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb version 2.2 of Bison. */
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb/* C LALR(1) parser skeleton written by Richard Stallman, by
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd simplifying the original so-called "semantic" parser. */
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb/* All symbols defined below should begin with yy or YY, to avoid
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb infringing on user name space. This should be done even for local
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb variables, as they might otherwise be expanded by user macros.
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb There are some unavoidable exceptions within include files to
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb define necessary library symbols; they are noted "INFRINGES ON
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb USER NAME SPACE" below. */
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb/* Identify Bison output. */
f888346b48f5e5b5e3f0a47dedb8cefd2759a4e2gregames#define YYBISON 1
750d12c59545dbbac70390988de94f7e901b08f2niq
82632a19f2f9c346fee2b28a65920ba9737b3973minfrin/* Bison version. */
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb#define YYBISON_VERSION "2.4.1"
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
db455cbc662c98dbbf53175393c50086ff63370cchrisd/* Skeleton name. */
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb#define YYSKELETON_NAME "yacc.c"
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb/* Pure parsers. */
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb#define YYPURE 1
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
36ef8f77bffe75d1aa327882be1b5bdbe2ff567asf/* Push parsers. */
36ef8f77bffe75d1aa327882be1b5bdbe2ff567asf#define YYPUSH 0
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
d4abb06ac220bb280ae996b6d21bbd257db51bb1jerenkrantz/* Pull parsers. */
d4abb06ac220bb280ae996b6d21bbd257db51bb1jerenkrantz#define YYPULL 1
d4abb06ac220bb280ae996b6d21bbd257db51bb1jerenkrantz
d4abb06ac220bb280ae996b6d21bbd257db51bb1jerenkrantz/* Using locations. */
d4abb06ac220bb280ae996b6d21bbd257db51bb1jerenkrantz#define YYLSP_NEEDED 0
d4abb06ac220bb280ae996b6d21bbd257db51bb1jerenkrantz
18b5268e013574026b2503b1641baf3299045f45sf/* Substitute the variable and function names. */
d4abb06ac220bb280ae996b6d21bbd257db51bb1jerenkrantz#define yyparse ap_expr_yyparse
d4abb06ac220bb280ae996b6d21bbd257db51bb1jerenkrantz#define yylex ap_expr_yylex
d4abb06ac220bb280ae996b6d21bbd257db51bb1jerenkrantz#define yyerror ap_expr_yyerror
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb#define yylval ap_expr_yylval
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb#define yychar ap_expr_yychar
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb#define yydebug ap_expr_yydebug
4f9c22c4f27571d54197be9674e1fc0d528192aestriker#define yynerrs ap_expr_yynerrs
a2a0abd88b19e042a3eb2a9fa1702c25ad51303dwrowe
4f9c22c4f27571d54197be9674e1fc0d528192aestriker
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb/* Copy the first part of user declarations. */
4f9c22c4f27571d54197be9674e1fc0d528192aestriker
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb/* Line 189 of yacc.c */
4f9c22c4f27571d54197be9674e1fc0d528192aestriker#line 31 "util_expr_parse.y"
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
4f9c22c4f27571d54197be9674e1fc0d528192aestriker#include "util_expr_private.h"
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
4f9c22c4f27571d54197be9674e1fc0d528192aestriker
18b5268e013574026b2503b1641baf3299045f45sf/* Line 189 of yacc.c */
18b5268e013574026b2503b1641baf3299045f45sf#line 86 "util_expr_parse.c"
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
4f9c22c4f27571d54197be9674e1fc0d528192aestriker/* Enabling traces. */
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb#ifndef YYDEBUG
4f9c22c4f27571d54197be9674e1fc0d528192aestriker# define YYDEBUG 0
4f9c22c4f27571d54197be9674e1fc0d528192aestriker#endif
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd/* Enabling verbose error messages. */
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd#ifdef YYERROR_VERBOSE
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd# undef YYERROR_VERBOSE
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd# define YYERROR_VERBOSE 1
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe#else
963f8b44ac95132458ea3b6aaa8ebc135188e473takashi# define YYERROR_VERBOSE 1
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe#endif
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe
2d399cd7535887fceaa9f8f116eb98ce68ddd602trawick/* Enabling the token table. */
c2cf53a40a9814eb91db2cdf820f97d943f21628coar#ifndef YYTOKEN_TABLE
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe# define YYTOKEN_TABLE 0
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe#endif
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar
4760b58cc9fe170e4ad4648ed4ff7a422a2cef38sf
4760b58cc9fe170e4ad4648ed4ff7a422a2cef38sf/* Tokens. */
4760b58cc9fe170e4ad4648ed4ff7a422a2cef38sf#ifndef YYTOKENTYPE
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe# define YYTOKENTYPE
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar /* Put the tokens into the symbol table, so that GDB and other debuggers
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe know about them. */
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe enum yytokentype {
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe T_TRUE = 258,
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe T_FALSE = 259,
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe T_ERROR = 260,
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe T_DIGIT = 261,
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe T_ID = 262,
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe T_STRING = 263,
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe T_REGEX = 264,
3e392a5afd51526de3cb15d57ee46d8cb160ae65gregames T_REGEX_I = 265,
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe T_REGEX_BACKREF = 266,
efd83d1dd1a25688a3093c5a542ae16bacef62ddsf T_OP_UNARY = 267,
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe T_OP_BINARY = 268,
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe T_STR_BEGIN = 269,
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe T_STR_END = 270,
8419e6f8bff1a3617933f3ba760d2bdec7442f44coar T_VAR_BEGIN = 271,
8419e6f8bff1a3617933f3ba760d2bdec7442f44coar T_VAR_END = 272,
8419e6f8bff1a3617933f3ba760d2bdec7442f44coar T_OP_EQ = 273,
8419e6f8bff1a3617933f3ba760d2bdec7442f44coar T_OP_NE = 274,
8419e6f8bff1a3617933f3ba760d2bdec7442f44coar T_OP_LT = 275,
8419e6f8bff1a3617933f3ba760d2bdec7442f44coar T_OP_LE = 276,
8419e6f8bff1a3617933f3ba760d2bdec7442f44coar T_OP_GT = 277,
d4abb06ac220bb280ae996b6d21bbd257db51bb1jerenkrantz T_OP_GE = 278,
2a6e98ba4ffa30ded5d8831664c5cb2a170a56b6coar T_OP_REG = 279,
8419e6f8bff1a3617933f3ba760d2bdec7442f44coar T_OP_NRE = 280,
8419e6f8bff1a3617933f3ba760d2bdec7442f44coar T_OP_IN = 281,
8419e6f8bff1a3617933f3ba760d2bdec7442f44coar T_OP_STR_EQ = 282,
8419e6f8bff1a3617933f3ba760d2bdec7442f44coar T_OP_STR_NE = 283,
8419e6f8bff1a3617933f3ba760d2bdec7442f44coar T_OP_STR_LT = 284,
8419e6f8bff1a3617933f3ba760d2bdec7442f44coar T_OP_STR_LE = 285,
2a6e98ba4ffa30ded5d8831664c5cb2a170a56b6coar T_OP_STR_GT = 286,
d4abb06ac220bb280ae996b6d21bbd257db51bb1jerenkrantz T_OP_STR_GE = 287,
d4abb06ac220bb280ae996b6d21bbd257db51bb1jerenkrantz T_OP_CONCAT = 288,
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe T_OP_OR = 289,
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe T_OP_AND = 290,
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe T_OP_NOT = 291
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe };
4f9c22c4f27571d54197be9674e1fc0d528192aestriker#endif
4f9c22c4f27571d54197be9674e1fc0d528192aestriker
3e392a5afd51526de3cb15d57ee46d8cb160ae65gregames
fa06de8a28a737e8fbaad76d7f3ff67aaa5e4a09wrowe
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
fa06de8a28a737e8fbaad76d7f3ff67aaa5e4a09wrowetypedef union YYSTYPE
fa06de8a28a737e8fbaad76d7f3ff67aaa5e4a09wrowe{
fa06de8a28a737e8fbaad76d7f3ff67aaa5e4a09wrowe
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe/* Line 214 of yacc.c */
efd83d1dd1a25688a3093c5a542ae16bacef62ddsf#line 35 "util_expr_parse.y"
efd83d1dd1a25688a3093c5a542ae16bacef62ddsf
efd83d1dd1a25688a3093c5a542ae16bacef62ddsf char *cpVal;
efd83d1dd1a25688a3093c5a542ae16bacef62ddsf ap_expr_t *exVal;
efd83d1dd1a25688a3093c5a542ae16bacef62ddsf int num;
fa06de8a28a737e8fbaad76d7f3ff67aaa5e4a09wrowe
fa06de8a28a737e8fbaad76d7f3ff67aaa5e4a09wrowe
fa06de8a28a737e8fbaad76d7f3ff67aaa5e4a09wrowe
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe/* Line 214 of yacc.c */
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe#line 166 "util_expr_parse.c"
4f9c22c4f27571d54197be9674e1fc0d528192aestriker} YYSTYPE;
fa06de8a28a737e8fbaad76d7f3ff67aaa5e4a09wrowe# define YYSTYPE_IS_TRIVIAL 1
fa06de8a28a737e8fbaad76d7f3ff67aaa5e4a09wrowe# define yystype YYSTYPE /* obsolescent; will be withdrawn */
fa06de8a28a737e8fbaad76d7f3ff67aaa5e4a09wrowe# define YYSTYPE_IS_DECLARED 1
c2cf53a40a9814eb91db2cdf820f97d943f21628coar#endif
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe
4775dfc34c90fada8c7c4d6a57ed8a3114d55c2dtrawick
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe/* Copy the second part of user declarations. */
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe
11a0edf478ca9c59d80bf73491d89cf019259feeniq/* Line 264 of yacc.c */
fa06de8a28a737e8fbaad76d7f3ff67aaa5e4a09wrowe#line 99 "util_expr_parse.y"
11a0edf478ca9c59d80bf73491d89cf019259feeniq
11a0edf478ca9c59d80bf73491d89cf019259feeniq#include "util_expr_private.h"
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe#define yyscanner ctx->scanner
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe
efd83d1dd1a25688a3093c5a542ae16bacef62ddsfint ap_expr_yylex(YYSTYPE *lvalp, void *scanner);
efd83d1dd1a25688a3093c5a542ae16bacef62ddsf
efd83d1dd1a25688a3093c5a542ae16bacef62ddsf
efd83d1dd1a25688a3093c5a542ae16bacef62ddsf/* Line 264 of yacc.c */
efd83d1dd1a25688a3093c5a542ae16bacef62ddsf#line 186 "util_expr_parse.c"
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe#ifdef short
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe# undef short
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe#endif
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe#ifdef YYTYPE_UINT8
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowetypedef YYTYPE_UINT8 yytype_uint8;
fa06de8a28a737e8fbaad76d7f3ff67aaa5e4a09wrowe#else
fa06de8a28a737e8fbaad76d7f3ff67aaa5e4a09wrowetypedef unsigned char yytype_uint8;
fa06de8a28a737e8fbaad76d7f3ff67aaa5e4a09wrowe#endif
fa06de8a28a737e8fbaad76d7f3ff67aaa5e4a09wrowe
fa06de8a28a737e8fbaad76d7f3ff67aaa5e4a09wrowe#ifdef YYTYPE_INT8
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisdtypedef YYTYPE_INT8 yytype_int8;
4f9c22c4f27571d54197be9674e1fc0d528192aestriker#elif (defined __STDC__ || defined __C99__FUNC__ \
fa06de8a28a737e8fbaad76d7f3ff67aaa5e4a09wrowe || defined __cplusplus || defined _MSC_VER)
fa06de8a28a737e8fbaad76d7f3ff67aaa5e4a09wrowetypedef signed char yytype_int8;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd#else
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisdtypedef short int yytype_int8;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd#endif
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar#ifdef YYTYPE_UINT16
0d26b42fc1735e110c6dc83b114c56257b20070bbnicholestypedef YYTYPE_UINT16 yytype_uint16;
0d26b42fc1735e110c6dc83b114c56257b20070bbnicholes#else
0d26b42fc1735e110c6dc83b114c56257b20070bbnicholestypedef unsigned short int yytype_uint16;
0d26b42fc1735e110c6dc83b114c56257b20070bbnicholes#endif
18b5268e013574026b2503b1641baf3299045f45sf
18b5268e013574026b2503b1641baf3299045f45sf#ifdef YYTYPE_INT16
0d26b42fc1735e110c6dc83b114c56257b20070bbnicholestypedef YYTYPE_INT16 yytype_int16;
4f9c22c4f27571d54197be9674e1fc0d528192aestriker#else
18b5268e013574026b2503b1641baf3299045f45sftypedef short int yytype_int16;
18b5268e013574026b2503b1641baf3299045f45sf#endif
18b5268e013574026b2503b1641baf3299045f45sf
18b5268e013574026b2503b1641baf3299045f45sf#ifndef YYSIZE_T
d9cc5de428947d5c7221d7d42ceefea649bcab48sf# ifdef __SIZE_TYPE__
18b5268e013574026b2503b1641baf3299045f45sf# define YYSIZE_T __SIZE_TYPE__
18b5268e013574026b2503b1641baf3299045f45sf# elif defined size_t
18b5268e013574026b2503b1641baf3299045f45sf# define YYSIZE_T size_t
18b5268e013574026b2503b1641baf3299045f45sf# elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
18b5268e013574026b2503b1641baf3299045f45sf || defined __cplusplus || defined _MSC_VER)
18b5268e013574026b2503b1641baf3299045f45sf# include <stddef.h> /* INFRINGES ON USER NAME SPACE */
404381a78d109fd3a4a7702e69815e4d7ff6d93asf# define YYSIZE_T size_t
404381a78d109fd3a4a7702e69815e4d7ff6d93asf# else
1a7a4f8c6a312cb237e428c77da0792eb165dc7aniq# define YYSIZE_T unsigned int
1a7a4f8c6a312cb237e428c77da0792eb165dc7aniq# endif
1a7a4f8c6a312cb237e428c77da0792eb165dc7aniq#endif
1a7a4f8c6a312cb237e428c77da0792eb165dc7aniq
1a7a4f8c6a312cb237e428c77da0792eb165dc7aniq#define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
1a7a4f8c6a312cb237e428c77da0792eb165dc7aniq
1a7a4f8c6a312cb237e428c77da0792eb165dc7aniq#ifndef YY_
1a7a4f8c6a312cb237e428c77da0792eb165dc7aniq# if YYENABLE_NLS
18b5268e013574026b2503b1641baf3299045f45sf# if ENABLE_NLS
18b5268e013574026b2503b1641baf3299045f45sf# include <libintl.h> /* INFRINGES ON USER NAME SPACE */
18b5268e013574026b2503b1641baf3299045f45sf# define YY_(msgid) dgettext ("bison-runtime", msgid)
0d26b42fc1735e110c6dc83b114c56257b20070bbnicholes# endif
0d26b42fc1735e110c6dc83b114c56257b20070bbnicholes# endif
0d26b42fc1735e110c6dc83b114c56257b20070bbnicholes# ifndef YY_
18b5268e013574026b2503b1641baf3299045f45sf# define YY_(msgid) msgid
18b5268e013574026b2503b1641baf3299045f45sf# endif
18b5268e013574026b2503b1641baf3299045f45sf#endif
18b5268e013574026b2503b1641baf3299045f45sf
18b5268e013574026b2503b1641baf3299045f45sf/* Suppress unused-variable warnings by "using" E. */
18b5268e013574026b2503b1641baf3299045f45sf#if ! defined lint || defined __GNUC__
18b5268e013574026b2503b1641baf3299045f45sf# define YYUSE(e) ((void) (e))
4f9c22c4f27571d54197be9674e1fc0d528192aestriker#else
18b5268e013574026b2503b1641baf3299045f45sf# define YYUSE(e) /* empty */
18b5268e013574026b2503b1641baf3299045f45sf#endif
18b5268e013574026b2503b1641baf3299045f45sf
18b5268e013574026b2503b1641baf3299045f45sf/* Identity function, used to suppress warnings about constant conditions. */
d9cc5de428947d5c7221d7d42ceefea649bcab48sf#ifndef lint
18b5268e013574026b2503b1641baf3299045f45sf# define YYID(n) (n)
18b5268e013574026b2503b1641baf3299045f45sf#else
18b5268e013574026b2503b1641baf3299045f45sf#if (defined __STDC__ || defined __C99__FUNC__ \
18b5268e013574026b2503b1641baf3299045f45sf || defined __cplusplus || defined _MSC_VER)
18b5268e013574026b2503b1641baf3299045f45sfstatic int
0d26b42fc1735e110c6dc83b114c56257b20070bbnicholesYYID (int yyi)
18b5268e013574026b2503b1641baf3299045f45sf#else
0d26b42fc1735e110c6dc83b114c56257b20070bbnicholesstatic int
69bbd0a9d1892949e1d4e454c10e8ad24b37c759sfYYID (yyi)
69bbd0a9d1892949e1d4e454c10e8ad24b37c759sf int yyi;
69bbd0a9d1892949e1d4e454c10e8ad24b37c759sf#endif
69bbd0a9d1892949e1d4e454c10e8ad24b37c759sf{
69bbd0a9d1892949e1d4e454c10e8ad24b37c759sf return yyi;
69bbd0a9d1892949e1d4e454c10e8ad24b37c759sf}
69bbd0a9d1892949e1d4e454c10e8ad24b37c759sf#endif
69bbd0a9d1892949e1d4e454c10e8ad24b37c759sf
0d26b42fc1735e110c6dc83b114c56257b20070bbnicholes#if ! defined yyoverflow || YYERROR_VERBOSE
0d26b42fc1735e110c6dc83b114c56257b20070bbnicholes
0d26b42fc1735e110c6dc83b114c56257b20070bbnicholes/* The parser invokes alloca or malloc; define the necessary symbols. */
0d26b42fc1735e110c6dc83b114c56257b20070bbnicholes
0d26b42fc1735e110c6dc83b114c56257b20070bbnicholes# ifdef YYSTACK_USE_ALLOCA
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe# if YYSTACK_USE_ALLOCA
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe# ifdef __GNUC__
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe# define YYSTACK_ALLOC __builtin_alloca
4f9c22c4f27571d54197be9674e1fc0d528192aestriker# elif defined __BUILTIN_VA_ARG_INCR
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe# include <alloca.h> /* INFRINGES ON USER NAME SPACE */
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe# elif defined _AIX
d176cb9e596e4603f76490f9211f62b5581b3091rooneg# define YYSTACK_ALLOC __alloca
d4abb06ac220bb280ae996b6d21bbd257db51bb1jerenkrantz# elif defined _MSC_VER
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe# include <malloc.h> /* INFRINGES ON USER NAME SPACE */
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe# define alloca _alloca
d176cb9e596e4603f76490f9211f62b5581b3091rooneg# else
4760b58cc9fe170e4ad4648ed4ff7a422a2cef38sf# define YYSTACK_ALLOC alloca
4760b58cc9fe170e4ad4648ed4ff7a422a2cef38sf# if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe || defined __cplusplus || defined _MSC_VER)
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe# ifndef _STDLIB_H
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe# define _STDLIB_H 1
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe# endif
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe# endif
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe# endif
cc9582e53aead2a044077c4a92f3dfc3605590b3wrowe# endif
cc9582e53aead2a044077c4a92f3dfc3605590b3wrowe# endif
cc9582e53aead2a044077c4a92f3dfc3605590b3wrowe
cc9582e53aead2a044077c4a92f3dfc3605590b3wrowe# ifdef YYSTACK_ALLOC
cc9582e53aead2a044077c4a92f3dfc3605590b3wrowe /* Pacify GCC's `empty if-body' warning. */
4f9c22c4f27571d54197be9674e1fc0d528192aestriker# define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0))
cc9582e53aead2a044077c4a92f3dfc3605590b3wrowe# ifndef YYSTACK_ALLOC_MAXIMUM
cc9582e53aead2a044077c4a92f3dfc3605590b3wrowe /* The OS might guarantee only one guard page at the bottom of the stack,
cc9582e53aead2a044077c4a92f3dfc3605590b3wrowe and a page size can be as small as 4096 bytes. So we cannot safely
cc9582e53aead2a044077c4a92f3dfc3605590b3wrowe invoke alloca (N) if N exceeds 4096. Use a slightly smaller number
0540a0b469147b52e858587270dba31c2aaa9e09wrowe to allow for a few compiler-allocated temporary stack slots. */
cc9582e53aead2a044077c4a92f3dfc3605590b3wrowe# define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
cc9582e53aead2a044077c4a92f3dfc3605590b3wrowe# endif
cc9582e53aead2a044077c4a92f3dfc3605590b3wrowe# else
cc9582e53aead2a044077c4a92f3dfc3605590b3wrowe# define YYSTACK_ALLOC YYMALLOC
cc9582e53aead2a044077c4a92f3dfc3605590b3wrowe# define YYSTACK_FREE YYFREE
4f9c22c4f27571d54197be9674e1fc0d528192aestriker# ifndef YYSTACK_ALLOC_MAXIMUM
4f9c22c4f27571d54197be9674e1fc0d528192aestriker# define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
4f9c22c4f27571d54197be9674e1fc0d528192aestriker# endif
4f9c22c4f27571d54197be9674e1fc0d528192aestriker# if (defined __cplusplus && ! defined _STDLIB_H \
4f9c22c4f27571d54197be9674e1fc0d528192aestriker && ! ((defined YYMALLOC || defined malloc) \
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd && (defined YYFREE || defined free)))
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
cc9582e53aead2a044077c4a92f3dfc3605590b3wrowe# ifndef _STDLIB_H
cc9582e53aead2a044077c4a92f3dfc3605590b3wrowe# define _STDLIB_H 1
a2b181763cb35fd899feb4a436aeadaa80bf91eabrianp# endif
cc9582e53aead2a044077c4a92f3dfc3605590b3wrowe# endif
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd# ifndef YYMALLOC
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd# define YYMALLOC malloc
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd# if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd || defined __cplusplus || defined _MSC_VER)
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisdvoid *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd# endif
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd# endif
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd# ifndef YYFREE
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd# define YYFREE free
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd# if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd || defined __cplusplus || defined _MSC_VER)
cc9582e53aead2a044077c4a92f3dfc3605590b3wrowevoid free (void *); /* INFRINGES ON USER NAME SPACE */
a2b181763cb35fd899feb4a436aeadaa80bf91eabrianp# endif
f46cb698a1b32d16a0107566568f67d8c3f8ee9csf# endif
4f9c22c4f27571d54197be9674e1fc0d528192aestriker# endif
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd#endif /* ! defined yyoverflow || YYERROR_VERBOSE */
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
4f9c22c4f27571d54197be9674e1fc0d528192aestriker
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd#if (! defined yyoverflow \
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd && (! defined __cplusplus \
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd/* A type that is properly aligned for any stack member. */
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisdunion yyalloc
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd{
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd yytype_int16 yyss_alloc;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd YYSTYPE yyvs_alloc;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd};
cc9582e53aead2a044077c4a92f3dfc3605590b3wrowe
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd/* The size of the maximum gap between one aligned stack and the next. */
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
cc9582e53aead2a044077c4a92f3dfc3605590b3wrowe
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd/* The size of an array large to enough to hold all stacks, each with
4f9c22c4f27571d54197be9674e1fc0d528192aestriker N elements. */
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd# define YYSTACK_BYTES(N) \
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd + YYSTACK_GAP_MAXIMUM)
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd/* Copy COUNT objects from FROM to TO. The source and destination do
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd not overlap. */
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd# ifndef YYCOPY
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd# if defined __GNUC__ && 1 < __GNUC__
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd# define YYCOPY(To, From, Count) \
cc9582e53aead2a044077c4a92f3dfc3605590b3wrowe __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd# else
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd# define YYCOPY(To, From, Count) \
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd do \
cc9582e53aead2a044077c4a92f3dfc3605590b3wrowe { \
cc9582e53aead2a044077c4a92f3dfc3605590b3wrowe YYSIZE_T yyi; \
cc9582e53aead2a044077c4a92f3dfc3605590b3wrowe for (yyi = 0; yyi < (Count); yyi++) \
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb (To)[yyi] = (From)[yyi]; \
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb } \
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb while (YYID (0))
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb# endif
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb# endif
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb/* Relocate STACK from its old location to the new one. The
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb local variables YYSIZE and YYSTACKSIZE give the old and new number of
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb elements in the stack, and YYPTR gives the new location of the
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb stack. Advance YYPTR to a properly aligned location for the next
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb stack. */
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb# define YYSTACK_RELOCATE(Stack_alloc, Stack) \
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb do \
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb { \
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb YYSIZE_T yynewbytes; \
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe Stack = &yyptr->Stack_alloc; \
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
4f9c22c4f27571d54197be9674e1fc0d528192aestriker yyptr += yynewbytes / sizeof (*yyptr); \
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe } \
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe while (YYID (0))
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe#endif
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe/* YYFINAL -- State number of the termination state. */
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe#define YYFINAL 30
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe/* YYLAST -- Last index in YYTABLE. */
4f9c22c4f27571d54197be9674e1fc0d528192aestriker#define YYLAST 122
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe/* YYNTOKENS -- Number of terminals. */
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe#define YYNTOKENS 43
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe/* YYNNTS -- Number of nonterminals. */
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe#define YYNNTS 14
7c301a1818939f85da8f3629cc3e9b5588610ef0jerenkrantz/* YYNRULES -- Number of rules. */
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe#define YYNRULES 50
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar/* YYNRULES -- Number of states. */
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe#define YYNSTATES 91
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
7c301a1818939f85da8f3629cc3e9b5588610ef0jerenkrantz#define YYUNDEFTOK 2
7c301a1818939f85da8f3629cc3e9b5588610ef0jerenkrantz#define YYMAXUTOK 291
7c301a1818939f85da8f3629cc3e9b5588610ef0jerenkrantz
1e911973bcb9df6701a4c16c037771ecf25ade13niq#define YYTRANSLATE(YYX) \
1e911973bcb9df6701a4c16c037771ecf25ade13niq ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
c3e233736c4a453cbb2166a041f779e86230630asf
c3e233736c4a453cbb2166a041f779e86230630asf/* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
c3e233736c4a453cbb2166a041f779e86230630asfstatic const yytype_uint8 yytranslate[] =
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe{
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar 0, 2, 2, 2, 2, 2, 2, 2, 2, 2,
11fb2f3611e6ff9a541e10b13e3108934f828141gregames 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
11fb2f3611e6ff9a541e10b13e3108934f828141gregames 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
11fb2f3611e6ff9a541e10b13e3108934f828141gregames 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
7c301a1818939f85da8f3629cc3e9b5588610ef0jerenkrantz 37, 38, 2, 2, 41, 2, 2, 2, 2, 2,
7c301a1818939f85da8f3629cc3e9b5588610ef0jerenkrantz 2, 2, 2, 2, 2, 2, 2, 2, 42, 2,
7c301a1818939f85da8f3629cc3e9b5588610ef0jerenkrantz 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
7c301a1818939f85da8f3629cc3e9b5588610ef0jerenkrantz 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
4f9c22c4f27571d54197be9674e1fc0d528192aestriker 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
4f9c22c4f27571d54197be9674e1fc0d528192aestriker 2, 2, 2, 39, 2, 40, 2, 2, 2, 2,
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
c3e233736c4a453cbb2166a041f779e86230630asf 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
c3e233736c4a453cbb2166a041f779e86230630asf 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
c3e233736c4a453cbb2166a041f779e86230630asf 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
c3e233736c4a453cbb2166a041f779e86230630asf 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe 2, 2, 2, 2, 2, 2, 1, 2, 3, 4,
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar 5, 6, 7, 8, 9, 10, 11, 12, 13, 14,
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
1fbf6ba0f5207e6637b49f9a9dfcc779bbe952a9trawick 25, 26, 27, 28, 29, 30, 31, 32, 33, 34,
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe 35, 36
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar};
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe#if YYDEBUG
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe/* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
7c301a1818939f85da8f3629cc3e9b5588610ef0jerenkrantz YYRHS. */
7c301a1818939f85da8f3629cc3e9b5588610ef0jerenkrantzstatic const yytype_uint8 yyprhs[] =
7c301a1818939f85da8f3629cc3e9b5588610ef0jerenkrantz{
7c301a1818939f85da8f3629cc3e9b5588610ef0jerenkrantz 0, 0, 3, 5, 7, 9, 11, 14, 18, 22,
4f9c22c4f27571d54197be9674e1fc0d528192aestriker 24, 27, 31, 35, 39, 43, 47, 51, 55, 59,
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe 63, 67, 71, 75, 79, 83, 87, 91, 95, 97,
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe 101, 103, 107, 110, 112, 114, 116, 118, 122, 128,
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb 130, 134, 136, 138, 140, 144, 147, 149, 151, 153,
8aefbd756763807188d2e3ce336a8680e4893066wrowe 158
700b96db75e7cfadb5219978c1735b710d583763wrowe};
700b96db75e7cfadb5219978c1735b710d583763wrowe
700b96db75e7cfadb5219978c1735b710d583763wrowe/* YYRHS -- A `-1'-separated list of the rules' RHS. */
700b96db75e7cfadb5219978c1735b710d583763wrowestatic const yytype_int8 yyrhs[] =
700b96db75e7cfadb5219978c1735b710d583763wrowe{
700b96db75e7cfadb5219978c1735b710d583763wrowe 44, 0, -1, 45, -1, 5, -1, 3, -1, 4,
700b96db75e7cfadb5219978c1735b710d583763wrowe -1, 36, 45, -1, 45, 34, 45, -1, 45, 35,
700b96db75e7cfadb5219978c1735b710d583763wrowe 45, -1, 46, -1, 12, 52, -1, 52, 13, 52,
700b96db75e7cfadb5219978c1735b710d583763wrowe -1, 37, 45, 38, -1, 52, 18, 52, -1, 52,
700b96db75e7cfadb5219978c1735b710d583763wrowe 19, 52, -1, 52, 20, 52, -1, 52, 21, 52,
700b96db75e7cfadb5219978c1735b710d583763wrowe -1, 52, 22, 52, -1, 52, 23, 52, -1, 52,
700b96db75e7cfadb5219978c1735b710d583763wrowe 27, 52, -1, 52, 28, 52, -1, 52, 29, 52,
700b96db75e7cfadb5219978c1735b710d583763wrowe -1, 52, 30, 52, -1, 52, 31, 52, -1, 52,
700b96db75e7cfadb5219978c1735b710d583763wrowe 32, 52, -1, 52, 26, 47, -1, 52, 24, 53,
700b96db75e7cfadb5219978c1735b710d583763wrowe -1, 52, 25, 53, -1, 55, -1, 39, 48, 40,
700b96db75e7cfadb5219978c1735b710d583763wrowe -1, 52, -1, 48, 41, 52, -1, 49, 50, -1,
103a93c625bcde1a6a7a5155b64dcda36f612180pquerna 50, -1, 8, -1, 51, -1, 54, -1, 16, 7,
700b96db75e7cfadb5219978c1735b710d583763wrowe 17, -1, 16, 7, 42, 49, 17, -1, 6, -1,
700b96db75e7cfadb5219978c1735b710d583763wrowe 52, 33, 52, -1, 51, -1, 54, -1, 56, -1,
6964758306167dd898baedd21048bd1515dd9d30trawick 14, 49, 15, -1, 14, 15, -1, 9, -1, 10,
700b96db75e7cfadb5219978c1735b710d583763wrowe -1, 11, -1, 7, 37, 52, 38, -1, 7, 37,
700b96db75e7cfadb5219978c1735b710d583763wrowe 52, 38, -1
700b96db75e7cfadb5219978c1735b710d583763wrowe};
700b96db75e7cfadb5219978c1735b710d583763wrowe
700b96db75e7cfadb5219978c1735b710d583763wrowe/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
700b96db75e7cfadb5219978c1735b710d583763wrowestatic const yytype_uint8 yyrline[] =
700b96db75e7cfadb5219978c1735b710d583763wrowe{
700b96db75e7cfadb5219978c1735b710d583763wrowe 0, 109, 109, 110, 113, 114, 115, 116, 117, 118,
700b96db75e7cfadb5219978c1735b710d583763wrowe 119, 120, 121, 124, 125, 126, 127, 128, 129, 130,
700b96db75e7cfadb5219978c1735b710d583763wrowe 131, 132, 133, 134, 135, 136, 137, 138, 141, 142,
700b96db75e7cfadb5219978c1735b710d583763wrowe 145, 146, 149, 150, 153, 154, 155, 158, 159, 162,
700b96db75e7cfadb5219978c1735b710d583763wrowe 163, 164, 165, 166, 167, 168, 171, 180, 191, 198,
700b96db75e7cfadb5219978c1735b710d583763wrowe 201
700b96db75e7cfadb5219978c1735b710d583763wrowe};
700b96db75e7cfadb5219978c1735b710d583763wrowe#endif
700b96db75e7cfadb5219978c1735b710d583763wrowe
700b96db75e7cfadb5219978c1735b710d583763wrowe#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
700b96db75e7cfadb5219978c1735b710d583763wrowe/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
700b96db75e7cfadb5219978c1735b710d583763wrowe First, the terminals, then, starting at YYNTOKENS, nonterminals. */
700b96db75e7cfadb5219978c1735b710d583763wrowestatic const char *const yytname[] =
700b96db75e7cfadb5219978c1735b710d583763wrowe{
700b96db75e7cfadb5219978c1735b710d583763wrowe "$end", "error", "$undefined", "T_TRUE", "T_FALSE", "T_ERROR",
103a93c625bcde1a6a7a5155b64dcda36f612180pquerna "T_DIGIT", "T_ID", "T_STRING", "T_REGEX", "T_REGEX_I", "T_REGEX_BACKREF",
103a93c625bcde1a6a7a5155b64dcda36f612180pquerna "T_OP_UNARY", "T_OP_BINARY", "T_STR_BEGIN", "T_STR_END", "T_VAR_BEGIN",
700b96db75e7cfadb5219978c1735b710d583763wrowe "T_VAR_END", "T_OP_EQ", "T_OP_NE", "T_OP_LT", "T_OP_LE", "T_OP_GT",
700b96db75e7cfadb5219978c1735b710d583763wrowe "T_OP_GE", "T_OP_REG", "T_OP_NRE", "T_OP_IN", "T_OP_STR_EQ",
700b96db75e7cfadb5219978c1735b710d583763wrowe "T_OP_STR_NE", "T_OP_STR_LT", "T_OP_STR_LE", "T_OP_STR_GT",
8aefbd756763807188d2e3ce336a8680e4893066wrowe "T_OP_STR_GE", "T_OP_CONCAT", "T_OP_OR", "T_OP_AND", "T_OP_NOT", "'('",
8aefbd756763807188d2e3ce336a8680e4893066wrowe "')'", "'{'", "'}'", "','", "':'", "$accept", "root", "expr",
8aefbd756763807188d2e3ce336a8680e4893066wrowe "comparison", "wordlist", "words", "string", "strpart", "var", "word",
8aefbd756763807188d2e3ce336a8680e4893066wrowe "regex", "backref", "lstfunccall", "strfunccall", 0
8aefbd756763807188d2e3ce336a8680e4893066wrowe};
8aefbd756763807188d2e3ce336a8680e4893066wrowe#endif
8aefbd756763807188d2e3ce336a8680e4893066wrowe
8aefbd756763807188d2e3ce336a8680e4893066wrowe# ifdef YYPRINT
8aefbd756763807188d2e3ce336a8680e4893066wrowe/* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
8aefbd756763807188d2e3ce336a8680e4893066wrowe token YYLEX-NUM. */
8aefbd756763807188d2e3ce336a8680e4893066wrowestatic const yytype_uint16 yytoknum[] =
8aefbd756763807188d2e3ce336a8680e4893066wrowe{
8aefbd756763807188d2e3ce336a8680e4893066wrowe 0, 256, 257, 258, 259, 260, 261, 262, 263, 264,
8aefbd756763807188d2e3ce336a8680e4893066wrowe 265, 266, 267, 268, 269, 270, 271, 272, 273, 274,
8aefbd756763807188d2e3ce336a8680e4893066wrowe 275, 276, 277, 278, 279, 280, 281, 282, 283, 284,
a2a0abd88b19e042a3eb2a9fa1702c25ad51303dwrowe 285, 286, 287, 288, 289, 290, 291, 40, 41, 123,
8aefbd756763807188d2e3ce336a8680e4893066wrowe 125, 44, 58
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe};
8aefbd756763807188d2e3ce336a8680e4893066wrowe# endif
8aefbd756763807188d2e3ce336a8680e4893066wrowe
2fa5b5878e7567e2875807c3e2a2b3b0d3ef74bewrowe/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
2fa5b5878e7567e2875807c3e2a2b3b0d3ef74bewrowestatic const yytype_uint8 yyr1[] =
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe{
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe 0, 43, 44, 44, 45, 45, 45, 45, 45, 45,
8aefbd756763807188d2e3ce336a8680e4893066wrowe 45, 45, 45, 46, 46, 46, 46, 46, 46, 46,
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd 46, 46, 46, 46, 46, 46, 46, 46, 47, 47,
8aefbd756763807188d2e3ce336a8680e4893066wrowe 48, 48, 49, 49, 50, 50, 50, 51, 51, 52,
dc8692c6c0ca616a09aa12dad005f2ef23baa1a0wrowe 52, 52, 52, 52, 52, 52, 53, 53, 54, 55,
a8d11d78181478da6a672f7fbc58b8d523351f49wrowe 56
4f9c22c4f27571d54197be9674e1fc0d528192aestriker};
23c6309e36a63b13b61c35999c978017521993d6wrowe
23c6309e36a63b13b61c35999c978017521993d6wrowe/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
4f9c22c4f27571d54197be9674e1fc0d528192aestrikerstatic const yytype_uint8 yyr2[] =
23c6309e36a63b13b61c35999c978017521993d6wrowe{
8aefbd756763807188d2e3ce336a8680e4893066wrowe 0, 2, 1, 1, 1, 1, 2, 3, 3, 1,
23c6309e36a63b13b61c35999c978017521993d6wrowe 2, 3, 3, 3, 3, 3, 3, 3, 3, 3,
2d399cd7535887fceaa9f8f116eb98ce68ddd602trawick 3, 3, 3, 3, 3, 3, 3, 3, 1, 3,
4f9c22c4f27571d54197be9674e1fc0d528192aestriker 1, 3, 2, 1, 1, 1, 1, 3, 5, 1,
23c6309e36a63b13b61c35999c978017521993d6wrowe 3, 1, 1, 1, 3, 2, 1, 1, 1, 4,
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe 4
8aefbd756763807188d2e3ce336a8680e4893066wrowe};
8aefbd756763807188d2e3ce336a8680e4893066wrowe
cf6ef072483172309861d06e85b1aeff4573c060wrowe/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
cf6ef072483172309861d06e85b1aeff4573c060wrowe STATE-NUM when YYTABLE doesn't specify something else to do. Zero
cf6ef072483172309861d06e85b1aeff4573c060wrowe means the default is an error. */
8aefbd756763807188d2e3ce336a8680e4893066wrowestatic const yytype_uint8 yydefact[] =
4f9c22c4f27571d54197be9674e1fc0d528192aestriker{
4f9c22c4f27571d54197be9674e1fc0d528192aestriker 0, 4, 5, 3, 39, 0, 48, 0, 0, 0,
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe 0, 0, 0, 2, 9, 41, 0, 42, 43, 0,
2d399cd7535887fceaa9f8f116eb98ce68ddd602trawick 10, 34, 45, 0, 33, 35, 36, 0, 6, 0,
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe 1, 0, 0, 0, 0, 0, 0, 0, 0, 0,
4f9c22c4f27571d54197be9674e1fc0d528192aestriker 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
a8d11d78181478da6a672f7fbc58b8d523351f49wrowe 0, 44, 32, 37, 0, 12, 7, 8, 11, 13,
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe 14, 15, 16, 17, 18, 46, 47, 26, 27, 0,
8aefbd756763807188d2e3ce336a8680e4893066wrowe 0, 25, 28, 19, 20, 21, 22, 23, 24, 40,
8aefbd756763807188d2e3ce336a8680e4893066wrowe 50, 0, 0, 0, 30, 38, 0, 29, 0, 49,
cf6ef072483172309861d06e85b1aeff4573c060wrowe 31
cf6ef072483172309861d06e85b1aeff4573c060wrowe};
cf6ef072483172309861d06e85b1aeff4573c060wrowe
8aefbd756763807188d2e3ce336a8680e4893066wrowe/* YYDEFGOTO[NTERM-NUM]. */
cf6ef072483172309861d06e85b1aeff4573c060wrowestatic const yytype_int8 yydefgoto[] =
cf6ef072483172309861d06e85b1aeff4573c060wrowe{
a2b181763cb35fd899feb4a436aeadaa80bf91eabrianp -1, 12, 13, 14, 71, 83, 23, 24, 15, 16,
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd 67, 17, 72, 18
cf6ef072483172309861d06e85b1aeff4573c060wrowe};
4f9c22c4f27571d54197be9674e1fc0d528192aestriker
cf6ef072483172309861d06e85b1aeff4573c060wrowe/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
cf6ef072483172309861d06e85b1aeff4573c060wrowe STATE-NUM. */
cf6ef072483172309861d06e85b1aeff4573c060wrowe#define YYPACT_NINF -29
cf6ef072483172309861d06e85b1aeff4573c060wrowestatic const yytype_int8 yypact[] =
cf6ef072483172309861d06e85b1aeff4573c060wrowe{
cf6ef072483172309861d06e85b1aeff4573c060wrowe 50, -29, -29, -29, -29, -13, -29, 9, -6, 14,
cf6ef072483172309861d06e85b1aeff4573c060wrowe 85, 85, 48, -28, -29, -29, 87, -29, -29, 9,
cf6ef072483172309861d06e85b1aeff4573c060wrowe 25, -29, -29, 36, -29, -29, -29, -9, -29, 45,
cf6ef072483172309861d06e85b1aeff4573c060wrowe -29, 85, 85, 9, 9, 9, 9, 9, 9, 9,
2d4ea77e21ef7f3707d2c27f6117cc0a36e99b83trawick 60, 60, 4, 9, 9, 9, 9, 9, 9, 9,
ecde48c75338ff5712f2036711f813c6dedca28ewrowe -16, -29, -29, -29, 74, -29, 43, -29, 25, 25,
d75626f0952c6152a99acd013a4f127d46f0f9edtrawick 25, 25, 25, 25, 25, -29, -29, -29, -29, 23,
d75626f0952c6152a99acd013a4f127d46f0f9edtrawick 9, -29, -29, 25, 25, 25, 25, 25, 25, -29,
d75626f0952c6152a99acd013a4f127d46f0f9edtrawick -29, 57, 9, 5, 25, -29, 34, -29, 9, -29,
d75626f0952c6152a99acd013a4f127d46f0f9edtrawick 25
d75626f0952c6152a99acd013a4f127d46f0f9edtrawick};
d75626f0952c6152a99acd013a4f127d46f0f9edtrawick
d75626f0952c6152a99acd013a4f127d46f0f9edtrawick/* YYPGOTO[NTERM-NUM]. */
d75626f0952c6152a99acd013a4f127d46f0f9edtrawickstatic const yytype_int8 yypgoto[] =
ecde48c75338ff5712f2036711f813c6dedca28ewrowe{
ecde48c75338ff5712f2036711f813c6dedca28ewrowe -29, -29, 3, -29, -29, -29, 17, -22, -5, -7,
d75626f0952c6152a99acd013a4f127d46f0f9edtrawick 52, -4, -29, -29
ecde48c75338ff5712f2036711f813c6dedca28ewrowe};
2d4ea77e21ef7f3707d2c27f6117cc0a36e99b83trawick
ecde48c75338ff5712f2036711f813c6dedca28ewrowe/* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
ecde48c75338ff5712f2036711f813c6dedca28ewrowe positive, shift that token. If negative, reduce the rule which
2d4ea77e21ef7f3707d2c27f6117cc0a36e99b83trawick number is the opposite. If zero, do what YYDEFACT says.
d75626f0952c6152a99acd013a4f127d46f0f9edtrawick If YYTABLE_NINF, syntax error. */
cf6ef072483172309861d06e85b1aeff4573c060wrowe#define YYTABLE_NINF -1
cf6ef072483172309861d06e85b1aeff4573c060wrowestatic const yytype_uint8 yytable[] =
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar{
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe 20, 52, 21, 25, 26, 6, 31, 32, 53, 22,
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar 9, 69, 50, 28, 29, 4, 5, 49, 25, 26,
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar 6, 27, 80, 8, 19, 9, 58, 59, 60, 61,
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe 62, 63, 64, 54, 56, 57, 73, 74, 75, 76,
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar 77, 78, 79, 70, 21, 87, 88, 6, 30, 25,
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe 26, 51, 9, 1, 2, 3, 4, 5, 49, 52,
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe 82, 6, 7, 84, 8, 21, 9, 49, 6, 65,
4f9c22c4f27571d54197be9674e1fc0d528192aestriker 66, 81, 89, 9, 85, 86, 25, 26, 32, 31,
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe 32, 90, 21, 55, 0, 6, 10, 11, 1, 2,
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe 9, 4, 5, 68, 0, 0, 6, 7, 0, 8,
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd 33, 9, 0, 0, 0, 34, 35, 36, 37, 38,
23c6309e36a63b13b61c35999c978017521993d6wrowe 39, 40, 41, 42, 43, 44, 45, 46, 47, 48,
4f9c22c4f27571d54197be9674e1fc0d528192aestriker 49, 10, 11
4f9c22c4f27571d54197be9674e1fc0d528192aestriker};
4f9c22c4f27571d54197be9674e1fc0d528192aestriker
c2cf53a40a9814eb91db2cdf820f97d943f21628coarstatic const yytype_int8 yycheck[] =
170476518c96db46fff6fdce7cb9a3f24abfaea7rpluem{
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluem 7, 23, 8, 8, 8, 11, 34, 35, 17, 15,
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe 16, 7, 19, 10, 11, 6, 7, 33, 23, 23,
4f9c22c4f27571d54197be9674e1fc0d528192aestriker 11, 7, 38, 14, 37, 16, 33, 34, 35, 36,
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe 37, 38, 39, 42, 31, 32, 43, 44, 45, 46,
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe 47, 48, 49, 39, 8, 40, 41, 11, 0, 54,
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe 54, 15, 16, 3, 4, 5, 6, 7, 33, 81,
a9a4544168a37b43bd180b3703ccee995f27a80awrowe 37, 11, 12, 70, 14, 8, 16, 33, 11, 9,
170476518c96db46fff6fdce7cb9a3f24abfaea7rpluem 10, 54, 38, 16, 17, 82, 81, 81, 35, 34,
a9a4544168a37b43bd180b3703ccee995f27a80awrowe 35, 88, 8, 38, -1, 11, 36, 37, 3, 4,
4f9c22c4f27571d54197be9674e1fc0d528192aestriker 16, 6, 7, 41, -1, -1, 11, 12, -1, 14,
a9a4544168a37b43bd180b3703ccee995f27a80awrowe 13, 16, -1, -1, -1, 18, 19, 20, 21, 22,
a9a4544168a37b43bd180b3703ccee995f27a80awrowe 23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
170476518c96db46fff6fdce7cb9a3f24abfaea7rpluem 33, 36, 37
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluem};
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluem
170476518c96db46fff6fdce7cb9a3f24abfaea7rpluem/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluem symbol of state STATE-NUM. */
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluemstatic const yytype_uint8 yystos[] =
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluem{
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluem 0, 3, 4, 5, 6, 7, 11, 12, 14, 16,
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluem 36, 37, 44, 45, 46, 51, 52, 54, 56, 37,
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluem 52, 8, 15, 49, 50, 51, 54, 7, 45, 45,
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluem 0, 34, 35, 13, 18, 19, 20, 21, 22, 23,
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluem 24, 25, 26, 27, 28, 29, 30, 31, 32, 33,
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluem 52, 15, 50, 17, 42, 38, 45, 45, 52, 52,
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluem 52, 52, 52, 52, 52, 9, 10, 53, 53, 7,
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluem 39, 47, 55, 52, 52, 52, 52, 52, 52, 52,
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluem 38, 49, 37, 48, 52, 17, 52, 40, 41, 38,
ad099b4d62597be19f8dba650663e796cbaa8d28rpluem 52
ad099b4d62597be19f8dba650663e796cbaa8d28rpluem};
ad099b4d62597be19f8dba650663e796cbaa8d28rpluem
eb12400ff685a3b69476736ca4b5389f348b9d63rpluem#define yyerrok (yyerrstatus = 0)
eb12400ff685a3b69476736ca4b5389f348b9d63rpluem#define yyclearin (yychar = YYEMPTY)
eb12400ff685a3b69476736ca4b5389f348b9d63rpluem#define YYEMPTY (-2)
eb12400ff685a3b69476736ca4b5389f348b9d63rpluem#define YYEOF 0
eb12400ff685a3b69476736ca4b5389f348b9d63rpluem
eb12400ff685a3b69476736ca4b5389f348b9d63rpluem#define YYACCEPT goto yyacceptlab
eb12400ff685a3b69476736ca4b5389f348b9d63rpluem#define YYABORT goto yyabortlab
eb12400ff685a3b69476736ca4b5389f348b9d63rpluem#define YYERROR goto yyerrorlab
ad099b4d62597be19f8dba650663e796cbaa8d28rpluem
ad099b4d62597be19f8dba650663e796cbaa8d28rpluem
ad099b4d62597be19f8dba650663e796cbaa8d28rpluem/* Like YYERROR except do call yyerror. This remains here temporarily
ad099b4d62597be19f8dba650663e796cbaa8d28rpluem to ease the transition to the new meaning of YYERROR, for GCC.
ad099b4d62597be19f8dba650663e796cbaa8d28rpluem Once GCC version 2 has supplanted version 1, this can go. */
ad099b4d62597be19f8dba650663e796cbaa8d28rpluem
ad099b4d62597be19f8dba650663e796cbaa8d28rpluem#define YYFAIL goto yyerrlab
ad099b4d62597be19f8dba650663e796cbaa8d28rpluem
ad099b4d62597be19f8dba650663e796cbaa8d28rpluem#define YYRECOVERING() (!!yyerrstatus)
75c02648f9afe9a1da5d5482703fcbca306ffcdcpquerna
75c02648f9afe9a1da5d5482703fcbca306ffcdcpquerna#define YYBACKUP(Token, Value) \
ad099b4d62597be19f8dba650663e796cbaa8d28rpluemdo \
ad099b4d62597be19f8dba650663e796cbaa8d28rpluem if (yychar == YYEMPTY && yylen == 1) \
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluem { \
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluem yychar = (Token); \
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluem yylval = (Value); \
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluem yytoken = YYTRANSLATE (yychar); \
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluem YYPOPSTACK (1); \
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluem goto yybackup; \
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluem } \
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluem else \
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluem { \
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluem yyerror (ctx, YY_("syntax error: cannot back up")); \
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluem YYERROR; \
534611d341a1a48b93c7a1fd5e333dbd261527d3rpluem } \
a9a4544168a37b43bd180b3703ccee995f27a80awrowewhile (YYID (0))
a9a4544168a37b43bd180b3703ccee995f27a80awrowe
4f9c22c4f27571d54197be9674e1fc0d528192aestriker
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar#define YYTERROR 1
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe#define YYERRCODE 256
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe If N is 0, then set CURRENT to the empty location which ends
4f9c22c4f27571d54197be9674e1fc0d528192aestriker the previous symbol: RHS[0] (always defined). */
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe
8aefbd756763807188d2e3ce336a8680e4893066wrowe#define YYRHSLOC(Rhs, K) ((Rhs)[K])
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe#ifndef YYLLOC_DEFAULT
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe# define YYLLOC_DEFAULT(Current, Rhs, N) \
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd do \
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe if (YYID (N)) \
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe { \
700b96db75e7cfadb5219978c1735b710d583763wrowe (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
cf6ef072483172309861d06e85b1aeff4573c060wrowe (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
cf6ef072483172309861d06e85b1aeff4573c060wrowe (Current).last_line = YYRHSLOC (Rhs, N).last_line; \
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe (Current).last_column = YYRHSLOC (Rhs, N).last_column; \
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe } \
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe else \
8aefbd756763807188d2e3ce336a8680e4893066wrowe { \
0e58e92812f2f679d6bf2ff66cbcfa6c1d1e14bbjerenkrantz (Current).first_line = (Current).last_line = \
0e58e92812f2f679d6bf2ff66cbcfa6c1d1e14bbjerenkrantz YYRHSLOC (Rhs, 0).last_line; \
0e58e92812f2f679d6bf2ff66cbcfa6c1d1e14bbjerenkrantz (Current).first_column = (Current).last_column = \
cf6ef072483172309861d06e85b1aeff4573c060wrowe YYRHSLOC (Rhs, 0).last_column; \
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe } \
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe while (YYID (0))
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe#endif
4f9c22c4f27571d54197be9674e1fc0d528192aestriker
3dcf67a5060400edb8ccef3fb4a2024388965af9martin
3dcf67a5060400edb8ccef3fb4a2024388965af9martin/* YY_LOCATION_PRINT -- Print the location on the stream.
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe This macro was not mandated originally: define only if we know
2fd8d1e14fc47762d1e01660b544d5e2a75c825dtrawick we won't break user code: when these are the locations we know. */
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe#ifndef YY_LOCATION_PRINT
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe# if YYLTYPE_IS_TRIVIAL
8aefbd756763807188d2e3ce336a8680e4893066wrowe# define YY_LOCATION_PRINT(File, Loc) \
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe fprintf (File, "%d.%d-%d.%d", \
700b96db75e7cfadb5219978c1735b710d583763wrowe (Loc).first_line, (Loc).first_column, \
700b96db75e7cfadb5219978c1735b710d583763wrowe (Loc).last_line, (Loc).last_column)
700b96db75e7cfadb5219978c1735b710d583763wrowe# else
700b96db75e7cfadb5219978c1735b710d583763wrowe# define YY_LOCATION_PRINT(File, Loc) ((void) 0)
e0c4ebfec83bb3b424184984e5788f31297fe429sctemme# endif
8aefbd756763807188d2e3ce336a8680e4893066wrowe#endif
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe
4f9c22c4f27571d54197be9674e1fc0d528192aestriker
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe/* YYLEX -- calling `yylex' with the right arguments. */
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe#ifdef YYLEX_PARAM
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe# define YYLEX yylex (&yylval, YYLEX_PARAM)
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe#else
59513b1275fdc2021d4949ee03ae8229469abb86wrowe# define YYLEX yylex (&yylval, yyscanner)
4f9c22c4f27571d54197be9674e1fc0d528192aestriker#endif
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe
4f9c22c4f27571d54197be9674e1fc0d528192aestriker/* Enable debugging if requested. */
4f9c22c4f27571d54197be9674e1fc0d528192aestriker#if YYDEBUG
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe
4f9c22c4f27571d54197be9674e1fc0d528192aestriker# ifndef YYFPRINTF
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe# include <stdio.h> /* INFRINGES ON USER NAME SPACE */
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe# define YYFPRINTF fprintf
4f9c22c4f27571d54197be9674e1fc0d528192aestriker# endif
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe# define YYDPRINTF(Args) \
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowedo { \
4f9c22c4f27571d54197be9674e1fc0d528192aestriker if (yydebug) \
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe YYFPRINTF Args; \
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe} while (YYID (0))
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe# define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowedo { \
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe if (yydebug) \
cf6ef072483172309861d06e85b1aeff4573c060wrowe { \
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe YYFPRINTF (stderr, "%s ", Title); \
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe yy_symbol_print (stderr, \
4f9c22c4f27571d54197be9674e1fc0d528192aestriker Type, Value, ctx); \
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe YYFPRINTF (stderr, "\n"); \
4f9c22c4f27571d54197be9674e1fc0d528192aestriker } \
4f9c22c4f27571d54197be9674e1fc0d528192aestriker} while (YYID (0))
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe
4f9c22c4f27571d54197be9674e1fc0d528192aestriker/*--------------------------------.
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe| Print this symbol on YYOUTPUT. |
4f9c22c4f27571d54197be9674e1fc0d528192aestriker`--------------------------------*/
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe
4f9c22c4f27571d54197be9674e1fc0d528192aestriker/*ARGSUSED*/
4f9c22c4f27571d54197be9674e1fc0d528192aestriker#if (defined __STDC__ || defined __C99__FUNC__ \
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe || defined __cplusplus || defined _MSC_VER)
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowestatic void
1b315ee865b0f11e582beb64127ca3a99a319d2fwroweyy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, ap_expr_parse_ctx_t *ctx)
4f9c22c4f27571d54197be9674e1fc0d528192aestriker#else
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowestatic void
1b315ee865b0f11e582beb64127ca3a99a319d2fwroweyy_symbol_value_print (yyoutput, yytype, yyvaluep, ctx)
4f9c22c4f27571d54197be9674e1fc0d528192aestriker FILE *yyoutput;
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe int yytype;
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe YYSTYPE const * const yyvaluep;
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe ap_expr_parse_ctx_t *ctx;
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe#endif
4f9c22c4f27571d54197be9674e1fc0d528192aestriker{
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe if (!yyvaluep)
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe return;
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe YYUSE (ctx);
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe# ifdef YYPRINT
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe if (yytype < YYNTOKENS)
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe# else
cf6ef072483172309861d06e85b1aeff4573c060wrowe YYUSE (yyoutput);
4f9c22c4f27571d54197be9674e1fc0d528192aestriker# endif
4f9c22c4f27571d54197be9674e1fc0d528192aestriker switch (yytype)
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe {
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe default:
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe break;
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe }
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe}
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe/*--------------------------------.
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe| Print this symbol on YYOUTPUT. |
38bcc87d9a06e8ba81165421403f275eca4e313btrawick`--------------------------------*/
38bcc87d9a06e8ba81165421403f275eca4e313btrawick
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe#if (defined __STDC__ || defined __C99__FUNC__ \
0e58e92812f2f679d6bf2ff66cbcfa6c1d1e14bbjerenkrantz || defined __cplusplus || defined _MSC_VER)
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowestatic void
1b315ee865b0f11e582beb64127ca3a99a319d2fwroweyy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, ap_expr_parse_ctx_t *ctx)
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe#else
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowestatic void
1b315ee865b0f11e582beb64127ca3a99a319d2fwroweyy_symbol_print (yyoutput, yytype, yyvaluep, ctx)
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe FILE *yyoutput;
4f9c22c4f27571d54197be9674e1fc0d528192aestriker int yytype;
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe YYSTYPE const * const yyvaluep;
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe ap_expr_parse_ctx_t *ctx;
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe#endif
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe{
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe if (yytype < YYNTOKENS)
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
0e58e92812f2f679d6bf2ff66cbcfa6c1d1e14bbjerenkrantz else
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
0e58e92812f2f679d6bf2ff66cbcfa6c1d1e14bbjerenkrantz
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe yy_symbol_value_print (yyoutput, yytype, yyvaluep, ctx);
cf6ef072483172309861d06e85b1aeff4573c060wrowe YYFPRINTF (yyoutput, ")");
cf6ef072483172309861d06e85b1aeff4573c060wrowe}
8aefbd756763807188d2e3ce336a8680e4893066wrowe
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe/*------------------------------------------------------------------.
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe| yy_stack_print -- Print the state stack from its BOTTOM up to its |
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe| TOP (included). |
4f9c22c4f27571d54197be9674e1fc0d528192aestriker`------------------------------------------------------------------*/
700b96db75e7cfadb5219978c1735b710d583763wrowe
700b96db75e7cfadb5219978c1735b710d583763wrowe#if (defined __STDC__ || defined __C99__FUNC__ \
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe || defined __cplusplus || defined _MSC_VER)
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowestatic void
e4a3f3c2f080cac75a15a6454cca429b8161c050wroweyy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
cf6ef072483172309861d06e85b1aeff4573c060wrowe#else
cf6ef072483172309861d06e85b1aeff4573c060wrowestatic void
4f9c22c4f27571d54197be9674e1fc0d528192aestrikeryy_stack_print (yybottom, yytop)
4f9c22c4f27571d54197be9674e1fc0d528192aestriker yytype_int16 *yybottom;
d4abb06ac220bb280ae996b6d21bbd257db51bb1jerenkrantz yytype_int16 *yytop;
cf6ef072483172309861d06e85b1aeff4573c060wrowe#endif
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe{
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe YYFPRINTF (stderr, "Stack now");
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe for (; yybottom <= yytop; yybottom++)
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe {
d4abb06ac220bb280ae996b6d21bbd257db51bb1jerenkrantz int yybot = *yybottom;
4f9c22c4f27571d54197be9674e1fc0d528192aestriker YYFPRINTF (stderr, " %d", yybot);
548b2980e83f609186a76e98fb245d02e8547bc3jerenkrantz }
548b2980e83f609186a76e98fb245d02e8547bc3jerenkrantz YYFPRINTF (stderr, "\n");
4fca95918a9c0ae93593806544b425d0adc2fcc3wrowe}
548b2980e83f609186a76e98fb245d02e8547bc3jerenkrantz
0e58e92812f2f679d6bf2ff66cbcfa6c1d1e14bbjerenkrantz# define YY_STACK_PRINT(Bottom, Top) \
0e58e92812f2f679d6bf2ff66cbcfa6c1d1e14bbjerenkrantzdo { \
d4abb06ac220bb280ae996b6d21bbd257db51bb1jerenkrantz if (yydebug) \
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar yy_stack_print ((Bottom), (Top)); \
8aefbd756763807188d2e3ce336a8680e4893066wrowe} while (YYID (0))
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe
4fca95918a9c0ae93593806544b425d0adc2fcc3wrowe/*------------------------------------------------.
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe| Report that the YYRULE is going to be reduced. |
8aefbd756763807188d2e3ce336a8680e4893066wrowe`------------------------------------------------*/
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe#if (defined __STDC__ || defined __C99__FUNC__ \
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe || defined __cplusplus || defined _MSC_VER)
8aefbd756763807188d2e3ce336a8680e4893066wrowestatic void
4f9c22c4f27571d54197be9674e1fc0d528192aestrikeryy_reduce_print (YYSTYPE *yyvsp, int yyrule, ap_expr_parse_ctx_t *ctx)
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe#else
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowestatic void
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoaryy_reduce_print (yyvsp, yyrule, ctx)
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe YYSTYPE *yyvsp;
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar int yyrule;
8aefbd756763807188d2e3ce336a8680e4893066wrowe ap_expr_parse_ctx_t *ctx;
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe#endif
4f9c22c4f27571d54197be9674e1fc0d528192aestriker{
4a13940dc2990df0a798718d3a3f9cf1566c2217bjh int yynrhs = yyr2[yyrule];
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe int yyi;
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe unsigned long int yylno = yyrline[yyrule];
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
f08810eff40a2bddd2bc0103453c4ae775ea62bewrowe yyrule - 1, yylno);
f08810eff40a2bddd2bc0103453c4ae775ea62bewrowe /* The symbols being reduced. */
f08810eff40a2bddd2bc0103453c4ae775ea62bewrowe for (yyi = 0; yyi < yynrhs; yyi++)
1fbf6ba0f5207e6637b49f9a9dfcc779bbe952a9trawick {
f08810eff40a2bddd2bc0103453c4ae775ea62bewrowe YYFPRINTF (stderr, " $%d = ", yyi + 1);
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe &(yyvsp[(yyi + 1) - (yynrhs)])
8aefbd756763807188d2e3ce336a8680e4893066wrowe , ctx);
700b96db75e7cfadb5219978c1735b710d583763wrowe YYFPRINTF (stderr, "\n");
700b96db75e7cfadb5219978c1735b710d583763wrowe }
700b96db75e7cfadb5219978c1735b710d583763wrowe}
700b96db75e7cfadb5219978c1735b710d583763wrowe
700b96db75e7cfadb5219978c1735b710d583763wrowe# define YY_REDUCE_PRINT(Rule) \
700b96db75e7cfadb5219978c1735b710d583763wrowedo { \
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe if (yydebug) \
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe yy_reduce_print (yyvsp, Rule, ctx); \
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe} while (YYID (0))
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe/* Nonzero means print parse trace. It is left uninitialized so that
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe multiple parsers can coexist. */
e4a3f3c2f080cac75a15a6454cca429b8161c050wroweint yydebug;
700b96db75e7cfadb5219978c1735b710d583763wrowe#else /* !YYDEBUG */
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe# define YYDPRINTF(Args)
4f9c22c4f27571d54197be9674e1fc0d528192aestriker# define YY_SYMBOL_PRINT(Title, Type, Value, Location)
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe# define YY_STACK_PRINT(Bottom, Top)
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe# define YY_REDUCE_PRINT(Rule)
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe#endif /* !YYDEBUG */
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd/* YYINITDEPTH -- initial size of the parser's stacks. */
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe#ifndef YYINITDEPTH
8aefbd756763807188d2e3ce336a8680e4893066wrowe# define YYINITDEPTH 200
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar#endif
4f9c22c4f27571d54197be9674e1fc0d528192aestriker
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe if the built-in stack extension method is used).
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar Do not make this value too large; the results are undefined if
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar evaluated with infinite-precision integer arithmetic. */
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe#ifndef YYMAXDEPTH
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe# define YYMAXDEPTH 10000
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe#endif
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe
8aefbd756763807188d2e3ce336a8680e4893066wrowe
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe#if YYERROR_VERBOSE
8aefbd756763807188d2e3ce336a8680e4893066wrowe
700b96db75e7cfadb5219978c1735b710d583763wrowe# ifndef yystrlen
700b96db75e7cfadb5219978c1735b710d583763wrowe# if defined __GLIBC__ && defined _STRING_H
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe# define yystrlen strlen
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe# else
e8f95a682820a599fe41b22977010636be5c2717jim/* Return the length of YYSTR. */
e8f95a682820a599fe41b22977010636be5c2717jim#if (defined __STDC__ || defined __C99__FUNC__ \
700b96db75e7cfadb5219978c1735b710d583763wrowe || defined __cplusplus || defined _MSC_VER)
700b96db75e7cfadb5219978c1735b710d583763wrowestatic YYSIZE_T
700b96db75e7cfadb5219978c1735b710d583763wroweyystrlen (const char *yystr)
700b96db75e7cfadb5219978c1735b710d583763wrowe#else
700b96db75e7cfadb5219978c1735b710d583763wrowestatic YYSIZE_T
700b96db75e7cfadb5219978c1735b710d583763wroweyystrlen (yystr)
43c3e6a4b559b76b750c245ee95e2782c15b4296jim const char *yystr;
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe#endif
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe{
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar YYSIZE_T yylen;
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe for (yylen = 0; yystr[yylen]; yylen++)
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar continue;
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe return yylen;
700b96db75e7cfadb5219978c1735b710d583763wrowe}
700b96db75e7cfadb5219978c1735b710d583763wrowe# endif
700b96db75e7cfadb5219978c1735b710d583763wrowe# endif
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe
700b96db75e7cfadb5219978c1735b710d583763wrowe# ifndef yystpcpy
700b96db75e7cfadb5219978c1735b710d583763wrowe# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
700b96db75e7cfadb5219978c1735b710d583763wrowe# define yystpcpy stpcpy
700b96db75e7cfadb5219978c1735b710d583763wrowe# else
700b96db75e7cfadb5219978c1735b710d583763wrowe/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe YYDEST. */
700b96db75e7cfadb5219978c1735b710d583763wrowe#if (defined __STDC__ || defined __C99__FUNC__ \
700b96db75e7cfadb5219978c1735b710d583763wrowe || defined __cplusplus || defined _MSC_VER)
700b96db75e7cfadb5219978c1735b710d583763wrowestatic char *
700b96db75e7cfadb5219978c1735b710d583763wroweyystpcpy (char *yydest, const char *yysrc)
700b96db75e7cfadb5219978c1735b710d583763wrowe#else
700b96db75e7cfadb5219978c1735b710d583763wrowestatic char *
700b96db75e7cfadb5219978c1735b710d583763wroweyystpcpy (yydest, yysrc)
700b96db75e7cfadb5219978c1735b710d583763wrowe char *yydest;
700b96db75e7cfadb5219978c1735b710d583763wrowe const char *yysrc;
700b96db75e7cfadb5219978c1735b710d583763wrowe#endif
700b96db75e7cfadb5219978c1735b710d583763wrowe{
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar char *yyd = yydest;
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe const char *yys = yysrc;
700b96db75e7cfadb5219978c1735b710d583763wrowe
700b96db75e7cfadb5219978c1735b710d583763wrowe while ((*yyd++ = *yys++) != '\0')
700b96db75e7cfadb5219978c1735b710d583763wrowe continue;
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe
700b96db75e7cfadb5219978c1735b710d583763wrowe return yyd - 1;
700b96db75e7cfadb5219978c1735b710d583763wrowe}
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd# endif
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe# endif
700b96db75e7cfadb5219978c1735b710d583763wrowe
700b96db75e7cfadb5219978c1735b710d583763wrowe# ifndef yytnamerr
700b96db75e7cfadb5219978c1735b710d583763wrowe/* Copy to YYRES the contents of YYSTR after stripping away unnecessary
700b96db75e7cfadb5219978c1735b710d583763wrowe quotes and backslashes, so that it's suitable for yyerror. The
700b96db75e7cfadb5219978c1735b710d583763wrowe heuristic is that double-quoting is unnecessary unless the string
700b96db75e7cfadb5219978c1735b710d583763wrowe contains an apostrophe, a comma, or backslash (other than
700b96db75e7cfadb5219978c1735b710d583763wrowe backslash-backslash). YYSTR is taken from yytname. If YYRES is
700b96db75e7cfadb5219978c1735b710d583763wrowe null, do not copy; instead, return the length of what the result
700b96db75e7cfadb5219978c1735b710d583763wrowe would have been. */
700b96db75e7cfadb5219978c1735b710d583763wrowestatic YYSIZE_T
700b96db75e7cfadb5219978c1735b710d583763wroweyytnamerr (char *yyres, const char *yystr)
700b96db75e7cfadb5219978c1735b710d583763wrowe{
700b96db75e7cfadb5219978c1735b710d583763wrowe if (*yystr == '"')
700b96db75e7cfadb5219978c1735b710d583763wrowe {
700b96db75e7cfadb5219978c1735b710d583763wrowe YYSIZE_T yyn = 0;
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe char const *yyp = yystr;
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe
8aefbd756763807188d2e3ce336a8680e4893066wrowe for (;;)
2520f59894a3e07fefa881ef68aaded763a8d447ben switch (*++yyp)
0e58e92812f2f679d6bf2ff66cbcfa6c1d1e14bbjerenkrantz {
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar case '\'':
8aefbd756763807188d2e3ce336a8680e4893066wrowe case ',':
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe goto do_not_strip_quotes;
8aefbd756763807188d2e3ce336a8680e4893066wrowe
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar case '\\':
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe if (*++yyp != '\\')
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar goto do_not_strip_quotes;
8aefbd756763807188d2e3ce336a8680e4893066wrowe /* Fall through. */
4f9c22c4f27571d54197be9674e1fc0d528192aestriker default:
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe if (yyres)
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe yyres[yyn] = *yyp;
8aefbd756763807188d2e3ce336a8680e4893066wrowe yyn++;
4f9c22c4f27571d54197be9674e1fc0d528192aestriker break;
0e58e92812f2f679d6bf2ff66cbcfa6c1d1e14bbjerenkrantz
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe case '"':
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe if (yyres)
0e58e92812f2f679d6bf2ff66cbcfa6c1d1e14bbjerenkrantz yyres[yyn] = '\0';
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe return yyn;
0e58e92812f2f679d6bf2ff66cbcfa6c1d1e14bbjerenkrantz }
0e58e92812f2f679d6bf2ff66cbcfa6c1d1e14bbjerenkrantz do_not_strip_quotes: ;
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe }
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe if (! yyres)
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe return yystrlen (yystr);
0e58e92812f2f679d6bf2ff66cbcfa6c1d1e14bbjerenkrantz
0e58e92812f2f679d6bf2ff66cbcfa6c1d1e14bbjerenkrantz return yystpcpy (yyres, yystr) - yyres;
0e58e92812f2f679d6bf2ff66cbcfa6c1d1e14bbjerenkrantz}
0e58e92812f2f679d6bf2ff66cbcfa6c1d1e14bbjerenkrantz# endif
8aefbd756763807188d2e3ce336a8680e4893066wrowe
4f9c22c4f27571d54197be9674e1fc0d528192aestriker/* Copy into YYRESULT an error message about the unexpected token
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe YYCHAR while in state YYSTATE. Return the number of bytes copied,
4f9c22c4f27571d54197be9674e1fc0d528192aestriker including the terminating null byte. If YYRESULT is null, do not
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe copy anything; just return the number of bytes that would be
ecde48c75338ff5712f2036711f813c6dedca28ewrowe copied. As a special case, return 0 if an ordinary "syntax error"
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar message will do. Return YYSIZE_MAXIMUM if overflow occurs during
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe size calculation. */
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoarstatic YYSIZE_T
8aefbd756763807188d2e3ce336a8680e4893066wroweyysyntax_error (char *yyresult, int yystate, int yychar)
cf6ef072483172309861d06e85b1aeff4573c060wrowe{
cf6ef072483172309861d06e85b1aeff4573c060wrowe int yyn = yypact[yystate];
cf6ef072483172309861d06e85b1aeff4573c060wrowe
cf6ef072483172309861d06e85b1aeff4573c060wrowe if (! (YYPACT_NINF < yyn && yyn <= YYLAST))
cf6ef072483172309861d06e85b1aeff4573c060wrowe return 0;
cf6ef072483172309861d06e85b1aeff4573c060wrowe else
cf6ef072483172309861d06e85b1aeff4573c060wrowe {
2d4ea77e21ef7f3707d2c27f6117cc0a36e99b83trawick int yytype = YYTRANSLATE (yychar);
cf6ef072483172309861d06e85b1aeff4573c060wrowe YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe YYSIZE_T yysize = yysize0;
cf6ef072483172309861d06e85b1aeff4573c060wrowe YYSIZE_T yysize1;
700b96db75e7cfadb5219978c1735b710d583763wrowe int yysize_overflow = 0;
69adb3d949e3dd17c0492a01fc2cf298832c7eefwrowe enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
69adb3d949e3dd17c0492a01fc2cf298832c7eefwrowe char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
cf6ef072483172309861d06e85b1aeff4573c060wrowe int yyx;
cf6ef072483172309861d06e85b1aeff4573c060wrowe
cf6ef072483172309861d06e85b1aeff4573c060wrowe# if 0
cf6ef072483172309861d06e85b1aeff4573c060wrowe /* This is so xgettext sees the translatable formats that are
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe constructed on the fly. */
e8f95a682820a599fe41b22977010636be5c2717jim YY_("syntax error, unexpected %s");
1fbf6ba0f5207e6637b49f9a9dfcc779bbe952a9trawick YY_("syntax error, unexpected %s, expecting %s");
e8f95a682820a599fe41b22977010636be5c2717jim YY_("syntax error, unexpected %s, expecting %s or %s");
e8f95a682820a599fe41b22977010636be5c2717jim YY_("syntax error, unexpected %s, expecting %s or %s or %s");
e8f95a682820a599fe41b22977010636be5c2717jim YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
1fbf6ba0f5207e6637b49f9a9dfcc779bbe952a9trawick# endif
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe char *yyfmt;
1fbf6ba0f5207e6637b49f9a9dfcc779bbe952a9trawick char const *yyf;
e8f95a682820a599fe41b22977010636be5c2717jim static char const yyunexpected[] = "syntax error, unexpected %s";
1fbf6ba0f5207e6637b49f9a9dfcc779bbe952a9trawick static char const yyexpecting[] = ", expecting %s";
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe static char const yyor[] = " or %s";
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe char yyformat[sizeof yyunexpected
c2cf53a40a9814eb91db2cdf820f97d943f21628coar + sizeof yyexpecting - 1
c2cf53a40a9814eb91db2cdf820f97d943f21628coar + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
8aefbd756763807188d2e3ce336a8680e4893066wrowe * (sizeof yyor - 1))];
cf6ef072483172309861d06e85b1aeff4573c060wrowe char const *yyprefix = yyexpecting;
8aefbd756763807188d2e3ce336a8680e4893066wrowe
8aefbd756763807188d2e3ce336a8680e4893066wrowe /* Start YYX at -YYN if negative to avoid negative indexes in
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe YYCHECK. */
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe int yyxbegin = yyn < 0 ? -yyn : 0;
a1072ba3065ee7e37162e72f2fd4e7b209e49a33covener
a1072ba3065ee7e37162e72f2fd4e7b209e49a33covener /* Stay within bounds of both yycheck and yytname. */
a1072ba3065ee7e37162e72f2fd4e7b209e49a33covener int yychecklim = YYLAST - yyn + 1;
8aefbd756763807188d2e3ce336a8680e4893066wrowe int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
8aefbd756763807188d2e3ce336a8680e4893066wrowe int yycount = 1;
4f9c22c4f27571d54197be9674e1fc0d528192aestriker
cf6ef072483172309861d06e85b1aeff4573c060wrowe yyarg[0] = yytname[yytype];
4f9c22c4f27571d54197be9674e1fc0d528192aestriker yyfmt = yystpcpy (yyformat, yyunexpected);
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe for (yyx = yyxbegin; yyx < yyxend; ++yyx)
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe {
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe {
69adb3d949e3dd17c0492a01fc2cf298832c7eefwrowe yycount = 1;
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe yysize = yysize0;
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe yyformat[sizeof yyunexpected - 1] = '\0';
4f9c22c4f27571d54197be9674e1fc0d528192aestriker break;
cf6ef072483172309861d06e85b1aeff4573c060wrowe }
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe yyarg[yycount++] = yytname[yyx];
cadddb2c31d24d48f4017db4df0a29687432326cwrowe yysize1 = yysize + yytnamerr (0, yytname[yyx]);
cadddb2c31d24d48f4017db4df0a29687432326cwrowe yysize_overflow |= (yysize1 < yysize);
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe yysize = yysize1;
cf6ef072483172309861d06e85b1aeff4573c060wrowe yyfmt = yystpcpy (yyfmt, yyprefix);
0e58e92812f2f679d6bf2ff66cbcfa6c1d1e14bbjerenkrantz yyprefix = yyor;
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe }
8aefbd756763807188d2e3ce336a8680e4893066wrowe
cf6ef072483172309861d06e85b1aeff4573c060wrowe yyf = YY_(yyformat);
cf6ef072483172309861d06e85b1aeff4573c060wrowe yysize1 = yysize + yystrlen (yyf);
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe yysize_overflow |= (yysize1 < yysize);
4f9c22c4f27571d54197be9674e1fc0d528192aestriker yysize = yysize1;
700b96db75e7cfadb5219978c1735b710d583763wrowe
2d399cd7535887fceaa9f8f116eb98ce68ddd602trawick if (yysize_overflow)
71fe373d064756fb261876443806ece033ee3309slive return YYSIZE_MAXIMUM;
71fe373d064756fb261876443806ece033ee3309slive
c2cf53a40a9814eb91db2cdf820f97d943f21628coar if (yyresult)
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe {
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe /* Avoid sprintf, as that infringes on the user's name space.
ecde48c75338ff5712f2036711f813c6dedca28ewrowe Don't have undefined behavior even if the translation
8aefbd756763807188d2e3ce336a8680e4893066wrowe produced a string with the wrong number of "%s"s. */
ecde48c75338ff5712f2036711f813c6dedca28ewrowe char *yyp = yyresult;
ecde48c75338ff5712f2036711f813c6dedca28ewrowe int yyi = 0;
e8f95a682820a599fe41b22977010636be5c2717jim while ((*yyp = *yyf) != '\0')
ecde48c75338ff5712f2036711f813c6dedca28ewrowe {
ecde48c75338ff5712f2036711f813c6dedca28ewrowe if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe {
ecde48c75338ff5712f2036711f813c6dedca28ewrowe yyp += yytnamerr (yyp, yyarg[yyi++]);
ecde48c75338ff5712f2036711f813c6dedca28ewrowe yyf += 2;
ecde48c75338ff5712f2036711f813c6dedca28ewrowe }
ecde48c75338ff5712f2036711f813c6dedca28ewrowe else
ecde48c75338ff5712f2036711f813c6dedca28ewrowe {
ecde48c75338ff5712f2036711f813c6dedca28ewrowe yyp++;
ecde48c75338ff5712f2036711f813c6dedca28ewrowe yyf++;
ecde48c75338ff5712f2036711f813c6dedca28ewrowe }
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe }
8aefbd756763807188d2e3ce336a8680e4893066wrowe }
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe return yysize;
cf6ef072483172309861d06e85b1aeff4573c060wrowe }
cf6ef072483172309861d06e85b1aeff4573c060wrowe}
cf6ef072483172309861d06e85b1aeff4573c060wrowe#endif /* YYERROR_VERBOSE */
cf6ef072483172309861d06e85b1aeff4573c060wrowe
cf6ef072483172309861d06e85b1aeff4573c060wrowe
2d4ea77e21ef7f3707d2c27f6117cc0a36e99b83trawick/*-----------------------------------------------.
cf6ef072483172309861d06e85b1aeff4573c060wrowe| Release the memory associated to this symbol. |
cf6ef072483172309861d06e85b1aeff4573c060wrowe`-----------------------------------------------*/
cf6ef072483172309861d06e85b1aeff4573c060wrowe
cf6ef072483172309861d06e85b1aeff4573c060wrowe/*ARGSUSED*/
cf6ef072483172309861d06e85b1aeff4573c060wrowe#if (defined __STDC__ || defined __C99__FUNC__ \
cf6ef072483172309861d06e85b1aeff4573c060wrowe || defined __cplusplus || defined _MSC_VER)
cf6ef072483172309861d06e85b1aeff4573c060wrowestatic void
4f9c22c4f27571d54197be9674e1fc0d528192aestrikeryydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, ap_expr_parse_ctx_t *ctx)
cf6ef072483172309861d06e85b1aeff4573c060wrowe#else
cf6ef072483172309861d06e85b1aeff4573c060wrowestatic void
cf6ef072483172309861d06e85b1aeff4573c060wroweyydestruct (yymsg, yytype, yyvaluep, ctx)
cf6ef072483172309861d06e85b1aeff4573c060wrowe const char *yymsg;
cf6ef072483172309861d06e85b1aeff4573c060wrowe int yytype;
cf6ef072483172309861d06e85b1aeff4573c060wrowe YYSTYPE *yyvaluep;
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe ap_expr_parse_ctx_t *ctx;
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe#endif
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe{
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe YYUSE (yyvaluep);
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe YYUSE (ctx);
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe if (!yymsg)
4f9c22c4f27571d54197be9674e1fc0d528192aestriker yymsg = "Deleting";
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar switch (yytype)
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe {
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe default:
fa1c7ce09927decc1eecd1e9a35cc5331078a052covener break;
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe }
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar}
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe
700b96db75e7cfadb5219978c1735b710d583763wrowe/* Prevent warnings from -Wmissing-prototypes. */
700b96db75e7cfadb5219978c1735b710d583763wrowe#ifdef YYPARSE_PARAM
700b96db75e7cfadb5219978c1735b710d583763wrowe#if defined __STDC__ || defined __cplusplus
700b96db75e7cfadb5219978c1735b710d583763wroweint yyparse (void *YYPARSE_PARAM);
700b96db75e7cfadb5219978c1735b710d583763wrowe#else
700b96db75e7cfadb5219978c1735b710d583763wroweint yyparse ();
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe#endif
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe#else /* ! YYPARSE_PARAM */
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe#if defined __STDC__ || defined __cplusplus
e4a3f3c2f080cac75a15a6454cca429b8161c050wroweint yyparse (ap_expr_parse_ctx_t *ctx);
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe#else
e4a3f3c2f080cac75a15a6454cca429b8161c050wroweint yyparse ();
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe#endif
700b96db75e7cfadb5219978c1735b710d583763wrowe#endif /* ! YYPARSE_PARAM */
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe
4f9c22c4f27571d54197be9674e1fc0d528192aestriker
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe/*-------------------------.
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe| yyparse or yypush_parse. |
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd`-------------------------*/
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe#ifdef YYPARSE_PARAM
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar#if (defined __STDC__ || defined __C99__FUNC__ \
4f9c22c4f27571d54197be9674e1fc0d528192aestriker || defined __cplusplus || defined _MSC_VER)
e4a3f3c2f080cac75a15a6454cca429b8161c050wroweint
e4a3f3c2f080cac75a15a6454cca429b8161c050wroweyyparse (void *YYPARSE_PARAM)
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar#else
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoarint
e4a3f3c2f080cac75a15a6454cca429b8161c050wroweyyparse (YYPARSE_PARAM)
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar void *YYPARSE_PARAM;
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe#endif
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe#else /* ! YYPARSE_PARAM */
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe#if (defined __STDC__ || defined __C99__FUNC__ \
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe || defined __cplusplus || defined _MSC_VER)
8aefbd756763807188d2e3ce336a8680e4893066wroweint
e4a3f3c2f080cac75a15a6454cca429b8161c050wroweyyparse (ap_expr_parse_ctx_t *ctx)
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd#else
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisdint
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisdyyparse (ctx)
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe ap_expr_parse_ctx_t *ctx;
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar#endif
e4a3f3c2f080cac75a15a6454cca429b8161c050wrowe#endif
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd{
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd/* The lookahead symbol. */
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisdint yychar;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar/* The semantic value of the lookahead symbol. */
8aefbd756763807188d2e3ce336a8680e4893066wroweYYSTYPE yylval;
8aefbd756763807188d2e3ce336a8680e4893066wrowe
c2cf53a40a9814eb91db2cdf820f97d943f21628coar /* Number of syntax errors so far. */
c2cf53a40a9814eb91db2cdf820f97d943f21628coar int yynerrs;
c2cf53a40a9814eb91db2cdf820f97d943f21628coar
c2cf53a40a9814eb91db2cdf820f97d943f21628coar int yystate;
0ec08ecdcb42129d147888bda504787b164da39cerikabele /* Number of tokens to shift before error messages enabled. */
8aefbd756763807188d2e3ce336a8680e4893066wrowe int yyerrstatus;
8aefbd756763807188d2e3ce336a8680e4893066wrowe
8aefbd756763807188d2e3ce336a8680e4893066wrowe /* The stacks and their tools:
8aefbd756763807188d2e3ce336a8680e4893066wrowe `yyss': related to states.
8aefbd756763807188d2e3ce336a8680e4893066wrowe `yyvs': related to semantic values.
8aefbd756763807188d2e3ce336a8680e4893066wrowe
5bb29f57ae0184d2b3c1cdf35132f8ceb011f882wrowe Refer to the stacks thru separate pointers, to allow yyoverflow
8aefbd756763807188d2e3ce336a8680e4893066wrowe to reallocate them elsewhere. */
8aefbd756763807188d2e3ce336a8680e4893066wrowe
8aefbd756763807188d2e3ce336a8680e4893066wrowe /* The state stack. */
c2cf53a40a9814eb91db2cdf820f97d943f21628coar yytype_int16 yyssa[YYINITDEPTH];
c2cf53a40a9814eb91db2cdf820f97d943f21628coar yytype_int16 *yyss;
2d399cd7535887fceaa9f8f116eb98ce68ddd602trawick yytype_int16 *yyssp;
c2cf53a40a9814eb91db2cdf820f97d943f21628coar
8aefbd756763807188d2e3ce336a8680e4893066wrowe /* The semantic value stack. */
8aefbd756763807188d2e3ce336a8680e4893066wrowe YYSTYPE yyvsa[YYINITDEPTH];
8aefbd756763807188d2e3ce336a8680e4893066wrowe YYSTYPE *yyvs;
8aefbd756763807188d2e3ce336a8680e4893066wrowe YYSTYPE *yyvsp;
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe YYSIZE_T yystacksize;
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe int yyn;
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe int yyresult;
1b315ee865b0f11e582beb64127ca3a99a319d2fwrowe /* Lookahead token as an internal (translated) token number. */
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar int yytoken;
0540a0b469147b52e858587270dba31c2aaa9e09wrowe /* The variables used to return semantic value and location from the
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar action routines. */
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar YYSTYPE yyval;
0540a0b469147b52e858587270dba31c2aaa9e09wrowe
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar#if YYERROR_VERBOSE
0540a0b469147b52e858587270dba31c2aaa9e09wrowe /* Buffer for error messages, and its allocated size. */
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd char yymsgbuf[128];
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd char *yymsg = yymsgbuf;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd#endif
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd#define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N))
0540a0b469147b52e858587270dba31c2aaa9e09wrowe
a9a4544168a37b43bd180b3703ccee995f27a80awrowe /* The number of symbols on the RHS of the reduced rule.
0540a0b469147b52e858587270dba31c2aaa9e09wrowe Keep to zero when no symbol should be popped. */
0540a0b469147b52e858587270dba31c2aaa9e09wrowe int yylen = 0;
0540a0b469147b52e858587270dba31c2aaa9e09wrowe
dc8692c6c0ca616a09aa12dad005f2ef23baa1a0wrowe yytoken = 0;
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar yyss = yyssa;
0540a0b469147b52e858587270dba31c2aaa9e09wrowe yyvs = yyvsa;
0540a0b469147b52e858587270dba31c2aaa9e09wrowe yystacksize = YYINITDEPTH;
0540a0b469147b52e858587270dba31c2aaa9e09wrowe
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar YYDPRINTF ((stderr, "Starting parse\n"));
0540a0b469147b52e858587270dba31c2aaa9e09wrowe
dc8692c6c0ca616a09aa12dad005f2ef23baa1a0wrowe yystate = 0;
0540a0b469147b52e858587270dba31c2aaa9e09wrowe yyerrstatus = 0;
8aefbd756763807188d2e3ce336a8680e4893066wrowe yynerrs = 0;
8aefbd756763807188d2e3ce336a8680e4893066wrowe yychar = YYEMPTY; /* Cause a token to be read. */
0540a0b469147b52e858587270dba31c2aaa9e09wrowe
a2a0abd88b19e042a3eb2a9fa1702c25ad51303dwrowe /* Initialize stack pointers.
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb Waste one element of value and location stack
948096a99010fccf648814fecf38f75c689172d7wrowe so that they stay on the same level as the state stack.
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb The wasted elements are never initialized. */
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb yyssp = yyss;
4f9c22c4f27571d54197be9674e1fc0d528192aestriker yyvsp = yyvs;
0540a0b469147b52e858587270dba31c2aaa9e09wrowe
948096a99010fccf648814fecf38f75c689172d7wrowe goto yysetstate;
948096a99010fccf648814fecf38f75c689172d7wrowe
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd/*------------------------------------------------------------.
948096a99010fccf648814fecf38f75c689172d7wrowe| yynewstate -- Push a new state, which is found in yystate. |
948096a99010fccf648814fecf38f75c689172d7wrowe`------------------------------------------------------------*/
dc8692c6c0ca616a09aa12dad005f2ef23baa1a0wrowe yynewstate:
dc8692c6c0ca616a09aa12dad005f2ef23baa1a0wrowe /* In all cases, when you get here, the value and location stacks
053497224246c4dbef9af594cacf5c00ed271e6cwrowe have just been pushed. So pushing a state here evens the stacks. */
0540a0b469147b52e858587270dba31c2aaa9e09wrowe yyssp++;
d4abb06ac220bb280ae996b6d21bbd257db51bb1jerenkrantz
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb yysetstate:
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb *yyssp = yystate;
42da244268b11ec661b528510f80a18b73c51727brianp
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd if (yyss + yystacksize - 1 <= yyssp)
42da244268b11ec661b528510f80a18b73c51727brianp {
948096a99010fccf648814fecf38f75c689172d7wrowe /* Get the current used size of the three stacks, in elements. */
948096a99010fccf648814fecf38f75c689172d7wrowe YYSIZE_T yysize = yyssp - yyss + 1;
948096a99010fccf648814fecf38f75c689172d7wrowe
948096a99010fccf648814fecf38f75c689172d7wrowe#ifdef yyoverflow
948096a99010fccf648814fecf38f75c689172d7wrowe {
948096a99010fccf648814fecf38f75c689172d7wrowe /* Give user a chance to reallocate the stack. Use copies of
d4abb06ac220bb280ae996b6d21bbd257db51bb1jerenkrantz these so that the &'s don't force the real ones into
948096a99010fccf648814fecf38f75c689172d7wrowe memory. */
948096a99010fccf648814fecf38f75c689172d7wrowe YYSTYPE *yyvs1 = yyvs;
948096a99010fccf648814fecf38f75c689172d7wrowe yytype_int16 *yyss1 = yyss;
d4abb06ac220bb280ae996b6d21bbd257db51bb1jerenkrantz
948096a99010fccf648814fecf38f75c689172d7wrowe /* Each stack pointer address is followed by the size of the
948096a99010fccf648814fecf38f75c689172d7wrowe data in use in that stack, in bytes. This used to be a
053497224246c4dbef9af594cacf5c00ed271e6cwrowe conditional around just the two extra args, but that might
948096a99010fccf648814fecf38f75c689172d7wrowe be undefined if yyoverflow is a macro. */
948096a99010fccf648814fecf38f75c689172d7wrowe yyoverflow (YY_("memory exhausted"),
948096a99010fccf648814fecf38f75c689172d7wrowe &yyss1, yysize * sizeof (*yyssp),
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb &yyvs1, yysize * sizeof (*yyvsp),
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd &yystacksize);
4f9c22c4f27571d54197be9674e1fc0d528192aestriker
c2cf53a40a9814eb91db2cdf820f97d943f21628coar yyss = yyss1;
948096a99010fccf648814fecf38f75c689172d7wrowe yyvs = yyvs1;
4f9c22c4f27571d54197be9674e1fc0d528192aestriker }
948096a99010fccf648814fecf38f75c689172d7wrowe#else /* no yyoverflow */
948096a99010fccf648814fecf38f75c689172d7wrowe# ifndef YYSTACK_RELOCATE
053497224246c4dbef9af594cacf5c00ed271e6cwrowe goto yyexhaustedlab;
a9a4544168a37b43bd180b3703ccee995f27a80awrowe# else
948096a99010fccf648814fecf38f75c689172d7wrowe /* Extend the stack our own way. */
a9a4544168a37b43bd180b3703ccee995f27a80awrowe if (YYMAXDEPTH <= yystacksize)
4f9c22c4f27571d54197be9674e1fc0d528192aestriker goto yyexhaustedlab;
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar yystacksize *= 2;
948096a99010fccf648814fecf38f75c689172d7wrowe if (YYMAXDEPTH < yystacksize)
948096a99010fccf648814fecf38f75c689172d7wrowe yystacksize = YYMAXDEPTH;
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar
948096a99010fccf648814fecf38f75c689172d7wrowe {
948096a99010fccf648814fecf38f75c689172d7wrowe yytype_int16 *yyss1 = yyss;
4f9c22c4f27571d54197be9674e1fc0d528192aestriker union yyalloc *yyptr =
948096a99010fccf648814fecf38f75c689172d7wrowe (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
948096a99010fccf648814fecf38f75c689172d7wrowe if (! yyptr)
aecb17a45c6d3ee4729ed5f68dc4270f211ee7a8fielding goto yyexhaustedlab;
948096a99010fccf648814fecf38f75c689172d7wrowe YYSTACK_RELOCATE (yyss_alloc, yyss);
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd YYSTACK_RELOCATE (yyvs_alloc, yyvs);
aa047239dedf0d26e8efecfade32e7337f35df19wrowe# undef YYSTACK_RELOCATE
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd if (yyss1 != yyssa)
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd YYSTACK_FREE (yyss1);
948096a99010fccf648814fecf38f75c689172d7wrowe }
948096a99010fccf648814fecf38f75c689172d7wrowe# endif
948096a99010fccf648814fecf38f75c689172d7wrowe#endif /* no yyoverflow */
948096a99010fccf648814fecf38f75c689172d7wrowe
948096a99010fccf648814fecf38f75c689172d7wrowe yyssp = yyss + yysize - 1;
053497224246c4dbef9af594cacf5c00ed271e6cwrowe yyvsp = yyvs + yysize - 1;
0540a0b469147b52e858587270dba31c2aaa9e09wrowe
053497224246c4dbef9af594cacf5c00ed271e6cwrowe YYDPRINTF ((stderr, "Stack size increased to %lu\n",
4f9c22c4f27571d54197be9674e1fc0d528192aestriker (unsigned long int) yystacksize));
0540a0b469147b52e858587270dba31c2aaa9e09wrowe
4f9c22c4f27571d54197be9674e1fc0d528192aestriker if (yyss + yystacksize - 1 <= yyssp)
aa047239dedf0d26e8efecfade32e7337f35df19wrowe YYABORT;
d4abb06ac220bb280ae996b6d21bbd257db51bb1jerenkrantz }
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
053497224246c4dbef9af594cacf5c00ed271e6cwrowe YYDPRINTF ((stderr, "Entering state %d\n", yystate));
4f9c22c4f27571d54197be9674e1fc0d528192aestriker
053497224246c4dbef9af594cacf5c00ed271e6cwrowe if (yystate == YYFINAL)
053497224246c4dbef9af594cacf5c00ed271e6cwrowe YYACCEPT;
053497224246c4dbef9af594cacf5c00ed271e6cwrowe
4f9c22c4f27571d54197be9674e1fc0d528192aestriker goto yybackup;
c2cf53a40a9814eb91db2cdf820f97d943f21628coar
c2cf53a40a9814eb91db2cdf820f97d943f21628coar/*-----------.
1fbf6ba0f5207e6637b49f9a9dfcc779bbe952a9trawick| yybackup. |
c2cf53a40a9814eb91db2cdf820f97d943f21628coar`-----------*/
b6b1df87b7ce62620d48526a7ab630897cdaad90chrisdyybackup:
b6b1df87b7ce62620d48526a7ab630897cdaad90chrisd
4f9c22c4f27571d54197be9674e1fc0d528192aestriker /* Do appropriate processing given the current state. Read a
4f9c22c4f27571d54197be9674e1fc0d528192aestriker lookahead token if we need one and don't already have one. */
d4abb06ac220bb280ae996b6d21bbd257db51bb1jerenkrantz
053497224246c4dbef9af594cacf5c00ed271e6cwrowe /* First try to decide what to do without reference to lookahead token. */
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb yyn = yypact[yystate];
948096a99010fccf648814fecf38f75c689172d7wrowe if (yyn == YYPACT_NINF)
948096a99010fccf648814fecf38f75c689172d7wrowe goto yydefault;
948096a99010fccf648814fecf38f75c689172d7wrowe
0540a0b469147b52e858587270dba31c2aaa9e09wrowe /* Not known => get a lookahead token if don't already have one. */
948096a99010fccf648814fecf38f75c689172d7wrowe
948096a99010fccf648814fecf38f75c689172d7wrowe /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol. */
948096a99010fccf648814fecf38f75c689172d7wrowe if (yychar == YYEMPTY)
948096a99010fccf648814fecf38f75c689172d7wrowe {
948096a99010fccf648814fecf38f75c689172d7wrowe YYDPRINTF ((stderr, "Reading a token: "));
4f9c22c4f27571d54197be9674e1fc0d528192aestriker yychar = YYLEX;
948096a99010fccf648814fecf38f75c689172d7wrowe }
948096a99010fccf648814fecf38f75c689172d7wrowe
948096a99010fccf648814fecf38f75c689172d7wrowe if (yychar <= YYEOF)
948096a99010fccf648814fecf38f75c689172d7wrowe {
948096a99010fccf648814fecf38f75c689172d7wrowe yychar = yytoken = YYEOF;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd YYDPRINTF ((stderr, "Now at end of input.\n"));
948096a99010fccf648814fecf38f75c689172d7wrowe }
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb else
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar {
4f9c22c4f27571d54197be9674e1fc0d528192aestriker yytoken = YYTRANSLATE (yychar);
948096a99010fccf648814fecf38f75c689172d7wrowe YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
0540a0b469147b52e858587270dba31c2aaa9e09wrowe }
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar /* If the proper action on seeing token YYTOKEN is to reduce or to
0540a0b469147b52e858587270dba31c2aaa9e09wrowe detect an error, take that action. */
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar yyn += yytoken;
696218c49632c863d18b25fa52ab63617088cb38wrowe if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
948096a99010fccf648814fecf38f75c689172d7wrowe goto yydefault;
0540a0b469147b52e858587270dba31c2aaa9e09wrowe yyn = yytable[yyn];
948096a99010fccf648814fecf38f75c689172d7wrowe if (yyn <= 0)
948096a99010fccf648814fecf38f75c689172d7wrowe {
4f9c22c4f27571d54197be9674e1fc0d528192aestriker if (yyn == 0 || yyn == YYTABLE_NINF)
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd goto yyerrlab;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd yyn = -yyn;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd goto yyreduce;
053497224246c4dbef9af594cacf5c00ed271e6cwrowe }
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar
948096a99010fccf648814fecf38f75c689172d7wrowe /* Count tokens shifted since error; after three, turn off error
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd status. */
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd if (yyerrstatus)
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd yyerrstatus--;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar /* Shift the lookahead token. */
053497224246c4dbef9af594cacf5c00ed271e6cwrowe YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
053497224246c4dbef9af594cacf5c00ed271e6cwrowe
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd /* Discard the shifted token. */
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd yychar = YYEMPTY;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd yystate = yyn;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd *++yyvsp = yylval;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
a9a4544168a37b43bd180b3703ccee995f27a80awrowe goto yynewstate;
a9a4544168a37b43bd180b3703ccee995f27a80awrowe
a9a4544168a37b43bd180b3703ccee995f27a80awrowe
948096a99010fccf648814fecf38f75c689172d7wrowe/*-----------------------------------------------------------.
948096a99010fccf648814fecf38f75c689172d7wrowe| yydefault -- do the default action for the current state. |
053497224246c4dbef9af594cacf5c00ed271e6cwrowe`-----------------------------------------------------------*/
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoaryydefault:
053497224246c4dbef9af594cacf5c00ed271e6cwrowe yyn = yydefact[yystate];
053497224246c4dbef9af594cacf5c00ed271e6cwrowe if (yyn == 0)
948096a99010fccf648814fecf38f75c689172d7wrowe goto yyerrlab;
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar goto yyreduce;
948096a99010fccf648814fecf38f75c689172d7wrowe
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb/*-----------------------------.
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb| yyreduce -- Do a reduction. |
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb`-----------------------------*/
a2a0abd88b19e042a3eb2a9fa1702c25ad51303dwroweyyreduce:
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb /* yyn is the number of a rule to reduce with. */
aa047239dedf0d26e8efecfade32e7337f35df19wrowe yylen = yyr2[yyn];
aa047239dedf0d26e8efecfade32e7337f35df19wrowe
aa047239dedf0d26e8efecfade32e7337f35df19wrowe /* If YYLEN is nonzero, implement the default value of the action:
4f9c22c4f27571d54197be9674e1fc0d528192aestriker `$$ = $1'.
0540a0b469147b52e858587270dba31c2aaa9e09wrowe
aa047239dedf0d26e8efecfade32e7337f35df19wrowe Otherwise, the following line sets YYVAL to garbage.
aa047239dedf0d26e8efecfade32e7337f35df19wrowe This behavior is undocumented and Bison
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd users should not rely upon it. Assigning to YYVAL
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb unconditionally makes the parser a bit smaller, and it avoids a
dc8692c6c0ca616a09aa12dad005f2ef23baa1a0wrowe GCC warning that YYVAL may be used uninitialized. */
4f9c22c4f27571d54197be9674e1fc0d528192aestriker yyval = yyvsp[1-yylen];
dc8692c6c0ca616a09aa12dad005f2ef23baa1a0wrowe
dc8692c6c0ca616a09aa12dad005f2ef23baa1a0wrowe
b5bd19d82874782007a2f9bcb19341a483c1270cwrowe YY_REDUCE_PRINT (yyn);
dc8692c6c0ca616a09aa12dad005f2ef23baa1a0wrowe switch (yyn)
dc8692c6c0ca616a09aa12dad005f2ef23baa1a0wrowe {
dc8692c6c0ca616a09aa12dad005f2ef23baa1a0wrowe case 2:
a2b181763cb35fd899feb4a436aeadaa80bf91eabrianp
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd/* Line 1455 of yacc.c */
aa047239dedf0d26e8efecfade32e7337f35df19wrowe#line 109 "util_expr_parse.y"
aa047239dedf0d26e8efecfade32e7337f35df19wrowe { ctx->expr = (yyvsp[(1) - (1)].exVal); ;}
aa047239dedf0d26e8efecfade32e7337f35df19wrowe break;
aa047239dedf0d26e8efecfade32e7337f35df19wrowe
aa047239dedf0d26e8efecfade32e7337f35df19wrowe case 3:
0540a0b469147b52e858587270dba31c2aaa9e09wrowe
d4abb06ac220bb280ae996b6d21bbd257db51bb1jerenkrantz/* Line 1455 of yacc.c */
aa047239dedf0d26e8efecfade32e7337f35df19wrowe#line 110 "util_expr_parse.y"
aa047239dedf0d26e8efecfade32e7337f35df19wrowe { YYABORT; ;}
4f9c22c4f27571d54197be9674e1fc0d528192aestriker break;
aa047239dedf0d26e8efecfade32e7337f35df19wrowe
aa047239dedf0d26e8efecfade32e7337f35df19wrowe case 4:
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb/* Line 1455 of yacc.c */
d4abb06ac220bb280ae996b6d21bbd257db51bb1jerenkrantz#line 113 "util_expr_parse.y"
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb { (yyval.exVal) = ap_expr_make(op_True, NULL, NULL, ctx); ;}
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb break;
d4abb06ac220bb280ae996b6d21bbd257db51bb1jerenkrantz
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb case 5:
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
aa047239dedf0d26e8efecfade32e7337f35df19wrowe/* Line 1455 of yacc.c */
4f9c22c4f27571d54197be9674e1fc0d528192aestriker#line 114 "util_expr_parse.y"
aa047239dedf0d26e8efecfade32e7337f35df19wrowe { (yyval.exVal) = ap_expr_make(op_False, NULL, NULL, ctx); ;}
aa047239dedf0d26e8efecfade32e7337f35df19wrowe break;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
4f9c22c4f27571d54197be9674e1fc0d528192aestriker case 6:
c2cf53a40a9814eb91db2cdf820f97d943f21628coar
aa047239dedf0d26e8efecfade32e7337f35df19wrowe/* Line 1455 of yacc.c */
4f9c22c4f27571d54197be9674e1fc0d528192aestriker#line 115 "util_expr_parse.y"
aa047239dedf0d26e8efecfade32e7337f35df19wrowe { (yyval.exVal) = ap_expr_make(op_Not, (yyvsp[(2) - (2)].exVal), NULL, ctx); ;}
aa047239dedf0d26e8efecfade32e7337f35df19wrowe break;
aa047239dedf0d26e8efecfade32e7337f35df19wrowe
a9a4544168a37b43bd180b3703ccee995f27a80awrowe case 7:
a9a4544168a37b43bd180b3703ccee995f27a80awrowe
a9a4544168a37b43bd180b3703ccee995f27a80awrowe/* Line 1455 of yacc.c */
4f9c22c4f27571d54197be9674e1fc0d528192aestriker#line 116 "util_expr_parse.y"
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar { (yyval.exVal) = ap_expr_make(op_Or, (yyvsp[(1) - (3)].exVal), (yyvsp[(3) - (3)].exVal), ctx); ;}
aa047239dedf0d26e8efecfade32e7337f35df19wrowe break;
c2cf53a40a9814eb91db2cdf820f97d943f21628coar
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar case 8:
aa047239dedf0d26e8efecfade32e7337f35df19wrowe
aa047239dedf0d26e8efecfade32e7337f35df19wrowe/* Line 1455 of yacc.c */
4f9c22c4f27571d54197be9674e1fc0d528192aestriker#line 117 "util_expr_parse.y"
aa047239dedf0d26e8efecfade32e7337f35df19wrowe { (yyval.exVal) = ap_expr_make(op_And, (yyvsp[(1) - (3)].exVal), (yyvsp[(3) - (3)].exVal), ctx); ;}
aa047239dedf0d26e8efecfade32e7337f35df19wrowe break;
0540a0b469147b52e858587270dba31c2aaa9e09wrowe
aa047239dedf0d26e8efecfade32e7337f35df19wrowe case 9:
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
aa047239dedf0d26e8efecfade32e7337f35df19wrowe/* Line 1455 of yacc.c */
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd#line 118 "util_expr_parse.y"
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd { (yyval.exVal) = ap_expr_make(op_Comp, (yyvsp[(1) - (1)].exVal), NULL, ctx); ;}
aa047239dedf0d26e8efecfade32e7337f35df19wrowe break;
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
aa047239dedf0d26e8efecfade32e7337f35df19wrowe case 10:
aa047239dedf0d26e8efecfade32e7337f35df19wrowe
aa047239dedf0d26e8efecfade32e7337f35df19wrowe/* Line 1455 of yacc.c */
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb#line 119 "util_expr_parse.y"
0540a0b469147b52e858587270dba31c2aaa9e09wrowe { (yyval.exVal) = ap_expr_unary_op_make( (yyvsp[(1) - (2)].cpVal), (yyvsp[(2) - (2)].exVal), ctx); ;}
8fae12696bce44be9ce4c56888690cad8ac7b8f9sf break;
0540a0b469147b52e858587270dba31c2aaa9e09wrowe
0540a0b469147b52e858587270dba31c2aaa9e09wrowe case 11:
aa047239dedf0d26e8efecfade32e7337f35df19wrowe
750d12c59545dbbac70390988de94f7e901b08f2niq/* Line 1455 of yacc.c */
8fae12696bce44be9ce4c56888690cad8ac7b8f9sf#line 120 "util_expr_parse.y"
8bc0214116f2225966cf4a806dc183f18e7c3803sf { (yyval.exVal) = ap_expr_binary_op_make((yyvsp[(2) - (3)].cpVal), (yyvsp[(1) - (3)].exVal), (yyvsp[(3) - (3)].exVal), ctx); ;}
750d12c59545dbbac70390988de94f7e901b08f2niq break;
750d12c59545dbbac70390988de94f7e901b08f2niq
750d12c59545dbbac70390988de94f7e901b08f2niq case 12:
750d12c59545dbbac70390988de94f7e901b08f2niq
750d12c59545dbbac70390988de94f7e901b08f2niq/* Line 1455 of yacc.c */
750d12c59545dbbac70390988de94f7e901b08f2niq#line 121 "util_expr_parse.y"
750d12c59545dbbac70390988de94f7e901b08f2niq { (yyval.exVal) = (yyvsp[(2) - (3)].exVal); ;}
750d12c59545dbbac70390988de94f7e901b08f2niq break;
750d12c59545dbbac70390988de94f7e901b08f2niq
750d12c59545dbbac70390988de94f7e901b08f2niq case 13:
750d12c59545dbbac70390988de94f7e901b08f2niq
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb/* Line 1455 of yacc.c */
aa047239dedf0d26e8efecfade32e7337f35df19wrowe#line 124 "util_expr_parse.y"
aa047239dedf0d26e8efecfade32e7337f35df19wrowe { (yyval.exVal) = ap_expr_make(op_EQ, (yyvsp[(1) - (3)].exVal), (yyvsp[(3) - (3)].exVal), ctx); ;}
aa047239dedf0d26e8efecfade32e7337f35df19wrowe break;
aa047239dedf0d26e8efecfade32e7337f35df19wrowe
0540a0b469147b52e858587270dba31c2aaa9e09wrowe case 14:
aa047239dedf0d26e8efecfade32e7337f35df19wrowe
aa047239dedf0d26e8efecfade32e7337f35df19wrowe/* Line 1455 of yacc.c */
aa047239dedf0d26e8efecfade32e7337f35df19wrowe#line 125 "util_expr_parse.y"
aa047239dedf0d26e8efecfade32e7337f35df19wrowe { (yyval.exVal) = ap_expr_make(op_NE, (yyvsp[(1) - (3)].exVal), (yyvsp[(3) - (3)].exVal), ctx); ;}
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb break;
4f9c22c4f27571d54197be9674e1fc0d528192aestriker
aa047239dedf0d26e8efecfade32e7337f35df19wrowe case 15:
aa047239dedf0d26e8efecfade32e7337f35df19wrowe
aa047239dedf0d26e8efecfade32e7337f35df19wrowe/* Line 1455 of yacc.c */
aa047239dedf0d26e8efecfade32e7337f35df19wrowe#line 126 "util_expr_parse.y"
aa047239dedf0d26e8efecfade32e7337f35df19wrowe { (yyval.exVal) = ap_expr_make(op_LT, (yyvsp[(1) - (3)].exVal), (yyvsp[(3) - (3)].exVal), ctx); ;}
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd break;
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb case 16:
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar
4f9c22c4f27571d54197be9674e1fc0d528192aestriker/* Line 1455 of yacc.c */
aa047239dedf0d26e8efecfade32e7337f35df19wrowe#line 127 "util_expr_parse.y"
0540a0b469147b52e858587270dba31c2aaa9e09wrowe { (yyval.exVal) = ap_expr_make(op_LE, (yyvsp[(1) - (3)].exVal), (yyvsp[(3) - (3)].exVal), ctx); ;}
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar break;
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar
0540a0b469147b52e858587270dba31c2aaa9e09wrowe case 17:
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar
aa047239dedf0d26e8efecfade32e7337f35df19wrowe/* Line 1455 of yacc.c */
aa047239dedf0d26e8efecfade32e7337f35df19wrowe#line 128 "util_expr_parse.y"
0540a0b469147b52e858587270dba31c2aaa9e09wrowe { (yyval.exVal) = ap_expr_make(op_GT, (yyvsp[(1) - (3)].exVal), (yyvsp[(3) - (3)].exVal), ctx); ;}
aa047239dedf0d26e8efecfade32e7337f35df19wrowe break;
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
4f9c22c4f27571d54197be9674e1fc0d528192aestriker case 18:
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd/* Line 1455 of yacc.c */
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd#line 129 "util_expr_parse.y"
aa047239dedf0d26e8efecfade32e7337f35df19wrowe { (yyval.exVal) = ap_expr_make(op_GE, (yyvsp[(1) - (3)].exVal), (yyvsp[(3) - (3)].exVal), ctx); ;}
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar break;
aa047239dedf0d26e8efecfade32e7337f35df19wrowe
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd case 19:
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd/* Line 1455 of yacc.c */
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd#line 130 "util_expr_parse.y"
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar { (yyval.exVal) = ap_expr_make(op_STR_EQ, (yyvsp[(1) - (3)].exVal), (yyvsp[(3) - (3)].exVal), ctx); ;}
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb break;
dc8692c6c0ca616a09aa12dad005f2ef23baa1a0wrowe
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd case 20:
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd/* Line 1455 of yacc.c */
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd#line 131 "util_expr_parse.y"
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd { (yyval.exVal) = ap_expr_make(op_STR_NE, (yyvsp[(1) - (3)].exVal), (yyvsp[(3) - (3)].exVal), ctx); ;}
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd break;
a9a4544168a37b43bd180b3703ccee995f27a80awrowe
a9a4544168a37b43bd180b3703ccee995f27a80awrowe case 21:
a9a4544168a37b43bd180b3703ccee995f27a80awrowe
aa047239dedf0d26e8efecfade32e7337f35df19wrowe/* Line 1455 of yacc.c */
aa047239dedf0d26e8efecfade32e7337f35df19wrowe#line 132 "util_expr_parse.y"
dc8692c6c0ca616a09aa12dad005f2ef23baa1a0wrowe { (yyval.exVal) = ap_expr_make(op_STR_LT, (yyvsp[(1) - (3)].exVal), (yyvsp[(3) - (3)].exVal), ctx); ;}
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar break;
aa047239dedf0d26e8efecfade32e7337f35df19wrowe
aa047239dedf0d26e8efecfade32e7337f35df19wrowe case 22:
aa047239dedf0d26e8efecfade32e7337f35df19wrowe
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar/* Line 1455 of yacc.c */
aa047239dedf0d26e8efecfade32e7337f35df19wrowe#line 133 "util_expr_parse.y"
dc8692c6c0ca616a09aa12dad005f2ef23baa1a0wrowe { (yyval.exVal) = ap_expr_make(op_STR_LE, (yyvsp[(1) - (3)].exVal), (yyvsp[(3) - (3)].exVal), ctx); ;}
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb break;
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb case 23:
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb/* Line 1455 of yacc.c */
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb#line 134 "util_expr_parse.y"
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb { (yyval.exVal) = ap_expr_make(op_STR_GT, (yyvsp[(1) - (3)].exVal), (yyvsp[(3) - (3)].exVal), ctx); ;}
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb break;
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb case 24:
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb/* Line 1455 of yacc.c */
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb#line 135 "util_expr_parse.y"
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb { (yyval.exVal) = ap_expr_make(op_STR_GE, (yyvsp[(1) - (3)].exVal), (yyvsp[(3) - (3)].exVal), ctx); ;}
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb break;
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb case 25:
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb/* Line 1455 of yacc.c */
4f9c22c4f27571d54197be9674e1fc0d528192aestriker#line 136 "util_expr_parse.y"
d2220a04f870f632b8cec1e6713dbb980ed5e386wrowe { (yyval.exVal) = ap_expr_make(op_IN, (yyvsp[(1) - (3)].exVal), (yyvsp[(3) - (3)].exVal), ctx); ;}
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb break;
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
d2220a04f870f632b8cec1e6713dbb980ed5e386wrowe case 26:
4f9c22c4f27571d54197be9674e1fc0d528192aestriker
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb/* Line 1455 of yacc.c */
6fd5761878f22fb9a2de0835807a29784bf367abtrawick#line 137 "util_expr_parse.y"
d2220a04f870f632b8cec1e6713dbb980ed5e386wrowe { (yyval.exVal) = ap_expr_make(op_REG, (yyvsp[(1) - (3)].exVal), (yyvsp[(3) - (3)].exVal), ctx); ;}
d2220a04f870f632b8cec1e6713dbb980ed5e386wrowe break;
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
e68544ae924174ca227ede8e2e722cefa00ea0d3wrowe case 27:
e68544ae924174ca227ede8e2e722cefa00ea0d3wrowe
e68544ae924174ca227ede8e2e722cefa00ea0d3wrowe/* Line 1455 of yacc.c */
e68544ae924174ca227ede8e2e722cefa00ea0d3wrowe#line 138 "util_expr_parse.y"
efd83d1dd1a25688a3093c5a542ae16bacef62ddsf { (yyval.exVal) = ap_expr_make(op_NRE, (yyvsp[(1) - (3)].exVal), (yyvsp[(3) - (3)].exVal), ctx); ;}
e68544ae924174ca227ede8e2e722cefa00ea0d3wrowe break;
e68544ae924174ca227ede8e2e722cefa00ea0d3wrowe
e68544ae924174ca227ede8e2e722cefa00ea0d3wrowe case 28:
fa06de8a28a737e8fbaad76d7f3ff67aaa5e4a09wrowe
fa06de8a28a737e8fbaad76d7f3ff67aaa5e4a09wrowe/* Line 1455 of yacc.c */
fa06de8a28a737e8fbaad76d7f3ff67aaa5e4a09wrowe#line 141 "util_expr_parse.y"
4f9c22c4f27571d54197be9674e1fc0d528192aestriker { (yyval.exVal) = (yyvsp[(1) - (1)].exVal); ;}
fa06de8a28a737e8fbaad76d7f3ff67aaa5e4a09wrowe break;
fa06de8a28a737e8fbaad76d7f3ff67aaa5e4a09wrowe
fa06de8a28a737e8fbaad76d7f3ff67aaa5e4a09wrowe case 29:
fa06de8a28a737e8fbaad76d7f3ff67aaa5e4a09wrowe
4f9c22c4f27571d54197be9674e1fc0d528192aestriker/* Line 1455 of yacc.c */
e68544ae924174ca227ede8e2e722cefa00ea0d3wrowe#line 142 "util_expr_parse.y"
e68544ae924174ca227ede8e2e722cefa00ea0d3wrowe { (yyval.exVal) = (yyvsp[(2) - (3)].exVal); ;}
e68544ae924174ca227ede8e2e722cefa00ea0d3wrowe break;
e68544ae924174ca227ede8e2e722cefa00ea0d3wrowe
e68544ae924174ca227ede8e2e722cefa00ea0d3wrowe case 30:
e68544ae924174ca227ede8e2e722cefa00ea0d3wrowe
e68544ae924174ca227ede8e2e722cefa00ea0d3wrowe/* Line 1455 of yacc.c */
ebe7da316894e2b93b4a905fccd2496d0ed1bc78rbb#line 145 "util_expr_parse.y"
ebe7da316894e2b93b4a905fccd2496d0ed1bc78rbb { (yyval.exVal) = ap_expr_make(op_ListElement, (yyvsp[(1) - (1)].exVal), NULL, ctx); ;}
ebe7da316894e2b93b4a905fccd2496d0ed1bc78rbb break;
ebe7da316894e2b93b4a905fccd2496d0ed1bc78rbb
4f9c22c4f27571d54197be9674e1fc0d528192aestriker case 31:
4f9c22c4f27571d54197be9674e1fc0d528192aestriker
e68544ae924174ca227ede8e2e722cefa00ea0d3wrowe/* Line 1455 of yacc.c */
4f9c22c4f27571d54197be9674e1fc0d528192aestriker#line 146 "util_expr_parse.y"
e57e920838f31508f1418aa4c25ce55b345b2cebrbb { (yyval.exVal) = ap_expr_make(op_ListElement, (yyvsp[(3) - (3)].exVal), (yyvsp[(1) - (3)].exVal), ctx); ;}
4f9c22c4f27571d54197be9674e1fc0d528192aestriker break;
e68544ae924174ca227ede8e2e722cefa00ea0d3wrowe
e68544ae924174ca227ede8e2e722cefa00ea0d3wrowe case 32:
e57e920838f31508f1418aa4c25ce55b345b2cebrbb
e57e920838f31508f1418aa4c25ce55b345b2cebrbb/* Line 1455 of yacc.c */
e57e920838f31508f1418aa4c25ce55b345b2cebrbb#line 149 "util_expr_parse.y"
e57e920838f31508f1418aa4c25ce55b345b2cebrbb { (yyval.exVal) = ap_expr_make(op_Concat, (yyvsp[(1) - (2)].exVal), (yyvsp[(2) - (2)].exVal), ctx); ;}
e57e920838f31508f1418aa4c25ce55b345b2cebrbb break;
e57e920838f31508f1418aa4c25ce55b345b2cebrbb
e57e920838f31508f1418aa4c25ce55b345b2cebrbb case 33:
e57e920838f31508f1418aa4c25ce55b345b2cebrbb
e57e920838f31508f1418aa4c25ce55b345b2cebrbb/* Line 1455 of yacc.c */
e57e920838f31508f1418aa4c25ce55b345b2cebrbb#line 150 "util_expr_parse.y"
e68544ae924174ca227ede8e2e722cefa00ea0d3wrowe { (yyval.exVal) = (yyvsp[(1) - (1)].exVal); ;}
e68544ae924174ca227ede8e2e722cefa00ea0d3wrowe break;
e68544ae924174ca227ede8e2e722cefa00ea0d3wrowe
e68544ae924174ca227ede8e2e722cefa00ea0d3wrowe case 34:
e68544ae924174ca227ede8e2e722cefa00ea0d3wrowe
d2220a04f870f632b8cec1e6713dbb980ed5e386wrowe/* Line 1455 of yacc.c */
4f9c22c4f27571d54197be9674e1fc0d528192aestriker#line 153 "util_expr_parse.y"
d2220a04f870f632b8cec1e6713dbb980ed5e386wrowe { (yyval.exVal) = ap_expr_make(op_String, (yyvsp[(1) - (1)].cpVal), NULL, ctx); ;}
d2220a04f870f632b8cec1e6713dbb980ed5e386wrowe break;
d2220a04f870f632b8cec1e6713dbb980ed5e386wrowe
d2220a04f870f632b8cec1e6713dbb980ed5e386wrowe case 35:
098ae874f43f7a0b66be5406a7e2fb971bbbe00ewrowe
098ae874f43f7a0b66be5406a7e2fb971bbbe00ewrowe/* Line 1455 of yacc.c */
098ae874f43f7a0b66be5406a7e2fb971bbbe00ewrowe#line 154 "util_expr_parse.y"
098ae874f43f7a0b66be5406a7e2fb971bbbe00ewrowe { (yyval.exVal) = (yyvsp[(1) - (1)].exVal); ;}
439ccf2a084e1da566548931c585cbcc3a9e7f4cminfrin break;
439ccf2a084e1da566548931c585cbcc3a9e7f4cminfrin
439ccf2a084e1da566548931c585cbcc3a9e7f4cminfrin case 36:
439ccf2a084e1da566548931c585cbcc3a9e7f4cminfrin
d2220a04f870f632b8cec1e6713dbb980ed5e386wrowe/* Line 1455 of yacc.c */
e68544ae924174ca227ede8e2e722cefa00ea0d3wrowe#line 155 "util_expr_parse.y"
e68544ae924174ca227ede8e2e722cefa00ea0d3wrowe { (yyval.exVal) = (yyvsp[(1) - (1)].exVal); ;}
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb break;
c2cf53a40a9814eb91db2cdf820f97d943f21628coar
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb case 37:
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb/* Line 1455 of yacc.c */
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb#line 158 "util_expr_parse.y"
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb { (yyval.exVal) = ap_expr_var_make((yyvsp[(2) - (3)].cpVal), ctx); ;}
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb break;
4f9c22c4f27571d54197be9674e1fc0d528192aestriker
68b29bcadd6c46aecdc9fe14c93555a2238ad2aagregames case 38:
68b29bcadd6c46aecdc9fe14c93555a2238ad2aagregames
68b29bcadd6c46aecdc9fe14c93555a2238ad2aagregames/* Line 1455 of yacc.c */
4f9c22c4f27571d54197be9674e1fc0d528192aestriker#line 159 "util_expr_parse.y"
4f9c22c4f27571d54197be9674e1fc0d528192aestriker { (yyval.exVal) = ap_expr_str_func_make((yyvsp[(2) - (5)].cpVal), (yyvsp[(4) - (5)].exVal), ctx); ;}
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb break;
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
a91a59d0b0ceed7cd5621fe8757eda5ff6a043a8pquerna case 39:
4f9c22c4f27571d54197be9674e1fc0d528192aestriker
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb/* Line 1455 of yacc.c */
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb#line 162 "util_expr_parse.y"
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb { (yyval.exVal) = ap_expr_make(op_Digit, (yyvsp[(1) - (1)].cpVal), NULL, ctx); ;}
a91a59d0b0ceed7cd5621fe8757eda5ff6a043a8pquerna break;
a91a59d0b0ceed7cd5621fe8757eda5ff6a043a8pquerna
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar case 40:
367d146f245f3b1c9f77c18e6ec591b52e0b344cbnicholes
367d146f245f3b1c9f77c18e6ec591b52e0b344cbnicholes/* Line 1455 of yacc.c */
4f9c22c4f27571d54197be9674e1fc0d528192aestriker#line 163 "util_expr_parse.y"
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb { (yyval.exVal) = ap_expr_make(op_Concat, (yyvsp[(1) - (3)].exVal), (yyvsp[(3) - (3)].exVal), ctx); ;}
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd break;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd case 41:
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd/* Line 1455 of yacc.c */
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd#line 164 "util_expr_parse.y"
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd { (yyval.exVal) = (yyvsp[(1) - (1)].exVal); ;}
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd break;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd case 42:
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd/* Line 1455 of yacc.c */
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd#line 165 "util_expr_parse.y"
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd { (yyval.exVal) = (yyvsp[(1) - (1)].exVal); ;}
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd break;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
18b5268e013574026b2503b1641baf3299045f45sf case 43:
18b5268e013574026b2503b1641baf3299045f45sf
18b5268e013574026b2503b1641baf3299045f45sf/* Line 1455 of yacc.c */
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd#line 166 "util_expr_parse.y"
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd { (yyval.exVal) = (yyvsp[(1) - (1)].exVal); ;}
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd break;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd case 44:
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd/* Line 1455 of yacc.c */
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd#line 167 "util_expr_parse.y"
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd { (yyval.exVal) = (yyvsp[(2) - (3)].exVal); ;}
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd break;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
db455cbc662c98dbbf53175393c50086ff63370cchrisd case 45:
db455cbc662c98dbbf53175393c50086ff63370cchrisd
db455cbc662c98dbbf53175393c50086ff63370cchrisd/* Line 1455 of yacc.c */
db455cbc662c98dbbf53175393c50086ff63370cchrisd#line 168 "util_expr_parse.y"
db455cbc662c98dbbf53175393c50086ff63370cchrisd { (yyval.exVal) = ap_expr_make(op_String, "", NULL, ctx); ;}
db455cbc662c98dbbf53175393c50086ff63370cchrisd break;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd case 46:
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd/* Line 1455 of yacc.c */
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd#line 171 "util_expr_parse.y"
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd {
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd ap_regex_t *regex;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd if ((regex = ap_pregcomp(ctx->pool, (yyvsp[(1) - (1)].cpVal),
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd AP_REG_EXTENDED|AP_REG_NOSUB)) == NULL) {
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd ctx->error = "Failed to compile regular expression";
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd YYERROR;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd }
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd (yyval.exVal) = ap_expr_make(op_Regex, regex, NULL, ctx);
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd ;}
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd break;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd case 47:
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd/* Line 1455 of yacc.c */
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd#line 180 "util_expr_parse.y"
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd {
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd ap_regex_t *regex;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd if ((regex = ap_pregcomp(ctx->pool, (yyvsp[(1) - (1)].cpVal),
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd AP_REG_EXTENDED|AP_REG_NOSUB|AP_REG_ICASE)) == NULL) {
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd ctx->error = "Failed to compile regular expression";
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd YYERROR;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd }
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd (yyval.exVal) = ap_expr_make(op_Regex, regex, NULL, ctx);
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd ;}
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd break;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd case 48:
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd/* Line 1455 of yacc.c */
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd#line 191 "util_expr_parse.y"
18b5268e013574026b2503b1641baf3299045f45sf {
18b5268e013574026b2503b1641baf3299045f45sf int *n = apr_palloc(ctx->pool, sizeof(int));
18b5268e013574026b2503b1641baf3299045f45sf *n = (yyvsp[(1) - (1)].num);
18b5268e013574026b2503b1641baf3299045f45sf (yyval.exVal) = ap_expr_make(op_RegexBackref, n, NULL, ctx);
18b5268e013574026b2503b1641baf3299045f45sf ;}
18b5268e013574026b2503b1641baf3299045f45sf break;
18b5268e013574026b2503b1641baf3299045f45sf
18b5268e013574026b2503b1641baf3299045f45sf case 49:
18b5268e013574026b2503b1641baf3299045f45sf
18b5268e013574026b2503b1641baf3299045f45sf/* Line 1455 of yacc.c */
18b5268e013574026b2503b1641baf3299045f45sf#line 198 "util_expr_parse.y"
18b5268e013574026b2503b1641baf3299045f45sf { (yyval.exVal) = ap_expr_list_func_make((yyvsp[(1) - (4)].cpVal), (yyvsp[(3) - (4)].exVal), ctx); ;}
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd break;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd case 50:
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd/* Line 1455 of yacc.c */
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd#line 201 "util_expr_parse.y"
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd { (yyval.exVal) = ap_expr_str_func_make((yyvsp[(1) - (4)].cpVal), (yyvsp[(3) - (4)].exVal), ctx); ;}
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd break;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd/* Line 1455 of yacc.c */
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd#line 1836 "util_expr_parse.c"
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd default: break;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd }
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd YYPOPSTACK (yylen);
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd yylen = 0;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd YY_STACK_PRINT (yyss, yyssp);
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd *++yyvsp = yyval;
a72211e92bab814bfa28ee086ca9b2a1a6095c92chrisd
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe /* Now `shift' the result of the reduction. Determine what state
b67fb549910fa0faf4cdd8aeaf9aeab51d4b6a92wrowe that goes to, based on the state we popped back to and the rule
e8eee56a2ea20f673e5942fb58e1426a7561c7acstas number reduced by. */
b67fb549910fa0faf4cdd8aeaf9aeab51d4b6a92wrowe
b67fb549910fa0faf4cdd8aeaf9aeab51d4b6a92wrowe yyn = yyr1[yyn];
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
b67fb549910fa0faf4cdd8aeaf9aeab51d4b6a92wrowe yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
8011ccb9e0700e5a396e2362dab1d9386206277fcolm if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
e8f95a682820a599fe41b22977010636be5c2717jim yystate = yytable[yystate];
b67fb549910fa0faf4cdd8aeaf9aeab51d4b6a92wrowe else
b67fb549910fa0faf4cdd8aeaf9aeab51d4b6a92wrowe yystate = yydefgoto[yyn - YYNTOKENS];
d2220a04f870f632b8cec1e6713dbb980ed5e386wrowe
b45c1c292ff1fa635004ae81fa691f8cb3cdda85rbb goto yynewstate;
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb/*------------------------------------.
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb| yyerrlab -- here on detecting error |
e8eee56a2ea20f673e5942fb58e1426a7561c7acstas`------------------------------------*/
e8eee56a2ea20f673e5942fb58e1426a7561c7acstasyyerrlab:
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar /* If not already recovering from an error, report this error. */
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb if (!yyerrstatus)
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb {
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb ++yynerrs;
e8eee56a2ea20f673e5942fb58e1426a7561c7acstas#if ! YYERROR_VERBOSE
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb yyerror (ctx, YY_("syntax error"));
c880637396a01f4acfcf7e35fe423ced2d86c3b4nd#else
c880637396a01f4acfcf7e35fe423ced2d86c3b4nd {
c880637396a01f4acfcf7e35fe423ced2d86c3b4nd YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
a8c55845ffa7170766e410dbd799353127b628f9nd if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM)
c880637396a01f4acfcf7e35fe423ced2d86c3b4nd {
c880637396a01f4acfcf7e35fe423ced2d86c3b4nd YYSIZE_T yyalloc = 2 * yysize;
c880637396a01f4acfcf7e35fe423ced2d86c3b4nd if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM))
c880637396a01f4acfcf7e35fe423ced2d86c3b4nd yyalloc = YYSTACK_ALLOC_MAXIMUM;
e8f95a682820a599fe41b22977010636be5c2717jim if (yymsg != yymsgbuf)
30b4a330a5f651eb5198fa93dbb9f3d3594564c9stoddard YYSTACK_FREE (yymsg);
30b4a330a5f651eb5198fa93dbb9f3d3594564c9stoddard yymsg = (char *) YYSTACK_ALLOC (yyalloc);
6edf0ccf36ca2792b20058833680375b9256f2e0colm if (yymsg)
e8f95a682820a599fe41b22977010636be5c2717jim yymsg_alloc = yyalloc;
e8f95a682820a599fe41b22977010636be5c2717jim else
e8f95a682820a599fe41b22977010636be5c2717jim {
e8f95a682820a599fe41b22977010636be5c2717jim yymsg = yymsgbuf;
6edf0ccf36ca2792b20058833680375b9256f2e0colm yymsg_alloc = sizeof yymsgbuf;
30b4a330a5f651eb5198fa93dbb9f3d3594564c9stoddard }
6edf0ccf36ca2792b20058833680375b9256f2e0colm }
6edf0ccf36ca2792b20058833680375b9256f2e0colm
6edf0ccf36ca2792b20058833680375b9256f2e0colm if (0 < yysize && yysize <= yymsg_alloc)
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb {
6edf0ccf36ca2792b20058833680375b9256f2e0colm (void) yysyntax_error (yymsg, yystate, yychar);
30b4a330a5f651eb5198fa93dbb9f3d3594564c9stoddard yyerror (ctx, yymsg);
30b4a330a5f651eb5198fa93dbb9f3d3594564c9stoddard }
30b4a330a5f651eb5198fa93dbb9f3d3594564c9stoddard else
e8f95a682820a599fe41b22977010636be5c2717jim {
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb yyerror (ctx, YY_("syntax error"));
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb if (yysize != 0)
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb goto yyexhaustedlab;
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb }
e8eee56a2ea20f673e5942fb58e1426a7561c7acstas }
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb#endif
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb }
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
e8eee56a2ea20f673e5942fb58e1426a7561c7acstas
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb if (yyerrstatus == 3)
efa1a34b0a7785fc72863eff175b0cfc1ecb0e38wrowe {
117026201e6d8fe7d82416b8a7324830f5a87292wrowe /* If just tried and failed to reuse lookahead token after an
3cd826b00280881e5a2f03d8ec1f8d55802b93dewrowe error, discard it. */
117026201e6d8fe7d82416b8a7324830f5a87292wrowe
117026201e6d8fe7d82416b8a7324830f5a87292wrowe if (yychar <= YYEOF)
117026201e6d8fe7d82416b8a7324830f5a87292wrowe {
117026201e6d8fe7d82416b8a7324830f5a87292wrowe /* Return failure if at end of input. */
117026201e6d8fe7d82416b8a7324830f5a87292wrowe if (yychar == YYEOF)
6c24fd6cfe148639988d5b335185ffb215662801wrowe YYABORT;
117026201e6d8fe7d82416b8a7324830f5a87292wrowe }
d2220a04f870f632b8cec1e6713dbb980ed5e386wrowe else
117026201e6d8fe7d82416b8a7324830f5a87292wrowe {
4f9c22c4f27571d54197be9674e1fc0d528192aestriker yydestruct ("Error: discarding",
cadddb2c31d24d48f4017db4df0a29687432326cwrowe yytoken, &yylval, ctx);
117026201e6d8fe7d82416b8a7324830f5a87292wrowe yychar = YYEMPTY;
f888346b48f5e5b5e3f0a47dedb8cefd2759a4e2gregames }
f888346b48f5e5b5e3f0a47dedb8cefd2759a4e2gregames }
3cd826b00280881e5a2f03d8ec1f8d55802b93dewrowe
4f9c22c4f27571d54197be9674e1fc0d528192aestriker /* Else will try to reuse lookahead token after shifting the error
3cd826b00280881e5a2f03d8ec1f8d55802b93dewrowe token. */
3cd826b00280881e5a2f03d8ec1f8d55802b93dewrowe goto yyerrlab1;
3cd826b00280881e5a2f03d8ec1f8d55802b93dewrowe
f888346b48f5e5b5e3f0a47dedb8cefd2759a4e2gregames
f888346b48f5e5b5e3f0a47dedb8cefd2759a4e2gregames/*---------------------------------------------------.
f888346b48f5e5b5e3f0a47dedb8cefd2759a4e2gregames| yyerrorlab -- error raised explicitly by YYERROR. |
f888346b48f5e5b5e3f0a47dedb8cefd2759a4e2gregames`---------------------------------------------------*/
3cd826b00280881e5a2f03d8ec1f8d55802b93dewroweyyerrorlab:
3cd826b00280881e5a2f03d8ec1f8d55802b93dewrowe
3cd826b00280881e5a2f03d8ec1f8d55802b93dewrowe /* Pacify compilers like GCC when the user code never invokes
3cd826b00280881e5a2f03d8ec1f8d55802b93dewrowe YYERROR and the label yyerrorlab therefore never appears in user
3cd826b00280881e5a2f03d8ec1f8d55802b93dewrowe code. */
3cd826b00280881e5a2f03d8ec1f8d55802b93dewrowe if (/*CONSTCOND*/ 0)
dc3a3d949b7ef46b8385858c822267e39b665c12nd goto yyerrorlab;
f888346b48f5e5b5e3f0a47dedb8cefd2759a4e2gregames
f888346b48f5e5b5e3f0a47dedb8cefd2759a4e2gregames /* Do not reclaim the symbols of the rule which action triggered
f888346b48f5e5b5e3f0a47dedb8cefd2759a4e2gregames this YYERROR. */
dc3a3d949b7ef46b8385858c822267e39b665c12nd YYPOPSTACK (yylen);
dc3a3d949b7ef46b8385858c822267e39b665c12nd yylen = 0;
dc3a3d949b7ef46b8385858c822267e39b665c12nd YY_STACK_PRINT (yyss, yyssp);
f888346b48f5e5b5e3f0a47dedb8cefd2759a4e2gregames yystate = *yyssp;
4f9c22c4f27571d54197be9674e1fc0d528192aestriker goto yyerrlab1;
cadddb2c31d24d48f4017db4df0a29687432326cwrowe
117026201e6d8fe7d82416b8a7324830f5a87292wrowe
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar/*-------------------------------------------------------------.
e7505ba54ac56ae30e4e250f912f3dbaf92ca45fwrowe| yyerrlab1 -- common code for both syntax error and YYERROR. |
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar`-------------------------------------------------------------*/
4f9c22c4f27571d54197be9674e1fc0d528192aestrikeryyerrlab1:
cadddb2c31d24d48f4017db4df0a29687432326cwrowe yyerrstatus = 3; /* Each real token shifted decrements this. */
4f9c22c4f27571d54197be9674e1fc0d528192aestriker
4f9c22c4f27571d54197be9674e1fc0d528192aestriker for (;;)
cadddb2c31d24d48f4017db4df0a29687432326cwrowe {
5b3abd2fecc712f08ad728114aa77137b9f67716wrowe yyn = yypact[yystate];
85bb5b92490e4f095aae394118fc588a8f4c486fwrowe if (yyn != YYPACT_NINF)
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe {
efa1a34b0a7785fc72863eff175b0cfc1ecb0e38wrowe yyn += YYTERROR;
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
beda1fb2f11c52ca4612460a5d5ba47398143efbwrowe {
1fbf6ba0f5207e6637b49f9a9dfcc779bbe952a9trawick yyn = yytable[yyn];
e8f95a682820a599fe41b22977010636be5c2717jim if (0 < yyn)
e8f95a682820a599fe41b22977010636be5c2717jim break;
1fbf6ba0f5207e6637b49f9a9dfcc779bbe952a9trawick }
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe }
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe /* Pop the current state because it cannot handle the error token. */
290ecc1ddceca1ed49bc1a5338921264b5c3e07cwrowe if (yyssp == yyss)
c2cf53a40a9814eb91db2cdf820f97d943f21628coar YYABORT;
c2cf53a40a9814eb91db2cdf820f97d943f21628coar
2d4ea77e21ef7f3707d2c27f6117cc0a36e99b83trawick
c2cf53a40a9814eb91db2cdf820f97d943f21628coar yydestruct ("Error: popping",
117026201e6d8fe7d82416b8a7324830f5a87292wrowe yystos[yystate], yyvsp, ctx);
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar YYPOPSTACK (1);
1fbf6ba0f5207e6637b49f9a9dfcc779bbe952a9trawick yystate = *yyssp;
e8f95a682820a599fe41b22977010636be5c2717jim YY_STACK_PRINT (yyss, yyssp);
1fbf6ba0f5207e6637b49f9a9dfcc779bbe952a9trawick }
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar
2d4ea77e21ef7f3707d2c27f6117cc0a36e99b83trawick *++yyvsp = yylval;
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar
117026201e6d8fe7d82416b8a7324830f5a87292wrowe /* Shift the error token. */
117026201e6d8fe7d82416b8a7324830f5a87292wrowe YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
c2cf53a40a9814eb91db2cdf820f97d943f21628coar
117026201e6d8fe7d82416b8a7324830f5a87292wrowe yystate = yyn;
1067418d9ed9ed9daeb3ca4f74e72db810c49833wrowe goto yynewstate;
cadddb2c31d24d48f4017db4df0a29687432326cwrowe
cadddb2c31d24d48f4017db4df0a29687432326cwrowe
cadddb2c31d24d48f4017db4df0a29687432326cwrowe/*-------------------------------------.
cadddb2c31d24d48f4017db4df0a29687432326cwrowe| yyacceptlab -- YYACCEPT comes here. |
4f9c22c4f27571d54197be9674e1fc0d528192aestriker`-------------------------------------*/
c2cf53a40a9814eb91db2cdf820f97d943f21628coaryyacceptlab:
c2cf53a40a9814eb91db2cdf820f97d943f21628coar yyresult = 0;
cadddb2c31d24d48f4017db4df0a29687432326cwrowe goto yyreturn;
cadddb2c31d24d48f4017db4df0a29687432326cwrowe
cadddb2c31d24d48f4017db4df0a29687432326cwrowe/*-----------------------------------.
cadddb2c31d24d48f4017db4df0a29687432326cwrowe| yyabortlab -- YYABORT comes here. |
cadddb2c31d24d48f4017db4df0a29687432326cwrowe`-----------------------------------*/
cadddb2c31d24d48f4017db4df0a29687432326cwroweyyabortlab:
3cd826b00280881e5a2f03d8ec1f8d55802b93dewrowe yyresult = 1;
3cd826b00280881e5a2f03d8ec1f8d55802b93dewrowe goto yyreturn;
cadddb2c31d24d48f4017db4df0a29687432326cwrowe
0696197a54f186a65abacba1037f6fbe0cb975a1niq#if !defined(yyoverflow) || YYERROR_VERBOSE
3cd826b00280881e5a2f03d8ec1f8d55802b93dewrowe/*-------------------------------------------------.
0696197a54f186a65abacba1037f6fbe0cb975a1niq| yyexhaustedlab -- memory exhaustion comes here. |
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar`-------------------------------------------------*/
cadddb2c31d24d48f4017db4df0a29687432326cwroweyyexhaustedlab:
cadddb2c31d24d48f4017db4df0a29687432326cwrowe yyerror (ctx, YY_("memory exhausted"));
4f9c22c4f27571d54197be9674e1fc0d528192aestriker yyresult = 2;
3cd826b00280881e5a2f03d8ec1f8d55802b93dewrowe /* Fall through. */
3cd826b00280881e5a2f03d8ec1f8d55802b93dewrowe#endif
4f9c22c4f27571d54197be9674e1fc0d528192aestriker
4f9c22c4f27571d54197be9674e1fc0d528192aestrikeryyreturn:
3cd826b00280881e5a2f03d8ec1f8d55802b93dewrowe if (yychar != YYEMPTY)
3cd826b00280881e5a2f03d8ec1f8d55802b93dewrowe yydestruct ("Cleanup: discarding lookahead",
3cd826b00280881e5a2f03d8ec1f8d55802b93dewrowe yytoken, &yylval, ctx);
3cd826b00280881e5a2f03d8ec1f8d55802b93dewrowe /* Do not reclaim the symbols of the rule which action triggered
cadddb2c31d24d48f4017db4df0a29687432326cwrowe this YYABORT or YYACCEPT. */
c880637396a01f4acfcf7e35fe423ced2d86c3b4nd YYPOPSTACK (yylen);
c880637396a01f4acfcf7e35fe423ced2d86c3b4nd YY_STACK_PRINT (yyss, yyssp);
a8c55845ffa7170766e410dbd799353127b628f9nd while (yyssp != yyss)
c880637396a01f4acfcf7e35fe423ced2d86c3b4nd {
c880637396a01f4acfcf7e35fe423ced2d86c3b4nd yydestruct ("Cleanup: popping",
c880637396a01f4acfcf7e35fe423ced2d86c3b4nd yystos[*yyssp], yyvsp, ctx);
c880637396a01f4acfcf7e35fe423ced2d86c3b4nd YYPOPSTACK (1);
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe }
1067418d9ed9ed9daeb3ca4f74e72db810c49833wrowe#ifndef yyoverflow
1067418d9ed9ed9daeb3ca4f74e72db810c49833wrowe if (yyss != yyssa)
83a8dc5a596a8a1b9d14f063268287d123b9ed7ewrowe YYSTACK_FREE (yyss);
1067418d9ed9ed9daeb3ca4f74e72db810c49833wrowe#endif
117026201e6d8fe7d82416b8a7324830f5a87292wrowe#if YYERROR_VERBOSE
117026201e6d8fe7d82416b8a7324830f5a87292wrowe if (yymsg != yymsgbuf)
b67fb549910fa0faf4cdd8aeaf9aeab51d4b6a92wrowe YYSTACK_FREE (yymsg);
c2cf53a40a9814eb91db2cdf820f97d943f21628coar#endif
c2cf53a40a9814eb91db2cdf820f97d943f21628coar /* Make sure YYID is used. */
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb return YYID (yyresult);
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb}
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
5bb29f57ae0184d2b3c1cdf35132f8ceb011f882wrowe
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb/* Line 1675 of yacc.c */
d2220a04f870f632b8cec1e6713dbb980ed5e386wrowe#line 204 "util_expr_parse.y"
b45c1c292ff1fa635004ae81fa691f8cb3cdda85rbb
b38846b15c8891c6dec44dcc4f96ca40721bf663rbb
5bb29f57ae0184d2b3c1cdf35132f8ceb011f882wrowevoid yyerror(ap_expr_parse_ctx_t *ctx, char *s)
5bb29f57ae0184d2b3c1cdf35132f8ceb011f882wrowe{
ecc4a080f07af3fbc1b91bbd00997ec1d592c6f9wrowe /* s is allocated on the stack */
5bb29f57ae0184d2b3c1cdf35132f8ceb011f882wrowe ctx->error = apr_pstrdup(ctx->ptemp, s);
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar}
2d2dadb81bf34e3bc9321eabcd971a738431b364wrowe
731344ed8f3677d1661c261ca5fcdd2ee3dbc74ccoar
4f9c22c4f27571d54197be9674e1fc0d528192aestriker