From d3d778734d53794a46e851a16e69e81b7b65bbe8 Mon Sep 17 00:00:00 2001 From: David Rose Date: Thu, 6 May 2010 22:50:31 +0000 Subject: [PATCH] add '^' to const expressions --- dtool/src/cppparser/cppBison.cxx.prebuilt | 5935 ++++++++++++--------- dtool/src/cppparser/cppBison.h.prebuilt | 49 +- dtool/src/cppparser/cppBison.yxx | 12 + 3 files changed, 3583 insertions(+), 2413 deletions(-) diff --git a/dtool/src/cppparser/cppBison.cxx.prebuilt b/dtool/src/cppparser/cppBison.cxx.prebuilt index 38572b3074..2ba42ae3f2 100644 --- a/dtool/src/cppparser/cppBison.cxx.prebuilt +++ b/dtool/src/cppparser/cppBison.cxx.prebuilt @@ -1,30 +1,39 @@ -/* A Bison parser, made by GNU Bison 2.0. */ -/* Skeleton parser for Yacc-like parsing with Bison, - Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. +/* A Bison parser, made by GNU Bison 2.4.1. */ - This program is free software; you can redistribute it and/or modify +/* Skeleton implementation for Bison's Yacc-like parsers in C + + Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. - + You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. */ + along with this program. If not, see . */ -/* As a special exception, when this file is copied by Bison into a - Bison output file, you may use that output file without restriction. - This special exception was added by the Free Software Foundation - in version 1.24 of Bison. */ +/* As a special exception, you may create a larger work that contains + part or all of the Bison parser skeleton and distribute that work + under terms of your choice, so long as that work isn't itself a + parser generator using the skeleton or a modified version thereof + as a parser skeleton. Alternatively, if you modify or redistribute + the parser skeleton itself, you may (at your option) remove this + special exception, which will cause the skeleton and the resulting + Bison output files to be licensed under the GNU General Public + License without this special exception. + + This special exception was added by the Free Software Foundation in + version 2.2 of Bison. */ -/* Written by Richard Stallman by simplifying the original so called - ``semantic'' parser. */ +/* C LALR(1) parser skeleton written by Richard Stallman, by + simplifying the original so-called "semantic" parser. */ /* All symbols defined below should begin with yy or YY, to avoid infringing on user name space. This should be done even for local @@ -36,238 +45,37 @@ /* Identify Bison output. */ #define YYBISON 1 +/* Bison version. */ +#define YYBISON_VERSION "2.4.1" + /* Skeleton name. */ #define YYSKELETON_NAME "yacc.c" /* Pure parsers. */ #define YYPURE 1 +/* Push parsers. */ +#define YYPUSH 0 + +/* Pull parsers. */ +#define YYPULL 1 + /* Using locations. */ #define YYLSP_NEEDED 1 /* Substitute the variable and function names. */ -#define yyparse cppyyparse -#define yylex cppyylex -#define yyerror cppyyerror -#define yylval cppyylval -#define yychar cppyychar -#define yydebug cppyydebug -#define yynerrs cppyynerrs -#define yylloc cppyylloc - -/* Tokens. */ -#ifndef YYTOKENTYPE -# define YYTOKENTYPE - /* Put the tokens into the symbol table, so that GDB and other debuggers - know about them. */ - enum yytokentype { - REAL = 258, - INTEGER = 259, - CHAR_TOK = 260, - STRING = 261, - SIMPLE_IDENTIFIER = 262, - IDENTIFIER = 263, - TYPENAME_IDENTIFIER = 264, - SCOPING = 265, - TYPEDEFNAME = 266, - ELLIPSIS = 267, - OROR = 268, - ANDAND = 269, - EQCOMPARE = 270, - NECOMPARE = 271, - LECOMPARE = 272, - GECOMPARE = 273, - LSHIFT = 274, - RSHIFT = 275, - POINTSAT_STAR = 276, - DOT_STAR = 277, - UNARY = 278, - UNARY_NOT = 279, - UNARY_NEGATE = 280, - UNARY_MINUS = 281, - UNARY_STAR = 282, - UNARY_REF = 283, - POINTSAT = 284, - SCOPE = 285, - PLUSPLUS = 286, - MINUSMINUS = 287, - TIMESEQUAL = 288, - DIVIDEEQUAL = 289, - MODEQUAL = 290, - PLUSEQUAL = 291, - MINUSEQUAL = 292, - OREQUAL = 293, - ANDEQUAL = 294, - XOREQUAL = 295, - LSHIFTEQUAL = 296, - RSHIFTEQUAL = 297, - TOKENPASTE = 298, - KW_BEGIN_PUBLISH = 299, - KW_BLOCKING = 300, - KW_BOOL = 301, - KW_CATCH = 302, - KW_CHAR = 303, - KW_WCHAR_T = 304, - KW_CLASS = 305, - KW_CONST = 306, - KW_DELETE = 307, - KW_DOUBLE = 308, - KW_DYNAMIC_CAST = 309, - KW_ELSE = 310, - KW_END_PUBLISH = 311, - KW_ENUM = 312, - KW_EXTERN = 313, - KW_EXPLICIT = 314, - KW_PUBLISHED = 315, - KW_FALSE = 316, - KW_FLOAT = 317, - KW_FRIEND = 318, - KW_FOR = 319, - KW_GOTO = 320, - KW_IF = 321, - KW_INLINE = 322, - KW_INT = 323, - KW_LONG = 324, - KW_LONGLONG = 325, - KW_MAKE_SEQ = 326, - KW_MUTABLE = 327, - KW_NAMESPACE = 328, - KW_NEW = 329, - KW_OPERATOR = 330, - KW_PRIVATE = 331, - KW_PROTECTED = 332, - KW_PUBLIC = 333, - KW_REGISTER = 334, - KW_RETURN = 335, - KW_SHORT = 336, - KW_SIGNED = 337, - KW_SIZEOF = 338, - KW_STATIC = 339, - KW_STATIC_CAST = 340, - KW_STRUCT = 341, - KW_TEMPLATE = 342, - KW_THROW = 343, - KW_TRUE = 344, - KW_TRY = 345, - KW_TYPEDEF = 346, - KW_TYPENAME = 347, - KW_UNION = 348, - KW_UNSIGNED = 349, - KW_USING = 350, - KW_VIRTUAL = 351, - KW_VOID = 352, - KW_VOLATILE = 353, - KW_WHILE = 354, - START_CPP = 355, - START_CONST_EXPR = 356, - START_TYPE = 357 - }; -#endif -#define REAL 258 -#define INTEGER 259 -#define CHAR_TOK 260 -#define STRING 261 -#define SIMPLE_IDENTIFIER 262 -#define IDENTIFIER 263 -#define TYPENAME_IDENTIFIER 264 -#define SCOPING 265 -#define TYPEDEFNAME 266 -#define ELLIPSIS 267 -#define OROR 268 -#define ANDAND 269 -#define EQCOMPARE 270 -#define NECOMPARE 271 -#define LECOMPARE 272 -#define GECOMPARE 273 -#define LSHIFT 274 -#define RSHIFT 275 -#define POINTSAT_STAR 276 -#define DOT_STAR 277 -#define UNARY 278 -#define UNARY_NOT 279 -#define UNARY_NEGATE 280 -#define UNARY_MINUS 281 -#define UNARY_STAR 282 -#define UNARY_REF 283 -#define POINTSAT 284 -#define SCOPE 285 -#define PLUSPLUS 286 -#define MINUSMINUS 287 -#define TIMESEQUAL 288 -#define DIVIDEEQUAL 289 -#define MODEQUAL 290 -#define PLUSEQUAL 291 -#define MINUSEQUAL 292 -#define OREQUAL 293 -#define ANDEQUAL 294 -#define XOREQUAL 295 -#define LSHIFTEQUAL 296 -#define RSHIFTEQUAL 297 -#define TOKENPASTE 298 -#define KW_BEGIN_PUBLISH 299 -#define KW_BLOCKING 300 -#define KW_BOOL 301 -#define KW_CATCH 302 -#define KW_CHAR 303 -#define KW_WCHAR_T 304 -#define KW_CLASS 305 -#define KW_CONST 306 -#define KW_DELETE 307 -#define KW_DOUBLE 308 -#define KW_DYNAMIC_CAST 309 -#define KW_ELSE 310 -#define KW_END_PUBLISH 311 -#define KW_ENUM 312 -#define KW_EXTERN 313 -#define KW_EXPLICIT 314 -#define KW_PUBLISHED 315 -#define KW_FALSE 316 -#define KW_FLOAT 317 -#define KW_FRIEND 318 -#define KW_FOR 319 -#define KW_GOTO 320 -#define KW_IF 321 -#define KW_INLINE 322 -#define KW_INT 323 -#define KW_LONG 324 -#define KW_LONGLONG 325 -#define KW_MAKE_SEQ 326 -#define KW_MUTABLE 327 -#define KW_NAMESPACE 328 -#define KW_NEW 329 -#define KW_OPERATOR 330 -#define KW_PRIVATE 331 -#define KW_PROTECTED 332 -#define KW_PUBLIC 333 -#define KW_REGISTER 334 -#define KW_RETURN 335 -#define KW_SHORT 336 -#define KW_SIGNED 337 -#define KW_SIZEOF 338 -#define KW_STATIC 339 -#define KW_STATIC_CAST 340 -#define KW_STRUCT 341 -#define KW_TEMPLATE 342 -#define KW_THROW 343 -#define KW_TRUE 344 -#define KW_TRY 345 -#define KW_TYPEDEF 346 -#define KW_TYPENAME 347 -#define KW_UNION 348 -#define KW_UNSIGNED 349 -#define KW_USING 350 -#define KW_VIRTUAL 351 -#define KW_VOID 352 -#define KW_VOLATILE 353 -#define KW_WHILE 354 -#define START_CPP 355 -#define START_CONST_EXPR 356 -#define START_TYPE 357 - - - +#define yyparse cppyyparse +#define yylex cppyylex +#define yyerror cppyyerror +#define yylval cppyylval +#define yychar cppyychar +#define yydebug cppyydebug +#define yynerrs cppyynerrs +#define yylloc cppyylloc /* Copy the first part of user declarations. */ + +/* Line 189 of yacc.c */ #line 6 "cppBison.yxx" @@ -457,6 +265,9 @@ pop_struct() { +/* Line 189 of yacc.c */ +#line 270 "y.tab.c" + /* Enabling traces. */ #ifndef YYDEBUG # define YYDEBUG 0 @@ -470,14 +281,232 @@ pop_struct() { # define YYERROR_VERBOSE 0 #endif -#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED) -typedef int YYSTYPE; -# define yystype YYSTYPE /* obsolescent; will be withdrawn */ -# define YYSTYPE_IS_DECLARED 1 -# define YYSTYPE_IS_TRIVIAL 1 +/* Enabling the token table. */ +#ifndef YYTOKEN_TABLE +# define YYTOKEN_TABLE 0 #endif -#if ! defined (YYLTYPE) && ! defined (YYLTYPE_IS_DECLARED) + +/* Tokens. */ +#ifndef YYTOKENTYPE +# define YYTOKENTYPE + /* Put the tokens into the symbol table, so that GDB and other debuggers + know about them. */ + enum yytokentype { + REAL = 258, + INTEGER = 259, + CHAR_TOK = 260, + STRING = 261, + SIMPLE_IDENTIFIER = 262, + IDENTIFIER = 263, + TYPENAME_IDENTIFIER = 264, + SCOPING = 265, + TYPEDEFNAME = 266, + ELLIPSIS = 267, + OROR = 268, + ANDAND = 269, + EQCOMPARE = 270, + NECOMPARE = 271, + LECOMPARE = 272, + GECOMPARE = 273, + LSHIFT = 274, + RSHIFT = 275, + POINTSAT_STAR = 276, + DOT_STAR = 277, + UNARY = 278, + UNARY_NOT = 279, + UNARY_NEGATE = 280, + UNARY_MINUS = 281, + UNARY_STAR = 282, + UNARY_REF = 283, + POINTSAT = 284, + SCOPE = 285, + PLUSPLUS = 286, + MINUSMINUS = 287, + TIMESEQUAL = 288, + DIVIDEEQUAL = 289, + MODEQUAL = 290, + PLUSEQUAL = 291, + MINUSEQUAL = 292, + OREQUAL = 293, + ANDEQUAL = 294, + XOREQUAL = 295, + LSHIFTEQUAL = 296, + RSHIFTEQUAL = 297, + TOKENPASTE = 298, + KW_BEGIN_PUBLISH = 299, + KW_BLOCKING = 300, + KW_BOOL = 301, + KW_CATCH = 302, + KW_CHAR = 303, + KW_WCHAR_T = 304, + KW_CLASS = 305, + KW_CONST = 306, + KW_DELETE = 307, + KW_DOUBLE = 308, + KW_DYNAMIC_CAST = 309, + KW_ELSE = 310, + KW_END_PUBLISH = 311, + KW_ENUM = 312, + KW_EXTERN = 313, + KW_EXPLICIT = 314, + KW_PUBLISHED = 315, + KW_FALSE = 316, + KW_FLOAT = 317, + KW_FRIEND = 318, + KW_FOR = 319, + KW_GOTO = 320, + KW_IF = 321, + KW_INLINE = 322, + KW_INT = 323, + KW_LONG = 324, + KW_LONGLONG = 325, + KW_MAKE_SEQ = 326, + KW_MUTABLE = 327, + KW_NAMESPACE = 328, + KW_NEW = 329, + KW_OPERATOR = 330, + KW_PRIVATE = 331, + KW_PROTECTED = 332, + KW_PUBLIC = 333, + KW_REGISTER = 334, + KW_RETURN = 335, + KW_SHORT = 336, + KW_SIGNED = 337, + KW_SIZEOF = 338, + KW_STATIC = 339, + KW_STATIC_CAST = 340, + KW_STRUCT = 341, + KW_TEMPLATE = 342, + KW_THROW = 343, + KW_TRUE = 344, + KW_TRY = 345, + KW_TYPEDEF = 346, + KW_TYPENAME = 347, + KW_UNION = 348, + KW_UNSIGNED = 349, + KW_USING = 350, + KW_VIRTUAL = 351, + KW_VOID = 352, + KW_VOLATILE = 353, + KW_WHILE = 354, + START_CPP = 355, + START_CONST_EXPR = 356, + START_TYPE = 357 + }; +#endif +/* Tokens. */ +#define REAL 258 +#define INTEGER 259 +#define CHAR_TOK 260 +#define STRING 261 +#define SIMPLE_IDENTIFIER 262 +#define IDENTIFIER 263 +#define TYPENAME_IDENTIFIER 264 +#define SCOPING 265 +#define TYPEDEFNAME 266 +#define ELLIPSIS 267 +#define OROR 268 +#define ANDAND 269 +#define EQCOMPARE 270 +#define NECOMPARE 271 +#define LECOMPARE 272 +#define GECOMPARE 273 +#define LSHIFT 274 +#define RSHIFT 275 +#define POINTSAT_STAR 276 +#define DOT_STAR 277 +#define UNARY 278 +#define UNARY_NOT 279 +#define UNARY_NEGATE 280 +#define UNARY_MINUS 281 +#define UNARY_STAR 282 +#define UNARY_REF 283 +#define POINTSAT 284 +#define SCOPE 285 +#define PLUSPLUS 286 +#define MINUSMINUS 287 +#define TIMESEQUAL 288 +#define DIVIDEEQUAL 289 +#define MODEQUAL 290 +#define PLUSEQUAL 291 +#define MINUSEQUAL 292 +#define OREQUAL 293 +#define ANDEQUAL 294 +#define XOREQUAL 295 +#define LSHIFTEQUAL 296 +#define RSHIFTEQUAL 297 +#define TOKENPASTE 298 +#define KW_BEGIN_PUBLISH 299 +#define KW_BLOCKING 300 +#define KW_BOOL 301 +#define KW_CATCH 302 +#define KW_CHAR 303 +#define KW_WCHAR_T 304 +#define KW_CLASS 305 +#define KW_CONST 306 +#define KW_DELETE 307 +#define KW_DOUBLE 308 +#define KW_DYNAMIC_CAST 309 +#define KW_ELSE 310 +#define KW_END_PUBLISH 311 +#define KW_ENUM 312 +#define KW_EXTERN 313 +#define KW_EXPLICIT 314 +#define KW_PUBLISHED 315 +#define KW_FALSE 316 +#define KW_FLOAT 317 +#define KW_FRIEND 318 +#define KW_FOR 319 +#define KW_GOTO 320 +#define KW_IF 321 +#define KW_INLINE 322 +#define KW_INT 323 +#define KW_LONG 324 +#define KW_LONGLONG 325 +#define KW_MAKE_SEQ 326 +#define KW_MUTABLE 327 +#define KW_NAMESPACE 328 +#define KW_NEW 329 +#define KW_OPERATOR 330 +#define KW_PRIVATE 331 +#define KW_PROTECTED 332 +#define KW_PUBLIC 333 +#define KW_REGISTER 334 +#define KW_RETURN 335 +#define KW_SHORT 336 +#define KW_SIGNED 337 +#define KW_SIZEOF 338 +#define KW_STATIC 339 +#define KW_STATIC_CAST 340 +#define KW_STRUCT 341 +#define KW_TEMPLATE 342 +#define KW_THROW 343 +#define KW_TRUE 344 +#define KW_TRY 345 +#define KW_TYPEDEF 346 +#define KW_TYPENAME 347 +#define KW_UNION 348 +#define KW_UNSIGNED 349 +#define KW_USING 350 +#define KW_VIRTUAL 351 +#define KW_VOID 352 +#define KW_VOLATILE 353 +#define KW_WHILE 354 +#define START_CPP 355 +#define START_CONST_EXPR 356 +#define START_TYPE 357 + + + + +#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED + +# define yystype YYSTYPE /* obsolescent; will be withdrawn */ +# define YYSTYPE_IS_DECLARED 1 +#endif + +#if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED typedef struct YYLTYPE { int first_line; @@ -494,17 +523,94 @@ typedef struct YYLTYPE /* Copy the second part of user declarations. */ -/* Line 213 of yacc.c. */ -#line 499 "y.tab.c" +/* Line 264 of yacc.c */ +#line 528 "y.tab.c" -#if ! defined (yyoverflow) || YYERROR_VERBOSE +#ifdef short +# undef short +#endif -# ifndef YYFREE -# define YYFREE free +#ifdef YYTYPE_UINT8 +typedef YYTYPE_UINT8 yytype_uint8; +#else +typedef unsigned char yytype_uint8; +#endif + +#ifdef YYTYPE_INT8 +typedef YYTYPE_INT8 yytype_int8; +#elif (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +typedef signed char yytype_int8; +#else +typedef short int yytype_int8; +#endif + +#ifdef YYTYPE_UINT16 +typedef YYTYPE_UINT16 yytype_uint16; +#else +typedef unsigned short int yytype_uint16; +#endif + +#ifdef YYTYPE_INT16 +typedef YYTYPE_INT16 yytype_int16; +#else +typedef short int yytype_int16; +#endif + +#ifndef YYSIZE_T +# ifdef __SIZE_TYPE__ +# define YYSIZE_T __SIZE_TYPE__ +# elif defined size_t +# define YYSIZE_T size_t +# elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +# include /* INFRINGES ON USER NAME SPACE */ +# define YYSIZE_T size_t +# else +# define YYSIZE_T unsigned int # endif -# ifndef YYMALLOC -# define YYMALLOC malloc +#endif + +#define YYSIZE_MAXIMUM ((YYSIZE_T) -1) + +#ifndef YY_ +# if YYENABLE_NLS +# if ENABLE_NLS +# include /* INFRINGES ON USER NAME SPACE */ +# define YY_(msgid) dgettext ("bison-runtime", msgid) +# endif # endif +# ifndef YY_ +# define YY_(msgid) msgid +# endif +#endif + +/* Suppress unused-variable warnings by "using" E. */ +#if ! defined lint || defined __GNUC__ +# define YYUSE(e) ((void) (e)) +#else +# define YYUSE(e) /* empty */ +#endif + +/* Identity function, used to suppress warnings about constant conditions. */ +#ifndef lint +# define YYID(n) (n) +#else +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +static int +YYID (int yyi) +#else +static int +YYID (yyi) + int yyi; +#endif +{ + return yyi; +} +#endif + +#if ! defined yyoverflow || YYERROR_VERBOSE /* The parser invokes alloca or malloc; define the necessary symbols. */ @@ -512,37 +618,79 @@ typedef struct YYLTYPE # if YYSTACK_USE_ALLOCA # ifdef __GNUC__ # define YYSTACK_ALLOC __builtin_alloca +# elif defined __BUILTIN_VA_ARG_INCR +# include /* INFRINGES ON USER NAME SPACE */ +# elif defined _AIX +# define YYSTACK_ALLOC __alloca +# elif defined _MSC_VER +# include /* INFRINGES ON USER NAME SPACE */ +# define alloca _alloca # else # define YYSTACK_ALLOC alloca +# if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +# include /* INFRINGES ON USER NAME SPACE */ +# ifndef _STDLIB_H +# define _STDLIB_H 1 +# endif +# endif # endif # endif # endif # ifdef YYSTACK_ALLOC - /* Pacify GCC's `empty if-body' warning. */ -# define YYSTACK_FREE(Ptr) do { /* empty */; } while (0) -# else -# if defined (__STDC__) || defined (__cplusplus) -# include /* INFRINGES ON USER NAME SPACE */ -# define YYSIZE_T size_t + /* Pacify GCC's `empty if-body' warning. */ +# define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0)) +# ifndef YYSTACK_ALLOC_MAXIMUM + /* The OS might guarantee only one guard page at the bottom of the stack, + and a page size can be as small as 4096 bytes. So we cannot safely + invoke alloca (N) if N exceeds 4096. Use a slightly smaller number + to allow for a few compiler-allocated temporary stack slots. */ +# define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */ # endif +# else # define YYSTACK_ALLOC YYMALLOC # define YYSTACK_FREE YYFREE +# ifndef YYSTACK_ALLOC_MAXIMUM +# define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM +# endif +# if (defined __cplusplus && ! defined _STDLIB_H \ + && ! ((defined YYMALLOC || defined malloc) \ + && (defined YYFREE || defined free))) +# include /* INFRINGES ON USER NAME SPACE */ +# ifndef _STDLIB_H +# define _STDLIB_H 1 +# endif +# endif +# ifndef YYMALLOC +# define YYMALLOC malloc +# if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */ +# endif +# endif +# ifndef YYFREE +# define YYFREE free +# if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +void free (void *); /* INFRINGES ON USER NAME SPACE */ +# endif +# endif # endif -#endif /* ! defined (yyoverflow) || YYERROR_VERBOSE */ +#endif /* ! defined yyoverflow || YYERROR_VERBOSE */ -#if (! defined (yyoverflow) \ - && (! defined (__cplusplus) \ - || (defined (YYLTYPE_IS_TRIVIAL) && YYLTYPE_IS_TRIVIAL \ - && defined (YYSTYPE_IS_TRIVIAL) && YYSTYPE_IS_TRIVIAL))) +#if (! defined yyoverflow \ + && (! defined __cplusplus \ + || (defined YYLTYPE_IS_TRIVIAL && YYLTYPE_IS_TRIVIAL \ + && defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL))) /* A type that is properly aligned for any stack member. */ union yyalloc { - short int yyss; - YYSTYPE yyvs; - YYLTYPE yyls; + yytype_int16 yyss_alloc; + YYSTYPE yyvs_alloc; + YYLTYPE yyls_alloc; }; /* The size of the maximum gap between one aligned stack and the next. */ @@ -551,24 +699,24 @@ union yyalloc /* The size of an array large to enough to hold all stacks, each with N elements. */ # define YYSTACK_BYTES(N) \ - ((N) * (sizeof (short int) + sizeof (YYSTYPE) + sizeof (YYLTYPE)) \ + ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE) + sizeof (YYLTYPE)) \ + 2 * YYSTACK_GAP_MAXIMUM) /* Copy COUNT objects from FROM to TO. The source and destination do not overlap. */ # ifndef YYCOPY -# if defined (__GNUC__) && 1 < __GNUC__ +# if defined __GNUC__ && 1 < __GNUC__ # define YYCOPY(To, From, Count) \ __builtin_memcpy (To, From, (Count) * sizeof (*(From))) # else # define YYCOPY(To, From, Count) \ do \ { \ - register YYSIZE_T yyi; \ + YYSIZE_T yyi; \ for (yyi = 0; yyi < (Count); yyi++) \ (To)[yyi] = (From)[yyi]; \ } \ - while (0) + while (YYID (0)) # endif # endif @@ -577,48 +725,42 @@ union yyalloc elements in the stack, and YYPTR gives the new location of the stack. Advance YYPTR to a properly aligned location for the next stack. */ -# define YYSTACK_RELOCATE(Stack) \ +# define YYSTACK_RELOCATE(Stack_alloc, Stack) \ do \ { \ YYSIZE_T yynewbytes; \ - YYCOPY (&yyptr->Stack, Stack, yysize); \ - Stack = &yyptr->Stack; \ + YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \ + Stack = &yyptr->Stack_alloc; \ yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ yyptr += yynewbytes / sizeof (*yyptr); \ } \ - while (0) + while (YYID (0)) #endif -#if defined (__STDC__) || defined (__cplusplus) - typedef signed char yysigned_char; -#else - typedef short int yysigned_char; -#endif - -/* YYFINAL -- State number of the termination state. */ +/* YYFINAL -- State number of the termination state. */ #define YYFINAL 69 /* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 3407 +#define YYLAST 3509 -/* YYNTOKENS -- Number of terminals. */ +/* YYNTOKENS -- Number of terminals. */ #define YYNTOKENS 127 -/* YYNNTS -- Number of nonterminals. */ +/* YYNNTS -- Number of nonterminals. */ #define YYNNTS 94 -/* YYNRULES -- Number of rules. */ -#define YYNRULES 530 -/* YYNRULES -- Number of states. */ -#define YYNSTATES 951 +/* YYNRULES -- Number of rules. */ +#define YYNRULES 533 +/* YYNRULES -- Number of states. */ +#define YYNSTATES 957 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ #define YYUNDEFTOK 2 #define YYMAXUTOK 357 -#define YYTRANSLATE(YYX) \ +#define YYTRANSLATE(YYX) \ ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */ -static const unsigned char yytranslate[] = +static const yytype_uint8 yytranslate[] = { 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, @@ -661,7 +803,7 @@ static const unsigned char yytranslate[] = #if YYDEBUG /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in YYRHS. */ -static const unsigned short int yyprhs[] = +static const yytype_uint16 yyprhs[] = { 0, 0, 3, 6, 9, 12, 14, 17, 20, 22, 26, 31, 32, 38, 40, 42, 44, 46, 48, 50, @@ -705,22 +847,22 @@ static const unsigned short int yyprhs[] = 1081, 1083, 1085, 1087, 1089, 1091, 1095, 1097, 1102, 1110, 1118, 1123, 1126, 1129, 1132, 1135, 1138, 1142, 1146, 1150, 1154, 1158, 1162, 1166, 1170, 1174, 1178, 1182, 1186, 1190, - 1194, 1198, 1204, 1209, 1214, 1218, 1222, 1226, 1230, 1232, - 1237, 1245, 1253, 1258, 1263, 1268, 1273, 1278, 1283, 1288, - 1293, 1298, 1303, 1308, 1313, 1316, 1322, 1325, 1328, 1331, - 1334, 1337, 1341, 1345, 1349, 1353, 1357, 1361, 1365, 1369, - 1373, 1377, 1381, 1385, 1389, 1393, 1397, 1401, 1405, 1411, - 1416, 1421, 1425, 1429, 1433, 1437, 1439, 1441, 1443, 1445, - 1447, 1449, 1451, 1453, 1458, 1466, 1474, 1479, 1482, 1488, - 1491, 1494, 1497, 1500, 1504, 1508, 1512, 1516, 1520, 1524, + 1194, 1198, 1202, 1208, 1213, 1218, 1222, 1226, 1230, 1234, + 1236, 1241, 1249, 1257, 1262, 1267, 1272, 1277, 1282, 1287, + 1292, 1297, 1302, 1307, 1312, 1317, 1320, 1326, 1329, 1332, + 1335, 1338, 1341, 1345, 1349, 1353, 1357, 1361, 1365, 1369, + 1373, 1377, 1381, 1385, 1389, 1393, 1397, 1401, 1405, 1409, + 1413, 1419, 1424, 1429, 1433, 1437, 1441, 1445, 1447, 1449, + 1451, 1453, 1455, 1457, 1459, 1461, 1466, 1474, 1482, 1487, + 1490, 1496, 1499, 1502, 1505, 1508, 1512, 1516, 1520, 1524, 1528, 1532, 1536, 1540, 1544, 1548, 1552, 1556, 1560, 1564, - 1568, 1574, 1579, 1584, 1588, 1592, 1596, 1600, 1602, 1604, - 1606, 1608, 1610, 1612, 1614, 1617, 1620, 1622, 1624, 1626, - 1629 + 1568, 1572, 1576, 1580, 1586, 1591, 1596, 1600, 1604, 1608, + 1612, 1614, 1616, 1618, 1620, 1622, 1624, 1626, 1629, 1632, + 1634, 1636, 1638, 1641 }; -/* YYRHS -- A `-1'-separated list of the rules' RHS. */ -static const short int yyrhs[] = +/* YYRHS -- A `-1'-separated list of the rules' RHS. */ +static const yytype_int16 yyrhs[] = { 128, 0, -1, 100, 129, -1, 101, 213, -1, 102, 182, -1, 220, -1, 129, 105, -1, 129, 134, -1, @@ -838,57 +980,59 @@ static const short int yyrhs[] = 212, -1, 116, 212, -1, 111, 212, -1, 212, 116, 212, -1, 212, 117, 212, -1, 212, 118, 212, -1, 212, 114, 212, -1, 212, 115, 212, -1, 212, 109, - 212, -1, 212, 111, 212, -1, 212, 13, 212, -1, - 212, 14, 212, -1, 212, 15, 212, -1, 212, 16, - 212, -1, 212, 17, 212, -1, 212, 18, 212, -1, - 212, 19, 212, -1, 212, 20, 212, -1, 212, 108, - 212, 106, 212, -1, 212, 122, 213, 126, -1, 212, - 121, 211, 123, -1, 212, 121, 123, -1, 212, 120, - 212, -1, 212, 29, 212, -1, 121, 211, 123, -1, - 214, -1, 121, 182, 123, 213, -1, 85, 112, 182, - 113, 121, 211, 123, -1, 54, 112, 182, 113, 121, - 211, 123, -1, 9, 121, 210, 123, -1, 68, 121, - 210, 123, -1, 48, 121, 210, 123, -1, 49, 121, - 210, 123, -1, 46, 121, 210, 123, -1, 81, 121, - 210, 123, -1, 69, 121, 210, 123, -1, 94, 121, - 210, 123, -1, 82, 121, 210, 123, -1, 62, 121, - 210, 123, -1, 53, 121, 210, 123, -1, 83, 121, - 182, 123, -1, 74, 181, -1, 74, 181, 121, 210, - 123, -1, 125, 213, -1, 119, 213, -1, 115, 213, - -1, 116, 213, -1, 111, 213, -1, 213, 116, 213, - -1, 213, 117, 213, -1, 213, 118, 213, -1, 213, - 114, 213, -1, 213, 115, 213, -1, 213, 109, 213, - -1, 213, 111, 213, -1, 213, 13, 213, -1, 213, - 14, 213, -1, 213, 15, 213, -1, 213, 16, 213, - -1, 213, 17, 213, -1, 213, 18, 213, -1, 213, - 112, 213, -1, 213, 113, 213, -1, 213, 19, 213, - -1, 213, 20, 213, -1, 213, 108, 213, 106, 213, - -1, 213, 122, 213, 126, -1, 213, 121, 211, 123, - -1, 213, 121, 123, -1, 213, 120, 213, -1, 213, - 29, 213, -1, 121, 211, 123, -1, 4, -1, 89, - -1, 61, -1, 5, -1, 3, -1, 219, -1, 8, - -1, 216, -1, 121, 182, 123, 213, -1, 85, 112, - 182, 113, 121, 211, 123, -1, 54, 112, 182, 113, - 121, 211, 123, -1, 83, 121, 182, 123, -1, 74, - 181, -1, 74, 181, 121, 210, 123, -1, 125, 213, - -1, 119, 213, -1, 115, 213, -1, 111, 213, -1, - 215, 116, 213, -1, 215, 117, 213, -1, 215, 118, - 213, -1, 215, 114, 213, -1, 215, 115, 213, -1, - 215, 109, 213, -1, 215, 111, 213, -1, 215, 13, - 213, -1, 215, 14, 213, -1, 215, 15, 213, -1, - 215, 16, 213, -1, 215, 17, 213, -1, 215, 18, - 213, -1, 215, 112, 213, -1, 215, 113, 213, -1, - 215, 19, 213, -1, 215, 20, 213, -1, 215, 108, - 213, 106, 213, -1, 215, 122, 213, 126, -1, 215, - 121, 211, 123, -1, 215, 121, 123, -1, 215, 120, - 213, -1, 215, 29, 213, -1, 121, 211, 123, -1, - 4, -1, 89, -1, 61, -1, 5, -1, 3, -1, - 219, -1, 218, -1, 197, 218, -1, 92, 218, -1, - 8, -1, 9, -1, 6, -1, 219, 6, -1, -1 + 212, -1, 212, 110, 212, -1, 212, 111, 212, -1, + 212, 13, 212, -1, 212, 14, 212, -1, 212, 15, + 212, -1, 212, 16, 212, -1, 212, 17, 212, -1, + 212, 18, 212, -1, 212, 19, 212, -1, 212, 20, + 212, -1, 212, 108, 212, 106, 212, -1, 212, 122, + 213, 126, -1, 212, 121, 211, 123, -1, 212, 121, + 123, -1, 212, 120, 212, -1, 212, 29, 212, -1, + 121, 211, 123, -1, 214, -1, 121, 182, 123, 213, + -1, 85, 112, 182, 113, 121, 211, 123, -1, 54, + 112, 182, 113, 121, 211, 123, -1, 9, 121, 210, + 123, -1, 68, 121, 210, 123, -1, 48, 121, 210, + 123, -1, 49, 121, 210, 123, -1, 46, 121, 210, + 123, -1, 81, 121, 210, 123, -1, 69, 121, 210, + 123, -1, 94, 121, 210, 123, -1, 82, 121, 210, + 123, -1, 62, 121, 210, 123, -1, 53, 121, 210, + 123, -1, 83, 121, 182, 123, -1, 74, 181, -1, + 74, 181, 121, 210, 123, -1, 125, 213, -1, 119, + 213, -1, 115, 213, -1, 116, 213, -1, 111, 213, + -1, 213, 116, 213, -1, 213, 117, 213, -1, 213, + 118, 213, -1, 213, 114, 213, -1, 213, 115, 213, + -1, 213, 109, 213, -1, 213, 110, 213, -1, 213, + 111, 213, -1, 213, 13, 213, -1, 213, 14, 213, + -1, 213, 15, 213, -1, 213, 16, 213, -1, 213, + 17, 213, -1, 213, 18, 213, -1, 213, 112, 213, + -1, 213, 113, 213, -1, 213, 19, 213, -1, 213, + 20, 213, -1, 213, 108, 213, 106, 213, -1, 213, + 122, 213, 126, -1, 213, 121, 211, 123, -1, 213, + 121, 123, -1, 213, 120, 213, -1, 213, 29, 213, + -1, 121, 211, 123, -1, 4, -1, 89, -1, 61, + -1, 5, -1, 3, -1, 219, -1, 8, -1, 216, + -1, 121, 182, 123, 213, -1, 85, 112, 182, 113, + 121, 211, 123, -1, 54, 112, 182, 113, 121, 211, + 123, -1, 83, 121, 182, 123, -1, 74, 181, -1, + 74, 181, 121, 210, 123, -1, 125, 213, -1, 119, + 213, -1, 115, 213, -1, 111, 213, -1, 215, 116, + 213, -1, 215, 117, 213, -1, 215, 118, 213, -1, + 215, 114, 213, -1, 215, 115, 213, -1, 215, 109, + 213, -1, 215, 110, 213, -1, 215, 111, 213, -1, + 215, 13, 213, -1, 215, 14, 213, -1, 215, 15, + 213, -1, 215, 16, 213, -1, 215, 17, 213, -1, + 215, 18, 213, -1, 215, 112, 213, -1, 215, 113, + 213, -1, 215, 19, 213, -1, 215, 20, 213, -1, + 215, 108, 213, 106, 213, -1, 215, 122, 213, 126, + -1, 215, 121, 211, 123, -1, 215, 121, 123, -1, + 215, 120, 213, -1, 215, 29, 213, -1, 121, 211, + 123, -1, 4, -1, 89, -1, 61, -1, 5, -1, + 3, -1, 219, -1, 218, -1, 197, 218, -1, 92, + 218, -1, 8, -1, 9, -1, 6, -1, 219, 6, + -1, -1 }; /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ -static const unsigned short int yyrline[] = +static const yytype_uint16 yyrline[] = { 0, 381, 381, 382, 386, 393, 394, 395, 399, 400, 404, 417, 416, 428, 429, 430, 431, 432, 433, 434, @@ -932,24 +1076,24 @@ static const unsigned short int yyrline[] = 2090, 2094, 2101, 2105, 2112, 2116, 2123, 2127, 2131, 2135, 2139, 2143, 2147, 2151, 2163, 2167, 2171, 2175, 2179, 2183, 2187, 2191, 2195, 2199, 2203, 2207, 2211, 2215, 2219, 2223, - 2227, 2231, 2235, 2239, 2243, 2247, 2251, 2255, 2263, 2267, - 2271, 2275, 2279, 2286, 2292, 2298, 2304, 2310, 2317, 2324, - 2331, 2338, 2344, 2350, 2354, 2358, 2362, 2366, 2370, 2382, + 2227, 2231, 2235, 2239, 2243, 2247, 2251, 2255, 2259, 2267, + 2271, 2275, 2279, 2283, 2290, 2296, 2302, 2308, 2314, 2321, + 2328, 2335, 2342, 2348, 2354, 2358, 2362, 2366, 2370, 2374, 2386, 2390, 2394, 2398, 2402, 2406, 2410, 2414, 2418, 2422, 2426, 2430, 2434, 2438, 2442, 2446, 2450, 2454, 2458, 2462, - 2466, 2470, 2474, 2478, 2482, 2489, 2493, 2497, 2501, 2505, - 2509, 2513, 2527, 2531, 2535, 2539, 2543, 2547, 2551, 2555, - 2559, 2563, 2575, 2579, 2583, 2587, 2591, 2595, 2599, 2603, + 2466, 2470, 2474, 2478, 2482, 2486, 2490, 2497, 2501, 2505, + 2509, 2513, 2517, 2521, 2535, 2539, 2543, 2547, 2551, 2555, + 2559, 2563, 2567, 2571, 2583, 2587, 2591, 2595, 2599, 2603, 2607, 2611, 2615, 2619, 2623, 2627, 2631, 2635, 2639, 2643, - 2647, 2651, 2655, 2659, 2663, 2667, 2671, 2678, 2682, 2686, - 2690, 2694, 2698, 2705, 2713, 2721, 2744, 2748, 2755, 2759, - 2765 + 2647, 2651, 2655, 2659, 2663, 2667, 2671, 2675, 2679, 2683, + 2690, 2694, 2698, 2702, 2706, 2710, 2717, 2725, 2733, 2756, + 2760, 2767, 2771, 2777 }; #endif -#if YYDEBUG || YYERROR_VERBOSE -/* YYTNME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. - First, the terminals, then, starting at YYNTOKENS, nonterminals. */ +#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE +/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. + First, the terminals, then, starting at YYNTOKENS, nonterminals. */ static const char *const yytname[] = { "$end", "error", "$undefined", "REAL", "INTEGER", "CHAR_TOK", "STRING", @@ -975,29 +1119,30 @@ static const char *const yytname[] = "';'", "':'", "'='", "'?'", "'|'", "'^'", "'&'", "'<'", "'>'", "'+'", "'-'", "'*'", "'/'", "'%'", "'~'", "'.'", "'('", "'['", "')'", "'}'", "'!'", "']'", "$accept", "grammar", "cpp", "constructor_inits", - "constructor_init", "extern_c", "@1", "declaration", - "friend_declaration", "@2", "storage_class", "type_like_declaration", - "multiple_var_declaration", "@3", "@4", "multiple_instance_identifiers", - "multiple_const_instance_identifiers", "typedef_declaration", "@5", "@6", - "typedef_instance_identifiers", "typedef_const_instance_identifiers", - "function_prototype", "@7", "@8", "@9", "@10", "@11", "@12", "@13", - "function_post", "function_operator", "more_template_declaration", - "template_declaration", "@14", "template_formal_parameters", + "constructor_init", "extern_c", "$@1", "declaration", + "friend_declaration", "$@2", "storage_class", "type_like_declaration", + "multiple_var_declaration", "$@3", "$@4", + "multiple_instance_identifiers", "multiple_const_instance_identifiers", + "typedef_declaration", "$@5", "$@6", "typedef_instance_identifiers", + "typedef_const_instance_identifiers", "function_prototype", "$@7", "$@8", + "$@9", "$@10", "$@11", "$@12", "$@13", "function_post", + "function_operator", "more_template_declaration", "template_declaration", + "$@14", "template_formal_parameters", "template_nonempty_formal_parameters", "template_formal_parameter", - "template_formal_parameter_type", "instance_identifier", "@15", + "template_formal_parameter_type", "instance_identifier", "$@15", "formal_parameter_list", "formal_parameters", "template_parameter_maybe_initialize", "maybe_initialize", "maybe_initialize_or_function_body", "structure_init", "structure_init_body", "formal_parameter", "not_paren_formal_parameter_identifier", "formal_parameter_identifier", "empty_instance_identifier", "type", "type_decl", "predefined_type", - "full_type", "anonymous_struct", "@16", "named_struct", "@17", + "full_type", "anonymous_struct", "$@16", "named_struct", "$@17", "maybe_class_derivation", "class_derivation", "base_specification", - "anonymous_enum", "@18", "named_enum", "@19", "enum_body", + "anonymous_enum", "$@18", "named_enum", "$@19", "enum_body", "enum_body_no_trailing_comma", "enum_keyword", "struct_keyword", - "namespace_declaration", "@20", "using_declaration", "simple_type", + "namespace_declaration", "$@20", "using_declaration", "simple_type", "simple_int_type", "simple_float_type", "simple_void_type", "code", - "@21", "code_block", "element", "optional_const_expr", + "$@21", "code_block", "element", "optional_const_expr", "optional_const_expr_comma", "const_expr_comma", "no_angle_bracket_const_expr", "const_expr", "const_operand", "formal_const_expr", "formal_const_operand", "class_derivation_name", @@ -1008,7 +1153,7 @@ static const char *const yytname[] = # ifdef YYPRINT /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to token YYLEX-NUM. */ -static const unsigned short int yytoknum[] = +static const yytype_uint16 yytoknum[] = { 0, 256, 257, 258, 259, 260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272, 273, 274, @@ -1027,7 +1172,7 @@ static const unsigned short int yytoknum[] = # endif /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ -static const unsigned char yyr1[] = +static const yytype_uint8 yyr1[] = { 0, 127, 128, 128, 128, 129, 129, 129, 130, 130, 131, 133, 132, 134, 134, 134, 134, 134, 134, 134, @@ -1071,22 +1216,22 @@ static const unsigned char yyr1[] = 209, 209, 210, 210, 211, 211, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, - 212, 212, 212, 212, 212, 212, 212, 212, 213, 213, + 212, 212, 212, 212, 212, 212, 212, 212, 212, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, - 213, 213, 213, 213, 213, 214, 214, 214, 214, 214, - 214, 214, 215, 215, 215, 215, 215, 215, 215, 215, + 213, 213, 213, 213, 213, 213, 213, 214, 214, 214, + 214, 214, 214, 214, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, - 215, 215, 215, 215, 215, 215, 215, 216, 216, 216, - 216, 216, 216, 217, 217, 217, 218, 218, 219, 219, - 220 + 215, 215, 215, 215, 215, 215, 215, 215, 215, 215, + 216, 216, 216, 216, 216, 216, 217, 217, 217, 218, + 218, 219, 219, 220 }; /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ -static const unsigned char yyr2[] = +static const yytype_uint8 yyr2[] = { 0, 2, 2, 2, 2, 1, 2, 2, 1, 3, 4, 0, 5, 1, 1, 1, 1, 1, 1, 2, @@ -1130,254 +1275,254 @@ static const unsigned char yyr2[] = 1, 1, 1, 1, 1, 3, 1, 4, 7, 7, 4, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 5, 4, 4, 3, 3, 3, 3, 1, 4, - 7, 7, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 2, 5, 2, 2, 2, 2, - 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 5, 4, - 4, 3, 3, 3, 3, 1, 1, 1, 1, 1, - 1, 1, 1, 4, 7, 7, 4, 2, 5, 2, - 2, 2, 2, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 5, 4, 4, 3, 3, 3, 3, 1, + 4, 7, 7, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 2, 5, 2, 2, 2, + 2, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 5, 4, 4, 3, 3, 3, 3, 1, 1, 1, - 1, 1, 1, 1, 2, 2, 1, 1, 1, 2, - 0 + 1, 1, 1, 1, 1, 4, 7, 7, 4, 2, + 5, 2, 2, 2, 2, 3, 3, 3, 3, 3, + 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, + 3, 3, 3, 5, 4, 4, 3, 3, 3, 3, + 1, 1, 1, 1, 1, 1, 1, 2, 2, 1, + 1, 1, 2, 0 }; /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state STATE-NUM when YYTABLE doesn't specify something else to do. Zero means the default is an error. */ -static const unsigned short int yydefact[] = +static const yytype_uint16 yydefact[] = { - 0, 530, 0, 0, 0, 530, 5, 479, 475, 478, - 528, 481, 0, 0, 0, 0, 0, 0, 477, 0, - 0, 0, 0, 0, 0, 0, 0, 476, 0, 0, - 0, 0, 0, 0, 0, 3, 428, 480, 198, 262, + 0, 533, 0, 0, 0, 533, 5, 481, 477, 480, + 531, 483, 0, 0, 0, 0, 0, 0, 479, 0, + 0, 0, 0, 0, 0, 0, 0, 478, 0, 0, + 0, 0, 0, 0, 0, 3, 429, 482, 198, 262, 263, 264, 251, 0, 277, 250, 275, 270, 266, 267, - 265, 269, 252, 0, 253, 268, 280, 530, 4, 200, + 265, 269, 252, 0, 253, 268, 280, 533, 4, 200, 201, 202, 203, 0, 0, 197, 259, 260, 261, 1, 20, 21, 0, 27, 0, 0, 0, 0, 0, 120, - 530, 0, 6, 15, 7, 18, 0, 13, 40, 14, - 16, 17, 29, 530, 530, 530, 530, 530, 0, 530, - 530, 530, 216, 0, 444, 0, 0, 215, 530, 530, - 0, 0, 530, 450, 448, 449, 447, 198, 262, 263, + 533, 0, 6, 15, 7, 18, 0, 13, 40, 14, + 16, 17, 29, 533, 533, 533, 533, 533, 0, 533, + 533, 533, 216, 0, 445, 0, 0, 215, 533, 533, + 0, 0, 533, 451, 449, 450, 448, 198, 262, 263, 264, 277, 275, 270, 266, 265, 269, 268, 0, 0, - 394, 446, 0, 0, 0, 0, 0, 0, 0, 0, + 394, 447, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 529, 530, 279, 276, 266, 272, - 266, 271, 274, 526, 527, 199, 273, 0, 530, 530, - 530, 530, 220, 190, 239, 205, 222, 204, 22, 530, - 0, 530, 0, 25, 24, 23, 0, 0, 19, 0, - 257, 74, 207, 39, 0, 30, 35, 33, 37, 0, - 38, 32, 0, 34, 36, 11, 0, 0, 43, 209, - 210, 211, 212, 0, 0, 206, 0, 393, 392, 0, - 0, 0, 0, 0, 0, 0, 0, 217, 530, 219, - 218, 0, 0, 0, 0, 0, 0, 0, 474, 458, - 459, 460, 461, 462, 463, 466, 467, 473, 0, 456, - 457, 464, 465, 454, 455, 451, 452, 453, 472, 471, - 0, 0, 221, 278, 530, 191, 193, 192, 0, 530, - 530, 241, 530, 530, 28, 0, 530, 254, 530, 0, - 0, 51, 258, 60, 62, 45, 31, 0, 530, 208, - 530, 0, 281, 156, 0, 0, 42, 41, 0, 214, - 213, 432, 436, 434, 435, 442, 0, 441, 433, 438, - 0, 437, 440, 443, 0, 439, 429, 395, 0, 470, - 469, 194, 0, 0, 391, 390, 0, 244, 246, 243, - 530, 530, 0, 0, 227, 226, 0, 256, 530, 131, - 132, 0, 0, 0, 0, 123, 124, 530, 130, 122, - 53, 55, 0, 530, 0, 0, 530, 0, 530, 173, - 174, 0, 530, 530, 530, 0, 172, 530, 64, 0, - 530, 0, 8, 0, 530, 0, 0, 0, 0, 0, - 0, 0, 44, 530, 134, 0, 445, 0, 468, 530, - 195, 240, 245, 0, 0, 223, 0, 0, 0, 0, - 228, 530, 0, 0, 530, 126, 530, 133, 530, 0, - 181, 182, 0, 530, 530, 530, 530, 530, 180, 0, - 52, 530, 521, 517, 520, 530, 146, 0, 0, 519, - 0, 0, 0, 518, 0, 0, 0, 0, 0, 0, - 147, 150, 530, 171, 482, 522, 145, 0, 0, 0, - 46, 530, 0, 530, 175, 177, 176, 70, 530, 12, - 530, 157, 282, 283, 281, 0, 530, 530, 0, 162, - 164, 161, 159, 0, 136, 89, 90, 91, 92, 93, - 94, 97, 98, 113, 101, 102, 103, 104, 105, 106, - 107, 108, 109, 110, 111, 112, 117, 116, 100, 99, - 86, 88, 87, 95, 96, 84, 85, 81, 82, 83, - 80, 0, 0, 79, 135, 138, 137, 0, 0, 0, - 143, 530, 0, 47, 154, 0, 0, 0, 248, 247, - 242, 0, 0, 0, 232, 523, 0, 231, 0, 230, - 0, 0, 0, 530, 229, 0, 255, 0, 530, 0, - 118, 121, 119, 125, 530, 183, 185, 184, 0, 0, - 530, 128, 152, 54, 530, 0, 56, 530, 530, 0, - 487, 0, 0, 492, 491, 490, 0, 0, 489, 530, - 149, 0, 530, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 532, 533, 279, 276, 266, + 272, 266, 271, 274, 529, 530, 199, 273, 0, 533, + 533, 533, 533, 220, 190, 239, 205, 222, 204, 22, + 533, 0, 533, 0, 25, 24, 23, 0, 0, 19, + 0, 257, 74, 207, 39, 0, 30, 35, 33, 37, + 0, 38, 32, 0, 34, 36, 11, 0, 0, 43, + 209, 210, 211, 212, 0, 0, 206, 0, 393, 392, + 0, 0, 0, 0, 0, 0, 0, 0, 217, 533, + 219, 218, 0, 0, 0, 0, 0, 0, 0, 476, + 460, 461, 462, 463, 464, 465, 468, 469, 475, 0, + 457, 458, 459, 466, 467, 455, 456, 452, 453, 454, + 474, 473, 0, 0, 221, 278, 533, 191, 193, 192, + 0, 533, 533, 241, 533, 533, 28, 0, 533, 254, + 533, 0, 0, 51, 258, 60, 62, 45, 31, 0, + 533, 208, 533, 0, 281, 156, 0, 0, 42, 41, + 0, 214, 213, 433, 437, 435, 436, 443, 0, 442, + 434, 439, 0, 438, 441, 444, 0, 440, 430, 395, + 0, 472, 471, 194, 0, 0, 391, 390, 0, 244, + 246, 243, 533, 533, 0, 0, 227, 226, 0, 256, + 533, 131, 132, 0, 0, 0, 0, 123, 124, 533, + 130, 122, 53, 55, 0, 533, 0, 0, 533, 0, + 533, 173, 174, 0, 533, 533, 533, 0, 172, 533, + 64, 0, 533, 0, 8, 0, 533, 0, 0, 0, + 0, 0, 0, 0, 44, 533, 134, 0, 446, 0, + 470, 533, 195, 240, 245, 0, 0, 223, 0, 0, + 0, 0, 228, 533, 0, 0, 533, 126, 533, 133, + 533, 0, 181, 182, 0, 533, 533, 533, 533, 533, + 180, 0, 52, 533, 524, 520, 523, 533, 146, 0, + 0, 522, 0, 0, 0, 521, 0, 0, 0, 0, + 0, 0, 147, 150, 533, 171, 484, 525, 145, 0, + 0, 0, 46, 533, 0, 533, 175, 177, 176, 70, + 533, 12, 533, 157, 282, 283, 281, 0, 533, 533, + 0, 162, 164, 161, 159, 0, 136, 89, 90, 91, + 92, 93, 94, 97, 98, 113, 101, 102, 103, 104, + 105, 106, 107, 108, 109, 110, 111, 112, 117, 116, + 100, 99, 86, 88, 87, 95, 96, 84, 85, 81, + 82, 83, 80, 0, 0, 79, 135, 138, 137, 0, + 0, 0, 143, 533, 0, 47, 154, 0, 0, 0, + 248, 247, 242, 0, 0, 0, 232, 526, 0, 231, + 0, 230, 0, 0, 0, 533, 229, 0, 255, 0, + 533, 0, 118, 121, 119, 125, 533, 183, 185, 184, + 0, 0, 533, 128, 152, 54, 533, 0, 56, 533, + 533, 0, 489, 0, 0, 494, 493, 492, 0, 0, + 491, 533, 149, 0, 533, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 530, 0, - 49, 72, 178, 530, 0, 0, 285, 286, 288, 287, - 292, 289, 290, 291, 293, 294, 295, 296, 297, 298, - 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, - 309, 310, 311, 312, 313, 314, 315, 316, 317, 365, - 318, 319, 320, 321, 322, 323, 324, 325, 326, 327, - 328, 329, 330, 345, 331, 332, 333, 334, 335, 336, - 337, 338, 339, 340, 341, 366, 342, 343, 344, 346, - 347, 348, 349, 350, 351, 352, 353, 354, 355, 356, - 357, 358, 359, 360, 361, 362, 363, 364, 530, 383, - 384, 385, 376, 388, 372, 373, 371, 378, 379, 367, - 368, 369, 370, 377, 375, 382, 380, 386, 381, 374, - 387, 284, 0, 9, 0, 0, 160, 163, 139, 115, - 114, 142, 141, 155, 530, 0, 0, 431, 430, 530, - 0, 525, 238, 524, 237, 236, 235, 234, 233, 225, - 0, 127, 129, 186, 189, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 153, 396, 0, 0, 58, 0, - 0, 169, 530, 0, 530, 0, 0, 0, 516, 76, - 61, 75, 148, 151, 168, 500, 501, 502, 503, 504, - 505, 508, 509, 515, 0, 498, 499, 506, 507, 496, - 497, 493, 494, 495, 514, 513, 0, 0, 0, 66, - 63, 0, 530, 0, 179, 530, 0, 158, 10, 165, - 530, 166, 0, 140, 48, 196, 249, 0, 530, 0, - 0, 0, 405, 403, 404, 402, 0, 0, 401, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 187, - 0, 57, 155, 170, 0, 0, 486, 0, 483, 0, - 0, 512, 511, 68, 530, 50, 0, 530, 65, 389, - 0, 530, 26, 0, 0, 0, 0, 0, 427, 413, - 414, 415, 416, 417, 418, 419, 420, 426, 0, 411, - 412, 409, 410, 406, 407, 408, 425, 424, 0, 0, - 59, 0, 488, 0, 0, 510, 530, 0, 530, 71, - 167, 144, 530, 0, 400, 0, 397, 0, 423, 422, - 0, 0, 77, 0, 0, 530, 73, 188, 0, 0, - 421, 485, 484, 78, 530, 67, 0, 0, 69, 399, - 398 + 0, 533, 0, 49, 72, 178, 533, 0, 0, 285, + 286, 288, 287, 292, 289, 290, 291, 293, 294, 295, + 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, + 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, + 316, 317, 365, 318, 319, 320, 321, 322, 323, 324, + 325, 326, 327, 328, 329, 330, 345, 331, 332, 333, + 334, 335, 336, 337, 338, 339, 340, 341, 366, 342, + 343, 344, 346, 347, 348, 349, 350, 351, 352, 353, + 354, 355, 356, 357, 358, 359, 360, 361, 362, 363, + 364, 533, 383, 384, 385, 376, 388, 372, 373, 371, + 378, 379, 367, 368, 369, 370, 377, 375, 382, 380, + 386, 381, 374, 387, 284, 0, 9, 0, 0, 160, + 163, 139, 115, 114, 142, 141, 155, 533, 0, 0, + 432, 431, 533, 0, 528, 238, 527, 237, 236, 235, + 234, 233, 225, 0, 127, 129, 186, 189, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 153, 396, 0, + 0, 58, 0, 0, 169, 533, 0, 533, 0, 0, + 0, 519, 76, 61, 75, 148, 151, 168, 503, 504, + 505, 506, 507, 508, 511, 512, 518, 0, 500, 501, + 502, 509, 510, 498, 499, 495, 496, 497, 517, 516, + 0, 0, 0, 66, 63, 0, 533, 0, 179, 533, + 0, 158, 10, 165, 533, 166, 0, 140, 48, 196, + 249, 0, 533, 0, 0, 0, 405, 403, 404, 402, + 0, 0, 401, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 187, 0, 57, 155, 170, 0, + 0, 488, 0, 485, 0, 0, 515, 514, 68, 533, + 50, 0, 533, 65, 389, 0, 533, 26, 0, 0, + 0, 0, 0, 428, 414, 415, 416, 417, 418, 419, + 420, 421, 427, 0, 411, 412, 413, 409, 410, 406, + 407, 408, 426, 425, 0, 0, 59, 0, 490, 0, + 0, 513, 533, 0, 533, 71, 167, 144, 533, 0, + 400, 0, 397, 0, 424, 423, 0, 0, 77, 0, + 0, 533, 73, 188, 0, 0, 422, 487, 486, 78, + 533, 67, 0, 0, 69, 399, 398 }; -/* YYDEFGOTO[NTERM-NUM]. */ -static const short int yydefgoto[] = +/* YYDEFGOTO[NTERM-NUM]. */ +static const yytype_int16 yydefgoto[] = { - -1, 4, 5, 371, 372, 83, 290, 84, 85, 179, - 86, 87, 88, 298, 357, 382, 450, 188, 352, 419, - 420, 563, 207, 353, 356, 460, 874, 916, 613, 812, - 780, 514, 551, 89, 186, 344, 345, 346, 347, 383, - 734, 439, 440, 561, 522, 296, 468, 469, 441, 365, - 417, 172, 57, 208, 104, 58, 59, 272, 60, 273, - 333, 334, 400, 61, 270, 62, 330, 326, 327, 63, - 64, 90, 338, 91, 65, 66, 67, 68, 369, 370, - 462, 721, 323, 216, 217, 764, 130, 36, 443, 444, - 534, 384, 37, 218 + -1, 4, 5, 373, 374, 83, 292, 84, 85, 180, + 86, 87, 88, 300, 359, 384, 452, 189, 354, 421, + 422, 565, 208, 355, 358, 462, 879, 922, 616, 816, + 783, 516, 553, 89, 187, 346, 347, 348, 349, 385, + 737, 441, 442, 563, 524, 298, 470, 471, 443, 367, + 419, 173, 57, 209, 104, 58, 59, 274, 60, 275, + 335, 336, 402, 61, 272, 62, 332, 328, 329, 63, + 64, 90, 340, 91, 65, 66, 67, 68, 371, 372, + 464, 724, 325, 217, 218, 767, 130, 36, 445, 446, + 536, 386, 37, 219 }; /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing STATE-NUM. */ -#define YYPACT_NINF -483 -static const short int yypact[] = +#define YYPACT_NINF -467 +static const yytype_int16 yypact[] = { - 223, -483, 2022, 3004, 19, 2905, -483, -483, -483, -483, - -483, -483, -85, -59, -47, -37, -19, -7, -483, -8, - -6, 27, 3106, 32, 35, 43, 70, -483, 67, 2022, - 2022, 2022, 2022, 1215, 2022, 2565, -483, 171, -483, -483, - -483, -483, -483, 3156, -483, -483, -483, -483, 1779, -483, - 850, 850, -483, 241, -483, 850, -483, 132, -483, -483, - -483, -483, -483, 34, 37, -483, -483, -483, -483, -483, - -483, -483, 112, -483, 101, 56, 121, 133, 138, -483, - -483, 89, -483, -483, -483, -483, 2346, -483, -483, -483, - -483, -483, -483, 2022, 2022, 2022, 2022, 2022, 3004, 2022, - 2022, 2022, -483, 241, 135, 241, 241, -483, 2022, 2022, - 3004, 3004, 2022, 65, 65, 65, 65, -85, -59, -47, - -37, -19, -8, -6, 1605, 1211, 1401, 1692, 147, -74, - 2565, 65, 2022, 2022, 2022, 2022, 2022, 2022, 2022, 2022, - 2022, 2022, 2022, 2022, 2022, 2022, 2022, 2022, 2022, 2022, - 2022, 2022, 1500, 2022, -483, 132, -483, -483, 1866, -483, - 850, -483, -483, -483, -483, -483, -483, 164, 132, 132, - 132, 132, 166, -483, -483, 189, -483, -62, -483, 2736, - 241, -483, 193, -483, -483, -483, 192, 2402, -483, 241, - -483, 200, 220, -483, 3156, 348, -483, -483, -483, 3056, - -483, -483, 241, -483, -483, -483, 241, 176, 254, -483, - -483, -483, -483, 34, 37, -483, 247, 268, -483, 263, - 264, 270, 273, 281, 274, 278, 279, -483, 2022, -483, - -483, 285, 288, 294, 291, 298, 2022, 2022, -483, 2725, - 2756, 788, 788, 478, 478, 144, 144, -483, 1233, 2771, - 2786, 478, 478, 218, 218, 65, 65, 65, -483, -483, - -24, 2105, 166, -483, 132, 166, 166, 166, 242, 2022, - 241, -483, -483, 316, -483, 324, 3183, -483, 2966, 3156, - 176, -483, -483, -483, 23, -483, 171, 3156, 49, -483, - -483, 318, -483, -483, 241, 1587, -483, -483, 63, 189, - -62, -483, -483, -483, -483, -483, 321, -483, -483, -483, - 314, -483, -483, -483, 323, -483, 65, 2565, 2022, -483, - -483, 166, 325, 319, 2565, -483, 330, 343, 351, -483, - 241, 3208, 0, 357, 359, -483, 241, -483, -483, -483, - -483, 241, 2269, 241, 354, 360, -483, 120, -483, -483, - -483, -483, 63, 1310, 345, 63, 1310, 63, 49, -483, - -483, 353, 49, 49, 49, 246, -483, 3233, -483, 352, - -483, 271, -483, 361, 1674, 1423, 358, 63, 2268, 63, - 63, 63, -483, 1, -483, 2022, -483, 2022, 2565, 1310, - -483, -483, 241, 2022, 362, -483, 226, 418, 773, 272, - -483, -483, 0, 371, 3258, 374, 120, -483, 396, 2966, - -483, -483, 373, 120, 120, 120, 120, -41, -483, 63, - -483, 1, -483, -483, -483, 120, -483, 3156, 379, -483, - 3106, 380, 383, -483, 2022, 2022, 2022, 1215, 2022, 385, - 15, -483, 120, 2582, -483, 171, -483, 63, 187, 386, - -483, 1, 256, 49, 381, 381, 381, -483, 2022, -483, - 1310, -483, 1091, -483, -483, 241, 2022, 1674, 378, 402, - 2565, -483, -483, 63, 259, -483, -483, -483, -483, -483, - -483, -483, -483, -483, -483, -483, -483, -483, -483, -483, - -483, -483, -483, -483, -483, -483, -483, -483, -483, -483, - -483, -483, -483, -483, -483, -483, -483, -483, -483, -483, - -483, 389, 387, -483, -483, 259, 259, 222, 282, 1587, - -483, 2022, 411, -483, -483, -13, -3, 394, 414, 2565, - -483, 241, 440, 241, -483, -483, 440, -483, 440, -483, - 440, 440, 440, 3283, -483, 241, -483, 3004, -41, 2458, - -483, -483, -483, -483, 120, 400, 400, 400, 261, 772, - 2022, -483, -483, -483, 1, 419, -483, 28, 120, 3004, - 397, 3004, 3004, 65, 65, 65, 401, 8, 65, 477, - -483, 1405, 28, 2022, 2022, 2022, 2022, 2022, 2022, 2022, - 2022, 2022, 2022, 2022, 2022, 2022, 2022, 2022, 2022, 2022, - 2022, 2022, 2022, 1761, 2022, 350, 527, 427, 477, 436, - -483, -483, 381, 1310, 423, 422, -483, -483, -483, -483, - -483, -483, -483, -483, -483, -483, -483, -483, -483, -483, - -483, -483, -483, -483, -483, -483, -483, -483, -483, -483, - -483, -483, -483, -483, -483, -483, -483, -483, -483, -483, - -483, -483, -483, -483, -483, -483, -483, -483, -483, -483, - -483, -483, -483, -483, -483, -483, -483, -483, -483, -483, - -483, -483, -483, -483, -483, -483, -483, -483, -483, -483, - -483, -483, -483, -483, -483, -483, -483, -483, -483, -483, - -483, -483, -483, -483, -483, -483, -483, -483, -483, -483, - -483, -483, -483, -483, -483, -483, -483, -483, -483, -483, - -483, -483, -483, -483, -483, -483, -483, -483, -483, -483, - -483, -483, 426, -483, 428, 430, -483, 1848, 259, -483, - -483, -483, -483, 1423, 1310, 429, 63, -483, -483, 477, - 2022, -483, -483, -483, -483, -483, -483, -483, -483, -483, - 433, -483, -483, 400, 431, 446, 439, 449, 772, 772, - 772, 772, 1215, 772, 2616, -483, 438, 458, -483, 63, - 2022, -483, 28, 452, 2022, 445, 457, 2022, -483, -483, - 484, -483, -483, -483, -483, 2725, 2756, 788, 788, 478, - 478, 144, 144, -483, 2544, 2771, 2786, 478, 478, 218, - 218, 65, 65, 65, -483, -483, 117, 2135, 454, -483, - 484, 63, 1310, 450, -483, 477, 967, -483, -483, -483, - 1674, 2565, 459, -483, -483, 484, 2565, 475, 1310, 3004, - 3004, 3004, 95, 95, 95, 95, 460, 119, 95, 772, - 772, 772, 772, 772, 772, 772, 772, 772, 772, 772, - 772, 772, 772, 772, 772, 772, 772, 1935, 2022, -483, - 63, -483, 2565, -483, 463, 462, -483, 465, 65, 466, - 2022, -483, -483, -483, 1310, -483, 467, 477, 484, -483, - 473, 477, -483, 479, 476, 480, 488, 772, -483, 2741, - 2801, 2080, 2080, 1492, 1492, 185, 185, -483, 2599, 2909, - 2924, 313, 313, 95, 95, 95, -483, -483, 128, 2154, - -483, 2022, -483, 2022, 26, 2565, 1310, 482, 477, 484, - -483, 484, 477, 485, -483, 487, 95, 772, -483, -483, - 129, 150, -483, 486, 491, 477, 484, 484, 2022, 2022, - 2616, -483, -483, -483, 477, 484, 151, 174, 484, -483, - -483 + 5, -467, 2147, 3106, 16, 3018, -467, -467, -467, -467, + -467, -467, -94, -85, -80, -74, -52, -39, -467, -43, + -37, 4, 3208, 38, 56, 71, -23, -467, 111, 2147, + 2147, 2147, 2147, 1340, 2147, 2577, -467, 139, -467, -467, + -467, -467, -467, 3258, -467, -467, -467, -467, 1817, -467, + 1991, 1991, -467, 191, -467, 1991, -467, 19, -467, -467, + -467, -467, -467, 46, 58, -467, -467, -467, -467, -467, + -467, -467, 80, -467, 120, 72, 141, 149, 151, -467, + -467, 29, -467, -467, -467, -467, 2358, -467, -467, -467, + -467, -467, -467, 2147, 2147, 2147, 2147, 2147, 3106, 2147, + 2147, 2147, -467, 191, 169, 191, 191, -467, 2147, 2147, + 3106, 3106, 2147, 17, 17, 17, 17, -94, -85, -80, + -74, -52, -43, -37, 1643, 1336, 1526, 1730, 136, -61, + 2577, 17, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, + 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, + 2147, 2147, 2147, 1625, 2147, -467, 19, -467, -467, 1904, + -467, 1991, -467, -467, -467, -467, -467, -467, 179, 19, + 19, 19, 19, 175, -467, -467, 198, -467, 172, -467, + 2748, 191, -467, 199, -467, -467, -467, 192, 2414, -467, + 191, -467, 195, 197, -467, 3258, 299, -467, -467, -467, + 3158, -467, -467, 191, -467, -467, -467, 191, 9, 214, + -467, -467, -467, -467, 46, 58, -467, 189, 222, -467, + 210, 211, 215, 224, 217, 226, 228, 229, -467, 2147, + -467, -467, 232, 233, 238, 254, 246, 2147, 2147, -467, + 2737, 753, 934, 934, 613, 613, 207, 207, -467, 1358, + 2768, 2783, 2813, 613, 613, 193, 193, 17, 17, 17, + -467, -467, -59, 890, 175, -467, 19, 175, 175, 175, + 146, 2147, 191, -467, -467, 239, -467, 275, 3285, -467, + 2952, 3258, 9, -467, -467, -467, -8, -467, 139, 3258, + 225, -467, -467, 259, -467, -467, 191, 1712, -467, -467, + 77, 198, 172, -467, -467, -467, -467, -467, 267, -467, + -467, -467, 269, -467, -467, -467, 280, -467, 17, 2577, + 2147, -467, -467, 175, 282, 278, 2577, -467, 284, 302, + 303, -467, 191, 3310, -19, 316, 321, -467, 191, -467, + -467, -467, -467, 191, 3068, 191, 307, 324, -467, 187, + -467, -467, -467, -467, 77, 1435, 314, 77, 1435, 77, + 225, -467, -467, 315, 225, 225, 225, 104, -467, 3335, + -467, 308, -467, 177, -467, 312, 1799, 1548, 320, 77, + 2280, 77, 77, 77, -467, -11, -467, 2147, -467, 2147, + 2577, 1435, -467, -467, 191, 2147, 313, -467, 385, 440, + 593, 266, -467, -467, -19, 338, 3360, 337, 187, -467, + 359, 2952, -467, -467, 331, 187, 187, 187, 187, -46, + -467, 77, -467, -11, -467, -467, -467, 187, -467, 3258, + 339, -467, 3208, 332, 343, -467, 2147, 2147, 2147, 1340, + 2147, 333, 23, -467, 187, 2594, -467, 139, -467, 77, + 277, 334, -467, -11, 162, 225, 336, 336, 336, -467, + 2147, -467, 1435, -467, 1213, -467, -467, 191, 2147, 1799, + 341, 356, 2577, -467, -467, 77, 166, -467, -467, -467, + -467, -467, -467, -467, -467, -467, -467, -467, -467, -467, + -467, -467, -467, -467, -467, -467, -467, -467, -467, -467, + -467, -467, -467, -467, -467, -467, -467, -467, -467, -467, + -467, -467, -467, 340, 344, -467, -467, 166, 166, 317, + 245, 1712, -467, 2147, 358, -467, -467, -55, -41, 346, + 360, 2577, -467, 191, 464, 191, -467, -467, 464, -467, + 464, -467, 464, 464, 464, 3385, -467, 191, -467, 3106, + -46, 2470, -467, -467, -467, -467, 187, 352, 352, 352, + 170, 592, 2147, -467, -467, -467, -11, 362, -467, 65, + 187, 3106, 366, 3106, 3106, 17, 17, 17, 365, -32, + 17, 438, -467, 1530, 65, 2147, 2147, 2147, 2147, 2147, + 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, 2147, + 2147, 2147, 2147, 2147, 2147, 2147, 1886, 2147, 373, 488, + 372, 438, 394, -467, -467, 336, 1435, 375, 376, -467, + -467, -467, -467, -467, -467, -467, -467, -467, -467, -467, + -467, -467, -467, -467, -467, -467, -467, -467, -467, -467, + -467, -467, -467, -467, -467, -467, -467, -467, -467, -467, + -467, -467, -467, -467, -467, -467, -467, -467, -467, -467, + -467, -467, -467, -467, -467, -467, -467, -467, -467, -467, + -467, -467, -467, -467, -467, -467, -467, -467, -467, -467, + -467, -467, -467, -467, -467, -467, -467, -467, -467, -467, + -467, -467, -467, -467, -467, -467, -467, -467, -467, -467, + -467, -467, -467, -467, -467, -467, -467, -467, -467, -467, + -467, -467, -467, -467, -467, -467, -467, -467, -467, -467, + -467, -467, -467, -467, -467, 378, -467, 387, 384, -467, + 1973, 166, -467, -467, -467, -467, 1548, 1435, 386, 77, + -467, -467, 438, 2147, -467, -467, -467, -467, -467, -467, + -467, -467, -467, 388, -467, -467, 352, 392, 403, 396, + 406, 592, 592, 592, 592, 1340, 592, 2628, -467, 393, + 416, -467, 77, 2147, -467, 65, 408, 2147, 400, 429, + 2147, -467, -467, 455, -467, -467, -467, -467, 2737, 753, + 934, 934, 613, 613, 207, 207, -467, 2556, 2768, 2783, + 2813, 613, 613, 193, 193, 17, 17, 17, -467, -467, + -30, 2230, 425, -467, 455, 77, 1435, 424, -467, 438, + 1089, -467, -467, -467, 1799, 2577, 428, -467, -467, 455, + 2577, 447, 1435, 3106, 3106, 3106, 265, 265, 265, 265, + 431, 25, 265, 592, 592, 592, 592, 592, 592, 592, + 592, 592, 592, 592, 592, 592, 592, 592, 592, 592, + 592, 592, 2060, 2147, -467, 77, -467, 2577, -467, 437, + 436, -467, 441, 17, 443, 2147, -467, -467, -467, 1435, + -467, 449, 438, 455, -467, 442, 438, -467, 450, 457, + 451, 462, 592, -467, 2753, 2798, 2170, 2170, 686, 686, + 675, 675, -467, 2611, 2921, 2936, 2951, 256, 256, 265, + 265, 265, -467, -467, 127, 2260, -467, 2147, -467, 2147, + 24, 2577, 1435, 453, 438, 455, -467, 455, 438, 456, + -467, 460, 265, 592, -467, -467, 133, 135, -467, 463, + 465, 438, 455, 455, 2147, 2147, 2628, -467, -467, -467, + 438, 455, 138, 144, 455, -467, -467 }; /* YYPGOTO[NTERM-NUM]. */ -static const short int yypgoto[] = +static const yytype_int16 yypgoto[] = { - -483, -483, -163, -483, 145, -483, -483, 432, -483, -483, - -57, 207, -483, -483, -483, -120, -194, -483, -483, -483, - -146, -235, 441, -483, -483, -483, -483, -483, -483, -483, - -482, -483, -483, 219, -483, -483, -483, 224, 287, -326, - -483, -328, -483, 83, -401, -232, -464, -483, 51, -295, - -270, -131, -42, 447, 205, -28, -84, -483, -71, -483, - -483, -483, 234, -70, -483, -69, -483, 309, -483, 25, - 139, -483, -483, -483, -11, 265, -483, -483, 197, -483, - -58, -483, -426, -87, -27, -139, 58, -2, -483, -483, - -312, 424, -143, -1 + -467, -467, -151, -467, 122, -467, -467, 407, -467, -467, + -60, 181, -467, -467, -467, -146, -221, -467, -467, -467, + -173, -261, 417, -467, -467, -467, -467, -467, -467, -467, + -315, -467, -467, 201, -467, -467, -467, 196, 264, -331, + -467, -316, -467, 64, -393, -229, -466, -467, 33, -120, + -284, -6, -38, 430, 185, 11, -75, -467, -71, -467, + -467, -467, 216, -69, -467, -68, -467, 287, -467, -21, + -3, -467, -467, -467, 2, 103, -467, -467, 155, -467, + -79, -467, -426, -87, -27, 184, 69, 134, -467, -467, + -360, 422, -92, -1 }; /* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If @@ -1385,699 +1530,719 @@ static const short int yypgoto[] = number is the opposite. If zero, do what YYDEFACT says. If YYTABLE_NINF, syntax error. */ #define YYTABLE_NINF -225 -static const short int yytable[] = +static const yytype_int16 yytable[] = { - 6, 155, 209, 725, 92, 128, 129, 219, 220, 221, - 222, 107, 224, 225, 226, 210, 211, 212, 276, 69, - 565, 231, 232, 187, 262, 235, 421, 580, 449, 448, - 237, 451, 614, 354, 163, 164, 93, 265, 266, 267, - 268, -224, 163, 164, -224, 163, 164, 105, 351, 238, - 609, 474, 286, 515, 516, 517, 173, 359, 360, 361, - 35, 527, 94, 452, 163, 164, 559, 454, 455, 456, - 223, 163, 164, 376, 95, 215, 396, 397, 398, 92, - 237, 560, 233, 234, 96, 537, 539, 113, 114, 115, - 116, 237, 131, 564, 140, 735, 399, 163, 164, 319, - 362, 237, 97, 209, 292, 98, 293, 518, 519, 331, - 737, 213, 237, 99, 377, 100, 210, 211, 212, 581, - 738, 605, 520, 521, 847, 260, 810, 367, 410, 411, - 412, 778, 615, 321, 766, 770, 548, 174, 378, 355, - 176, 310, 167, 555, 556, 557, 558, 728, 101, 932, - 560, 523, 285, 108, 173, 567, 109, 288, 612, 181, - 363, 106, 189, 767, 110, 364, 771, 173, 173, 173, - 173, 413, 582, 140, 379, 404, 215, 154, 92, 380, - 6, 784, 111, 168, 381, 151, 152, 153, 112, 566, - 239, 240, 241, 242, 243, 244, 245, 246, 247, 248, + 6, 105, 356, 728, 92, 156, 129, 220, 221, 222, + 223, 210, 225, 226, 227, 211, 69, 212, 213, 106, + 188, 232, 233, 423, 107, 236, 450, 93, 453, 168, + 567, 278, 164, 165, 617, 582, 94, 164, 165, 539, + 541, 95, 451, 238, 128, 238, 140, 96, 476, 238, + 517, 518, 519, 353, 164, 165, 174, 398, 399, 400, + 612, 561, 239, 238, 321, 214, 164, 165, 740, 97, + 169, 35, 238, 98, 238, 529, 562, 401, 99, 92, + 164, 165, 741, 215, 100, 164, 165, 378, 216, 111, + 566, 781, 294, 876, 295, 520, 521, 738, 113, 114, + 115, 116, 190, 131, 288, 1, 2, 3, 357, 224, + 522, 523, 294, 210, 295, 296, 297, 211, 608, 212, + 213, 234, 235, 333, 550, 101, 262, 583, 379, 238, + 170, 557, 558, 559, 560, 171, 769, 152, 153, 154, + 172, 369, 312, 569, 731, 155, 618, 938, 893, 175, + 264, 160, 380, 162, 163, 174, 525, 287, 167, 108, + 584, 177, 290, 267, 268, 269, 270, 214, 174, 174, + 174, 174, 773, 770, 745, 182, 774, 109, 747, 92, + 748, 6, 749, 750, 751, 215, 179, 562, 381, 406, + 216, 787, 110, 382, 568, 412, 413, 414, 383, 164, + 165, 240, 241, 242, 243, 244, 245, 246, 247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, - 445, 261, 213, 445, 847, 856, 857, 858, 178, 610, - 742, 237, 180, 237, 744, 214, 745, 183, 746, 747, - 748, 414, 237, 237, 163, 164, 415, 350, 543, 184, - 871, 416, 888, 169, 185, 358, 445, 140, 170, 163, - 164, 928, 941, 171, 237, 237, 228, 825, 146, 147, - 148, 149, 150, 173, 151, 152, 153, 348, 325, 329, - 236, 6, 335, 942, 949, 92, 42, 349, 237, 292, - 264, 293, 294, 295, 753, 813, 732, 366, 269, 6, - 163, 164, 271, 606, 316, 317, 277, 950, 772, 851, - 852, 853, 854, 855, 278, 856, 857, 858, 520, 521, - 607, 442, 52, 159, 442, 161, 162, 445, 531, 54, - 166, 283, 532, 1, 2, 3, 214, 324, 606, 329, - 92, 348, 768, 878, 148, 149, 150, 6, 151, 152, - 153, 284, 847, 520, 521, 731, 418, 442, 540, 541, - 542, 549, 446, 375, 10, 446, 880, 366, 525, 297, - 526, 366, 366, 366, 269, 322, 92, 457, 458, 463, - 301, 863, 237, 471, 464, 465, 388, 611, 458, 724, - 520, 521, 524, 560, 754, 568, 302, 303, 446, 159, - 161, 162, 166, 304, 306, 919, 305, 307, 348, 921, - 6, 308, 309, 92, 314, 418, 822, 92, 311, 576, - 577, 312, 418, 418, 418, 418, 562, 313, 442, 107, - 524, 315, 332, 159, 418, 159, 163, 164, 336, 853, - 854, 855, 470, 856, 857, 858, 936, 386, 445, 368, - 937, 418, 385, 421, 387, 390, 389, 392, 163, 164, - 524, 529, 366, 945, 391, 105, 606, 325, 393, 446, - 401, 447, 948, 402, 409, 209, 471, 408, 42, 453, - 445, 520, 521, 808, 473, 545, 461, 165, 210, 211, - 212, 547, 466, 79, 876, 451, 530, 175, 177, 554, - 42, 569, 573, 574, 575, 572, 578, 138, 139, 182, - 883, 571, 726, 458, 52, 190, 727, 140, 579, 608, - 531, 54, 729, 730, 536, 736, 324, 739, 774, 751, - 325, 740, 560, 769, 777, 470, 52, 227, 779, 229, - 230, 732, 531, 54, 564, 533, 533, 533, 215, 442, - 811, 773, 92, 775, 776, 815, 917, 562, 809, 814, - 817, 818, 828, 418, 819, 823, 827, 765, 829, 325, - 830, 831, 860, 524, 859, 864, 524, 418, 866, 106, - 867, 442, 869, 877, 213, 873, 806, 733, 781, 324, - 882, 524, 881, 887, 911, 912, 913, 914, 934, 923, - 918, 445, 146, 147, 148, 149, 150, 920, 151, 152, - 153, 925, 922, 924, 275, 935, 938, 781, 939, 943, - 723, 274, 446, 282, 944, 550, 824, 875, 324, 832, - 833, 834, 835, 861, 838, 910, 289, 552, 280, 406, - 291, 752, 783, 553, 281, 570, 544, 299, 300, 394, - 816, 785, 786, 787, 788, 789, 790, 791, 792, 793, + 259, 260, 140, 263, 613, 459, 460, 160, 162, 163, + 167, 238, 112, 361, 362, 363, 140, 238, 415, 238, + 454, 181, 238, 352, 456, 457, 458, 184, 238, 735, + 934, 360, 545, 164, 165, 185, 947, 186, 948, 237, + 323, 955, 160, 447, 160, 174, 447, 956, 271, 324, + 327, 331, 756, 6, 337, -224, 364, 92, -224, 351, + 466, 467, 350, 614, 460, 851, 775, 522, 523, 368, + 229, 6, 562, 757, 851, 266, 814, 271, 416, 447, + 817, 273, 279, 417, 280, 10, 318, 319, 418, 149, + 150, 151, 303, 152, 153, 154, 285, 444, 286, 299, + 444, 147, 148, 149, 150, 151, 238, 152, 153, 154, + 308, 331, 92, 304, 305, 615, 365, 771, 306, 6, + 326, 366, 542, 543, 544, 334, 350, 307, 420, 309, + 551, 310, 311, 444, 448, 313, 314, 448, 885, 368, + 527, 315, 528, 368, 368, 368, 377, 316, 92, 317, + 447, 465, 858, 859, 860, 473, 861, 862, 863, 338, + 370, 727, 868, 609, 526, 861, 862, 863, 387, 390, + 448, 570, 388, 164, 165, 535, 535, 535, 522, 523, + 610, 389, 6, 391, 392, 92, 394, 420, 393, 92, + 395, 105, 579, 350, 420, 420, 420, 420, 564, 403, + 410, 826, 526, 609, 444, 404, 420, 829, 411, 106, + 449, 455, 463, 468, 107, 42, 475, 532, 522, 523, + 734, 423, 547, 420, 549, 472, 79, 556, 164, 165, + 578, 571, 526, 573, 368, 574, 581, 611, 460, 327, + 730, 448, 739, 732, 531, 729, 772, 743, 473, 742, + 733, 52, 164, 165, 562, 166, 210, 533, 54, 609, + 211, 534, 212, 213, 453, 176, 178, 777, 780, 782, + 42, 447, 735, 813, 522, 523, 812, 183, 815, 819, + 881, 818, 821, 191, 883, 575, 576, 577, 823, 580, + 822, 831, 827, 832, 42, 833, 888, 834, 835, 864, + 865, 869, 327, 871, 447, 228, 52, 230, 231, 326, + 214, 535, 533, 54, 566, 535, 538, 535, 472, 535, + 535, 535, 872, 874, 92, 444, 878, 882, 215, 564, + 52, 886, 887, 216, 892, 420, 533, 54, 917, 918, + 754, 327, 919, 923, 920, 526, 926, 925, 526, 420, + 929, 927, 924, 928, 930, 931, 941, 944, 444, 810, + 784, 945, 776, 526, 778, 779, 949, 276, 950, 726, + 736, 552, 326, 828, 880, 7, 8, 9, 10, 866, + 11, 164, 165, 277, 916, 282, 940, 555, 408, 942, + 784, 554, 284, 943, 755, 448, 786, 572, 283, 396, + 546, 725, 820, 0, 0, 291, 951, 0, 0, 293, + 0, 326, 138, 139, 0, 954, 301, 302, 0, 0, + 0, 0, 140, 42, 0, 447, 758, 0, 0, 0, + 0, 0, 0, 18, 788, 789, 790, 791, 792, 793, 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, - 804, 722, 807, 0, 0, 0, 0, 0, 0, 445, - 0, 533, 0, 0, 0, 533, 0, 533, 0, 533, - 533, 533, 0, 0, 0, 445, 0, 865, 214, 0, - 0, 0, 442, 0, 328, 0, 0, 463, 0, 0, - 889, 890, 891, 892, 893, 894, 895, 896, 897, 898, - 899, 900, 901, 902, 903, 904, 905, 906, 373, 0, + 804, 805, 806, 807, 808, 759, 811, 760, 0, 52, + 0, 27, 0, 0, 0, 533, 54, 0, 0, 540, + 870, 0, 0, 0, 330, 768, 0, 0, 0, 444, + 465, 0, 0, 761, 851, 849, 850, 762, 763, 0, + 0, 764, 0, 765, 0, 851, 0, 766, 375, 0, + 0, 0, 0, 0, 447, 0, 0, 147, 148, 149, + 150, 151, 0, 152, 153, 154, 448, 0, 841, 0, + 447, 784, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 330, 0, 0, 0, 0, 0, + 405, 0, 0, 0, 0, 407, 0, 409, 134, 135, + 136, 137, 138, 139, 526, 0, 840, 0, 444, 0, + 0, 0, 140, 0, 0, 0, 0, 447, 0, 856, + 857, 858, 859, 860, 444, 861, 862, 863, 0, 825, + 856, 857, 858, 859, 860, 0, 861, 862, 863, 0, + 0, 0, 830, 0, 0, 448, 530, 0, 784, 0, + 537, 537, 537, 473, 0, 0, 0, 0, 0, 0, + 447, 448, 0, 0, 0, 914, 0, 0, 0, 0, + 0, 444, 867, 0, 889, 890, 891, 0, 0, 873, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 445, 0, 446, 836, 837, 0, 0, 781, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 926, 0, - 0, 0, 0, 0, 328, 0, 765, 765, 765, 765, - 403, 765, 0, 0, 0, 405, 0, 407, 0, 0, - 442, 524, 0, 445, 0, 7, 8, 9, 10, 0, - 11, 163, 164, 0, 0, 821, 442, 0, 940, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 826, 0, - 0, 884, 885, 886, 0, 136, 137, 138, 139, 0, - 0, 446, 0, 0, 781, 0, 528, 140, 0, 471, - 535, 535, 535, 42, 0, 0, 755, 446, 862, 0, - 908, 0, 442, 18, 0, 868, 0, 765, 765, 765, - 765, 765, 765, 765, 765, 765, 765, 765, 765, 765, - 765, 765, 765, 765, 765, 756, 0, 757, 0, 52, - 0, 27, 0, 0, 0, 531, 54, 0, 0, 538, - 0, 0, 0, 446, 442, 0, 781, 0, 470, 0, - 781, 0, 0, 758, 930, 765, 931, 759, 760, 373, - 0, 761, 0, 762, 0, 0, 39, 763, 40, 41, - 144, 145, 146, 147, 148, 149, 150, 0, 151, 152, - 153, 946, 947, 0, 0, 446, 909, 781, 47, 160, - 49, 781, 0, 0, 0, 765, 0, 0, 915, 0, - 0, 50, 51, 0, 781, 0, 0, 0, 0, 0, - 0, 0, 373, 781, 55, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 741, 535, 743, 0, 0, - 535, 0, 535, 0, 535, 535, 535, 0, 0, 750, - 616, 617, 618, 619, 620, 621, 622, 623, 0, 624, - 625, 626, 627, 628, 629, 630, 631, 632, 633, 634, - 0, 0, 0, 0, 0, 0, 635, 636, 637, 638, - 639, 640, 641, 642, 643, 644, 645, 646, 647, 648, - 649, 0, 0, 650, 651, 652, 653, 654, 655, 656, - 657, 658, 659, 0, 660, 661, 662, 663, 664, 665, - 666, 667, 668, 669, 670, 671, 672, 0, 0, 673, - 0, 674, 675, 676, 677, 678, 679, 680, 681, 682, - 683, 684, 685, 686, 0, 687, 688, 689, 690, 691, - 692, 693, 0, 694, 695, 696, 697, 0, 0, 0, - 698, 699, 700, 701, 702, 703, 704, 705, 706, 707, - 708, 709, 710, 711, 712, 713, 714, 715, 716, 717, - 718, 879, 719, 720, 616, 617, 618, 619, 620, 621, - 622, 623, 0, 624, 625, 626, 627, 628, 629, 630, - 631, 632, 633, 634, 0, 0, 0, 0, 0, 0, - 635, 636, 637, 638, 639, 640, 641, 642, 643, 644, - 645, 646, 647, 648, 649, 0, 0, 650, 651, 652, - 653, 654, 655, 656, 657, 658, 659, 0, 660, 661, - 662, 663, 664, 665, 666, 667, 668, 669, 670, 671, - 672, 0, 0, 673, 0, 674, 675, 676, 677, 678, - 679, 680, 681, 682, 683, 684, 685, 686, 0, 687, - 688, 689, 690, 691, 692, 693, 0, 694, 695, 696, - 697, 0, 0, 0, 698, 699, 700, 701, 702, 703, - 704, 705, 706, 707, 708, 709, 710, 711, 712, 713, - 714, 715, 716, 717, 718, 0, 719, 720, 7, 8, - 9, 10, 0, 11, 117, 0, 0, 0, 0, 0, + 0, 0, 142, 143, 144, 145, 146, 147, 148, 149, + 150, 151, 0, 152, 153, 154, 0, 0, 448, 0, + 0, 784, 0, 0, 444, 784, 0, 0, 0, 375, + 936, 0, 937, 472, 0, 768, 768, 768, 768, 0, + 768, 0, 0, 132, 133, 134, 135, 136, 137, 138, + 139, 0, 0, 0, 0, 0, 0, 952, 953, 140, + 0, 448, 0, 784, 0, 0, 0, 784, 0, 0, + 0, 0, 915, 0, 0, 0, 0, 0, 0, 0, + 784, 0, 375, 0, 921, 836, 837, 838, 839, 784, + 842, 136, 137, 138, 139, 744, 537, 746, 0, 0, + 537, 0, 537, 140, 537, 537, 537, 0, 0, 753, + 0, 0, 0, 0, 0, 0, 0, 768, 768, 768, + 768, 768, 768, 768, 768, 768, 768, 768, 768, 768, + 768, 768, 768, 768, 768, 768, 0, 0, 141, 142, + 143, 144, 145, 146, 147, 148, 149, 150, 151, 0, + 152, 153, 154, 0, 0, 0, 322, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 768, 894, 895, 896, + 897, 898, 899, 900, 901, 902, 903, 904, 905, 906, + 907, 908, 909, 910, 911, 912, 145, 146, 147, 148, + 149, 150, 151, 0, 152, 153, 154, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 768, 0, 0, + 0, 0, 0, 0, 0, 0, 932, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 132, 133, 134, 135, - 136, 137, 138, 139, 0, 0, 0, 39, 0, 40, - 41, 118, 140, 119, 120, 42, 43, 0, 121, 17, - 0, 0, 45, 0, 0, 0, 18, 122, 0, 47, - 160, 49, 0, 123, 124, 49, 0, 0, 0, 22, - 0, 0, 50, 51, 0, 0, 125, 126, 25, 0, - 26, 52, 0, 0, 27, 55, 0, 53, 54, 127, - 0, 0, 56, 422, 423, 424, 10, 0, 425, 38, - 0, 0, 426, 0, 0, 0, 29, 0, 0, 0, - 30, 31, 108, 0, 32, 0, 33, 0, 933, 318, - 34, 141, 142, 0, 143, 144, 145, 146, 147, 148, - 149, 150, 0, 151, 152, 153, 39, 0, 40, 41, - 42, 427, 0, 44, 428, 0, 0, 45, 0, 0, - 0, 429, 46, 0, 0, 0, 0, 0, 47, 48, - 49, 0, 0, 0, 430, 0, 0, 0, 0, 0, - 0, 50, 51, 431, 0, 432, 52, 0, 0, 433, - 0, 0, 53, 54, 55, 0, 0, 56, 422, 423, - 424, 10, 0, 425, 38, 0, 0, 782, 0, 0, - 0, 434, 0, 0, 0, 435, 0, 0, 0, 436, - 0, 437, 0, 0, 0, 438, 132, 133, 134, 135, - 136, 137, 138, 139, 0, 0, 0, 39, 0, 40, - 41, 39, 140, 40, 41, 42, 427, 0, 44, 428, - 0, 0, 45, 0, 0, 0, 429, 46, 0, 47, - 160, 49, 0, 47, 48, 49, 0, 0, 0, 430, - 0, 0, 50, 51, 0, 0, 50, 51, 431, 0, - 432, 52, 0, 0, 433, 55, 0, 53, 54, 55, - 0, 0, 56, 7, 8, 9, 10, 0, 11, 12, - 0, 845, 846, 0, 0, 0, 434, 0, 0, 0, - 435, 847, 109, 0, 436, 0, 437, 0, 472, 0, - 438, 141, 142, 0, 143, 144, 145, 146, 147, 148, - 149, 150, 0, 151, 152, 153, 13, 0, 14, 15, + 0, 0, 619, 620, 621, 622, 623, 624, 625, 626, + 0, 627, 628, 629, 630, 631, 632, 633, 634, 635, + 636, 637, 0, 0, 0, 0, 0, 946, 638, 639, + 640, 641, 642, 643, 644, 645, 646, 647, 648, 649, + 650, 651, 652, 0, 0, 653, 654, 655, 656, 657, + 658, 659, 660, 661, 662, 0, 663, 664, 665, 666, + 667, 668, 669, 670, 671, 672, 673, 674, 675, 0, + 0, 676, 0, 677, 678, 679, 680, 681, 682, 683, + 684, 685, 686, 687, 688, 689, 0, 690, 691, 692, + 693, 694, 695, 696, 0, 697, 698, 699, 700, 0, + 0, 0, 701, 702, 703, 704, 705, 706, 707, 708, + 709, 710, 711, 712, 713, 714, 715, 716, 717, 718, + 719, 720, 721, 884, 722, 723, 619, 620, 621, 622, + 623, 624, 625, 626, 0, 627, 628, 629, 630, 631, + 632, 633, 634, 635, 636, 637, 0, 0, 0, 0, + 0, 0, 638, 639, 640, 641, 642, 643, 644, 645, + 646, 647, 648, 649, 650, 651, 652, 0, 0, 653, + 654, 655, 656, 657, 658, 659, 660, 661, 662, 0, + 663, 664, 665, 666, 667, 668, 669, 670, 671, 672, + 673, 674, 675, 0, 0, 676, 0, 677, 678, 679, + 680, 681, 682, 683, 684, 685, 686, 687, 688, 689, + 0, 690, 691, 692, 693, 694, 695, 696, 0, 697, + 698, 699, 700, 0, 0, 0, 701, 702, 703, 704, + 705, 706, 707, 708, 709, 710, 711, 712, 713, 714, + 715, 716, 717, 718, 719, 720, 721, 0, 722, 723, + 0, 0, 939, 7, 8, 9, 10, 0, 11, 117, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 132, 133, 134, 135, 136, 137, 138, 139, 0, + 0, 0, 39, 0, 40, 41, 118, 140, 119, 120, + 42, 43, 0, 121, 17, 0, 0, 45, 0, 0, + 0, 18, 122, 0, 47, 161, 49, 0, 123, 124, + 49, 0, 0, 0, 22, 0, 0, 50, 51, 0, + 0, 125, 126, 25, 0, 26, 52, 0, 0, 27, + 55, 0, 53, 54, 127, 0, 0, 56, 424, 425, + 426, 10, 0, 427, 38, 0, 0, 428, 0, 0, + 0, 29, 0, 0, 0, 30, 31, 108, 0, 32, + 0, 33, 0, 0, 320, 34, 141, 142, 143, 144, + 145, 146, 147, 148, 149, 150, 151, 0, 152, 153, + 154, 39, 0, 40, 41, 42, 429, 0, 44, 430, + 0, 0, 45, 0, 0, 0, 431, 46, 0, 0, + 0, 0, 0, 47, 48, 49, 0, 0, 0, 432, + 0, 0, 0, 0, 0, 0, 50, 51, 433, 0, + 434, 52, 0, 0, 435, 0, 0, 53, 54, 55, + 0, 0, 56, 424, 425, 426, 10, 0, 427, 38, + 0, 0, 785, 0, 0, 0, 436, 0, 0, 0, + 437, 0, 0, 0, 438, 0, 439, 0, 0, 0, + 440, 132, 133, 134, 135, 136, 137, 138, 139, 0, + 0, 0, 39, 0, 40, 41, 39, 140, 40, 41, + 42, 429, 0, 44, 430, 0, 0, 45, 0, 0, + 0, 431, 46, 0, 47, 161, 49, 0, 47, 48, + 49, 0, 0, 0, 432, 0, 0, 50, 51, 0, + 0, 50, 51, 433, 0, 434, 52, 0, 0, 435, + 55, 0, 53, 54, 55, 0, 0, 56, 7, 8, + 9, 10, 0, 11, 12, 0, 0, 0, 0, 0, + 0, 436, 0, 0, 0, 437, 0, 109, 0, 438, + 0, 439, 0, 474, 0, 440, 141, 142, 143, 144, + 145, 146, 147, 148, 149, 150, 151, 0, 152, 153, + 154, 13, 0, 14, 15, 0, 0, 0, 16, 17, + 0, 0, 0, 0, 0, 0, 18, 19, 0, 39, + 0, 40, 41, 20, 21, 0, 157, 0, 0, 22, + 0, 0, 0, 0, 0, 158, 23, 24, 25, 0, + 26, 47, 159, 49, 27, 7, 8, 9, 10, 28, + 11, 12, 0, 0, 50, 51, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 29, 55, 0, 0, + 30, 31, 0, 0, 32, 0, 33, 0, 261, 0, + 34, 0, 0, 0, 0, 0, 0, 0, 13, 0, + 14, 15, 0, 0, 101, 16, 17, 0, 0, 0, + 0, 0, 0, 18, 19, 0, 39, 0, 40, 41, + 20, 21, 0, 0, 0, 0, 22, 0, 0, 0, + 0, 0, 0, 23, 24, 25, 0, 26, 47, 161, + 49, 27, 7, 8, 9, 10, 28, 11, 12, 0, + 0, 50, 51, 0, 0, 376, 0, 0, 0, 0, + 0, 0, 0, 29, 55, 0, 0, 30, 31, 0, + 0, 32, 0, 33, 0, 0, 0, 34, 0, 0, + 0, 0, 0, 0, 0, 13, 0, 14, 15, 0, + 0, 112, 16, 17, 0, 0, 0, 0, 0, 0, + 18, 19, 0, 39, 0, 40, 41, 20, 21, 0, + 157, 0, 0, 22, 0, 0, 0, 0, 0, 158, + 23, 24, 25, 0, 26, 47, 159, 49, 27, 7, + 8, 9, 10, 28, 11, 12, 0, 0, 50, 51, + 0, 0, 469, 0, 0, 0, 0, 0, 0, 0, + 29, 55, 0, 0, 30, 31, 0, 0, 32, 0, + 33, 0, 0, 0, 34, 0, 0, 0, 0, 0, + 0, 0, 13, 0, 14, 15, 0, 0, 0, 16, + 17, 0, 0, 0, 0, 0, 0, 18, 19, 0, + 39, 0, 40, 41, 20, 21, 0, 0, 0, 0, + 22, 0, 0, 0, 0, 0, 265, 23, 24, 25, + 0, 26, 47, 161, 49, 27, 7, 8, 9, 10, + 28, 11, 12, 0, 0, 50, 51, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 29, 55, 0, + 0, 30, 31, 0, 0, 32, 0, 33, 0, 809, + 0, 34, 0, 0, 0, 0, 0, 0, 0, 13, + 0, 14, 15, 0, 0, 0, 16, 17, 0, 0, + 0, 0, 0, 0, 18, 19, 0, 39, 0, 40, + 41, 20, 21, 0, 0, 0, 0, 22, 0, 0, + 0, 0, 0, 0, 23, 24, 25, 0, 26, 47, + 161, 49, 27, 7, 8, 9, 10, 28, 11, 12, + 0, 0, 50, 51, 0, 0, 824, 0, 0, 0, + 0, 0, 0, 0, 29, 55, 0, 0, 30, 31, + 0, 0, 32, 0, 33, 0, 0, 0, 34, 0, + 0, 0, 0, 0, 0, 0, 13, 0, 14, 15, 0, 0, 0, 16, 17, 0, 0, 0, 0, 0, 0, 18, 19, 0, 0, 0, 0, 0, 20, 21, 0, 0, 0, 0, 22, 0, 0, 0, 0, 0, 0, 23, 24, 25, 0, 26, 0, 0, 0, 27, 7, 8, 9, 10, 28, 11, 12, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 851, 852, 853, 854, - 855, 29, 856, 857, 858, 30, 31, 0, 0, 32, - 0, 33, 0, 259, 0, 34, 0, 0, 0, 0, - 0, 0, 0, 13, 0, 14, 15, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 29, 0, 0, 0, 30, 31, 0, 0, 32, + 0, 33, 0, 913, 0, 34, 0, 847, 848, 849, + 850, 0, 0, 13, 0, 14, 15, 0, 0, 851, 16, 17, 0, 0, 0, 0, 0, 0, 18, 19, - 0, 39, 0, 40, 41, 20, 21, 0, 156, 0, - 0, 22, 0, 0, 0, 0, 0, 157, 23, 24, - 25, 0, 26, 47, 158, 49, 27, 7, 8, 9, - 10, 28, 11, 12, 0, 0, 50, 51, 0, 0, - 374, 0, 0, 0, 0, 0, 0, 0, 29, 55, + 0, 0, 0, 0, 0, 20, 21, 0, 0, 0, + 0, 22, 0, 0, 0, 0, 0, 0, 23, 24, + 25, 0, 26, 0, 0, 0, 27, 0, 0, 0, + 0, 28, 0, 132, 133, 134, 135, 136, 137, 138, + 139, 0, 0, 0, 0, 0, 0, 0, 29, 140, 0, 0, 30, 31, 0, 0, 32, 0, 33, 0, - 0, 0, 34, 0, 0, 0, 0, 0, 0, 0, - 13, 0, 14, 15, 0, 0, 101, 16, 17, 0, - 0, 0, 0, 0, 0, 18, 19, 0, 39, 0, - 40, 41, 20, 21, 0, 0, 0, 0, 22, 0, - 0, 0, 0, 0, 0, 23, 24, 25, 0, 26, - 47, 160, 49, 27, 7, 8, 9, 10, 28, 11, - 12, 0, 0, 50, 51, 0, 0, 467, 0, 0, - 0, 0, 0, 0, 0, 29, 55, 0, 0, 30, - 31, 0, 0, 32, 0, 33, 0, 0, 0, 34, - 0, 0, 0, 0, 0, 0, 0, 13, 0, 14, - 15, 0, 0, 112, 16, 17, 0, 0, 0, 0, - 0, 0, 18, 19, 0, 39, 0, 40, 41, 20, - 21, 0, 156, 0, 0, 22, 0, 0, 0, 0, - 0, 157, 23, 24, 25, 0, 26, 47, 158, 49, - 27, 7, 8, 9, 10, 28, 11, 12, 0, 0, - 50, 51, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 29, 55, 0, 0, 30, 31, 0, 0, - 32, 0, 33, 0, 805, 0, 34, 0, 0, 0, - 0, 0, 0, 0, 13, 0, 14, 15, 0, 0, - 0, 16, 17, 0, 0, 0, 0, 0, 0, 18, - 19, 0, 39, 0, 40, 41, 20, 21, 0, 0, - 0, 0, 22, 0, 0, 0, 0, 0, 263, 23, - 24, 25, 0, 26, 47, 160, 49, 27, 7, 8, - 9, 10, 28, 11, 12, 0, 0, 50, 51, 0, - 0, 820, 0, 0, 0, 0, 0, 0, 0, 29, - 55, 0, 0, 30, 31, 0, 0, 32, 0, 33, - 0, 0, 0, 34, 0, 0, 0, 0, 0, 0, - 0, 13, 0, 14, 15, 0, 0, 0, 16, 17, - 0, 0, 0, 0, 0, 0, 18, 19, 0, 0, - 0, 0, 0, 20, 21, 0, 0, 0, 0, 22, - 0, 0, 0, 0, 0, 0, 23, 24, 25, 0, - 26, 0, 0, 0, 27, 7, 8, 9, 10, 28, - 11, 12, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 29, 0, 0, 0, - 30, 31, 0, 0, 32, 0, 33, 0, 907, 0, - 34, 0, 0, 0, 0, 0, 0, 0, 13, 0, - 14, 15, 0, 0, 0, 16, 17, 0, 0, 0, - 0, 0, 0, 18, 19, 0, 0, 0, 0, 0, - 20, 21, 0, 0, 0, 0, 22, 843, 844, 845, - 846, 0, 0, 23, 24, 25, 0, 26, 0, 847, - 0, 27, 0, 0, 0, 0, 28, 0, 132, 133, - 134, 135, 136, 137, 138, 139, 0, 0, 0, 0, - 0, 0, 0, 29, 140, 0, 0, 30, 31, 0, - 0, 32, 0, 33, 0, 0, 0, 34, 132, 133, - 134, 135, 136, 137, 138, 139, 0, 0, 0, 0, - 0, 0, 0, 0, 140, 0, 0, 132, 133, 134, - 135, 136, 137, 138, 139, 0, 0, 0, 0, 0, - 0, 0, 0, 140, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 851, 852, 853, 854, 855, 0, - 856, 857, 858, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 141, 142, 0, 143, 144, 145, 146, - 147, 148, 149, 150, 0, 151, 152, 153, 0, 0, - 0, 320, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 141, 142, 0, 143, 144, 145, 146, - 147, 148, 149, 150, 0, 151, 152, 153, 0, 0, - 0, 872, 141, 142, 0, 143, 144, 145, 146, 147, - 148, 149, 150, 0, 151, 152, 153, 339, 340, 0, - 929, 475, 476, 477, 478, 479, 480, 481, 482, 0, - 0, 0, 0, 0, 0, 0, 0, 483, 0, 484, - 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, - 495, 0, 0, 0, 0, 39, 0, 40, 41, 0, - 496, 0, 44, 0, 0, 0, 0, 0, 0, 0, - 0, 46, 0, 0, 0, 0, 0, 47, 48, 49, - 0, 0, 497, 0, 0, 0, 0, 0, 0, 0, - 50, 51, 0, 0, 191, 192, 0, 0, 0, 0, - 0, 343, 0, 55, 0, 0, 56, 0, 0, 0, - 0, 0, 498, 0, 0, 499, 0, 500, 501, 502, - 503, 504, 505, 506, 507, 508, 509, 510, 0, 511, - 512, 193, 39, 513, 40, 41, 42, 194, 0, 44, - 0, 0, 0, 45, 195, 196, 0, 0, 46, 0, - 191, 192, 0, 197, 47, 48, 49, 0, 198, 0, - 0, 199, 0, 0, 0, 200, 0, 50, 51, 0, - 201, 0, 52, 0, 0, 0, 0, 0, 202, 54, - 55, 0, 203, 56, 204, 0, 0, 193, 39, 205, - 40, 41, 42, 279, 0, 44, 0, 0, 0, 45, - 195, 196, 0, 0, 46, 206, 191, 192, 0, 197, - 47, 48, 49, 0, 198, 0, 0, 199, 0, 0, - 0, 200, 0, 50, 51, 0, 201, 0, 52, 0, - 0, 0, 0, 0, 202, 54, 55, 0, 203, 56, - 204, 0, 0, 193, 39, 0, 40, 41, 42, 194, - 0, 44, 0, 0, 0, 45, 195, 196, 0, 0, - 46, 206, 0, 0, 0, 197, 47, 48, 49, 0, - 198, 0, 0, 199, 0, 0, 0, 200, 0, 50, - 51, 0, 201, 0, 52, 0, 0, 0, 0, 0, - 202, 54, 55, 0, 203, 56, 204, 132, 133, 134, - 135, 136, 137, 138, 139, 0, 0, 0, 0, 0, - 0, 0, 0, 140, 0, 0, 0, 206, 132, 133, - 134, 135, 136, 137, 138, 139, 0, 0, 0, 0, - 0, 0, 0, 0, 140, 583, 584, 585, 586, 587, - 588, 589, 590, 0, 0, 0, 0, 0, 0, 0, - 0, 591, 839, 840, 841, 842, 843, 844, 845, 846, - 0, 0, 0, 0, 0, 0, 0, 0, 847, 839, - 840, 841, 842, 843, 844, 845, 846, 0, 0, 0, - 0, 0, 0, 0, 0, 847, 0, 0, 0, 0, - 870, 0, 141, 142, 0, 143, 144, 145, 146, 147, - 148, 149, 150, 0, 151, 152, 153, 0, 0, 0, - 0, 0, 0, 141, 142, 0, 143, 144, 145, 146, - 147, 148, 149, 150, 0, 151, 152, 153, 0, 0, - 592, 593, 0, 594, 595, 596, 597, 598, 599, 600, - 601, 0, 602, 603, 604, 927, 0, 848, 849, 0, - 850, 0, 0, 851, 852, 853, 854, 855, 0, 856, - 857, 858, 0, 0, 848, 849, 0, 850, 0, 0, - 851, 852, 853, 854, 855, 0, 856, 857, 858, 133, - 134, 135, 136, 137, 138, 139, 0, 0, 0, 0, - 0, 0, 0, 0, 140, 840, 841, 842, 843, 844, - 845, 846, 0, 0, 0, 0, 0, 0, 0, 0, - 847, 134, 135, 136, 137, 138, 139, 0, 0, 0, - 70, 0, 0, 0, 0, 140, 134, 135, 136, 137, - 138, 139, 71, 0, 0, 0, 72, 0, 0, 73, - 140, 134, 135, 136, 137, 138, 139, 74, 0, 75, - 0, 0, 76, 77, 78, 140, 841, 842, 843, 844, - 845, 846, 0, 79, 0, 0, 0, 80, 0, 0, - 847, 81, 0, 0, 142, 0, 143, 144, 145, 146, - 147, 148, 149, 150, 0, 151, 152, 153, 0, 0, - 849, 0, 850, 0, 0, 851, 852, 853, 854, 855, - 0, 856, 857, 858, 0, 142, 0, 143, 144, 145, - 146, 147, 148, 149, 150, 0, 151, 152, 153, 0, - 0, 0, 143, 144, 145, 146, 147, 148, 149, 150, - 0, 151, 152, 153, 0, 0, 0, 0, 144, 145, - 146, 147, 148, 149, 150, -2, 151, 152, 153, 0, - 849, 0, 850, 0, 0, 851, 852, 853, 854, 855, - 0, 856, 857, 858, 841, 842, 843, 844, 845, 846, - 0, 0, 0, 0, 0, 0, 0, 0, 847, 841, - 842, 843, 844, 845, 846, 0, 0, 0, 0, 70, - 0, 0, 0, 847, 0, 0, 0, 0, 0, 0, - 0, 71, 0, 0, 0, 72, 0, 0, 73, 0, - 0, 0, 0, 0, 339, 340, 74, 0, 75, 0, - 0, 76, 77, 78, 0, 0, 0, 0, 0, 0, - 0, 0, 79, 0, 0, 0, 80, 0, 0, 0, - 81, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 82, 0, 39, 38, 40, 41, 341, 342, 0, 44, - 850, 0, 0, 851, 852, 853, 854, 855, 46, 856, - 857, 858, 0, 0, 47, 48, 49, 0, 851, 852, - 853, 854, 855, 0, 856, 857, 858, 50, 51, 0, - 39, 0, 40, 41, 42, 43, 0, 44, 343, 0, - 55, 45, 0, 56, 0, 38, 46, 0, 0, 0, - 0, 0, 47, 48, 49, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 50, 51, 0, 0, 0, - 52, 0, 0, 0, 0, 0, 53, 54, 55, 0, - 0, 56, 39, 0, 40, 41, 42, 287, 0, 44, - 0, 0, 0, 45, 0, 102, 0, 0, 46, 0, + 0, 0, 34, 132, 133, 134, 135, 136, 137, 138, + 139, 0, 0, 0, 856, 857, 858, 859, 860, 140, + 861, 862, 863, 477, 478, 479, 480, 481, 482, 483, + 484, 0, 0, 0, 0, 0, 0, 0, 0, 485, + 0, 486, 487, 488, 489, 490, 491, 492, 493, 494, + 495, 496, 497, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 498, 0, 0, 0, 0, 0, 141, 142, + 143, 144, 145, 146, 147, 148, 149, 150, 151, 0, + 152, 153, 154, 0, 499, 0, 877, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 192, 193, 141, 142, + 143, 144, 145, 146, 147, 148, 149, 150, 151, 0, + 152, 153, 154, 0, 500, 0, 935, 501, 0, 502, + 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, + 0, 513, 514, 194, 39, 515, 40, 41, 42, 195, + 0, 44, 0, 0, 0, 45, 196, 197, 0, 0, + 46, 0, 192, 193, 0, 198, 47, 48, 49, 0, + 199, 0, 0, 200, 0, 0, 0, 201, 0, 50, + 51, 0, 202, 0, 52, 0, 0, 0, 0, 0, + 203, 54, 55, 0, 204, 56, 205, 0, 0, 194, + 39, 206, 40, 41, 42, 281, 0, 44, 0, 0, + 0, 45, 196, 197, 0, 0, 46, 207, 192, 193, + 0, 198, 47, 48, 49, 0, 199, 0, 0, 200, + 0, 0, 0, 201, 0, 50, 51, 0, 202, 0, + 52, 0, 0, 0, 0, 0, 203, 54, 55, 0, + 204, 56, 205, 0, 0, 194, 39, 0, 40, 41, + 42, 195, 0, 44, 0, 0, 0, 45, 196, 197, + 0, 0, 46, 207, 0, 0, 0, 198, 47, 48, + 49, 0, 199, 0, 0, 200, 0, 0, 0, 201, + 0, 50, 51, 0, 202, 0, 52, 0, 0, 0, + 0, 0, 203, 54, 55, 0, 204, 56, 205, 132, + 133, 134, 135, 136, 137, 138, 139, 0, 0, 0, + 0, 0, 0, 0, 0, 140, 0, 0, 0, 207, + 132, 133, 134, 135, 136, 137, 138, 139, 0, 0, + 0, 0, 0, 0, 0, 0, 140, 585, 586, 587, + 588, 589, 590, 591, 592, 0, 0, 0, 0, 0, + 0, 0, 0, 593, 843, 844, 845, 846, 847, 848, + 849, 850, 0, 0, 0, 0, 0, 0, 0, 0, + 851, 843, 844, 845, 846, 847, 848, 849, 850, 0, + 0, 0, 0, 0, 0, 0, 0, 851, 0, 0, + 0, 0, 875, 0, 141, 142, 143, 144, 145, 146, + 147, 148, 149, 150, 151, 0, 152, 153, 154, 0, + 0, 0, 0, 0, 0, 141, 142, 143, 144, 145, + 146, 147, 148, 149, 150, 151, 0, 152, 153, 154, + 0, 0, 594, 595, 596, 597, 598, 599, 600, 601, + 602, 603, 604, 0, 605, 606, 607, 933, 0, 852, + 853, 854, 855, 0, 0, 856, 857, 858, 859, 860, + 0, 861, 862, 863, 0, 0, 852, 853, 854, 855, + 0, 0, 856, 857, 858, 859, 860, 0, 861, 862, + 863, 133, 134, 135, 136, 137, 138, 139, 0, 0, + 0, 0, 0, 0, 0, 0, 140, 844, 845, 846, + 847, 848, 849, 850, 0, 0, 0, 0, 0, 0, + 0, 0, 851, 134, 135, 136, 137, 138, 139, 0, + 0, 0, 70, 0, 0, 0, 0, 140, 134, 135, + 136, 137, 138, 139, 71, 0, 0, 0, 72, 0, + 0, 73, 140, 845, 846, 847, 848, 849, 850, 74, + 0, 75, 0, 0, 76, 77, 78, 851, 134, 135, + 136, 137, 138, 139, 0, 79, 0, 0, 0, 80, + 0, 0, 140, 81, 0, 0, 142, 143, 144, 145, + 146, 147, 148, 149, 150, 151, 0, 152, 153, 154, + 0, 0, 853, 854, 855, 0, 0, 856, 857, 858, + 859, 860, 0, 861, 862, 863, 0, 0, 143, 144, + 145, 146, 147, 148, 149, 150, 151, 0, 152, 153, + 154, 0, 0, 0, 144, 145, 146, 147, 148, 149, + 150, 151, 0, 152, 153, 154, 0, 853, 854, 855, + 0, 0, 856, 857, 858, 859, 860, 0, 861, 862, + 863, 0, 0, 0, 0, 145, 146, 147, 148, 149, + 150, 151, 0, 152, 153, 154, 845, 846, 847, 848, + 849, 850, 0, 0, 0, 0, 0, 0, 0, 0, + 851, 845, 846, 847, 848, 849, 850, 0, 0, 0, + 341, 342, 0, 0, 0, 851, 845, 846, 847, 848, + 849, 850, 0, 0, 0, 0, 0, 0, 0, 0, + 851, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 39, 0, + 40, 41, 343, 344, 0, 44, 0, 0, 0, 0, + 0, 0, 0, 0, 46, 0, 0, 0, -2, 0, + 47, 48, 49, 0, 0, 0, 0, 0, 0, 0, + 0, 854, 855, 50, 51, 856, 857, 858, 859, 860, + 0, 861, 862, 863, 345, 0, 55, 855, 0, 56, + 856, 857, 858, 859, 860, 0, 861, 862, 863, 0, + 0, 0, 70, 0, 0, 856, 857, 858, 859, 860, + 0, 861, 862, 863, 71, 0, 341, 342, 72, 0, + 0, 73, 0, 0, 0, 0, 0, 0, 0, 74, + 0, 75, 0, 0, 76, 77, 78, 0, 0, 0, + 0, 0, 0, 0, 0, 79, 0, 0, 0, 80, + 0, 0, 0, 81, 39, 38, 40, 41, 0, 0, + 0, 44, 0, 82, 0, 0, 0, 0, 0, 0, + 46, 0, 0, 0, 0, 0, 47, 48, 49, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, + 51, 0, 39, 0, 40, 41, 42, 43, 0, 44, + 345, 0, 55, 45, 0, 56, 0, 38, 46, 0, 0, 0, 0, 0, 47, 48, 49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 51, 0, 0, 0, 52, 0, 0, 0, 0, 0, 53, 54, - 55, 0, 39, 56, 40, 41, 42, 0, 0, 44, - 0, 0, 0, 45, 0, 38, 0, 0, 46, 0, - 0, 0, 0, 0, 47, 48, 49, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 50, 51, 0, - 0, 0, 52, 0, 0, 0, 0, 0, 103, 54, - 55, 0, 39, 56, 40, 41, 42, 0, 0, 44, - 0, 0, 0, 45, 0, 0, 0, 0, 46, 0, - 0, 0, 0, 0, 47, 48, 49, 70, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 50, 51, 71, - 0, 0, 52, 72, 0, 0, 73, 0, 53, 54, - 55, 0, 70, 56, 74, 0, 75, 0, 0, 76, - 77, 78, 0, 0, 71, 0, 0, 0, 72, 0, - 79, 73, 0, 0, 80, 0, 0, 70, 81, 74, - 0, 75, 0, 0, 76, 77, 78, 0, 82, 71, - 0, 0, 0, 72, 0, 79, 73, 0, 0, 80, - 0, 0, 70, 81, 74, 0, 75, 337, 0, 76, - 77, 78, 0, 82, 71, 0, 0, 0, 72, 0, - 79, 73, 0, 0, 80, 0, 0, 70, 81, 74, - 0, 75, 395, 0, 76, 77, 78, 0, 82, 71, - 0, 0, 0, 72, 0, 79, 73, 0, 0, 80, - 0, 0, 0, 81, 74, 0, 75, 459, 0, 76, - 77, 78, 0, 82, 0, 0, 0, 0, 0, 0, - 79, 0, 0, 0, 80, 0, 0, 0, 81, 0, - 0, 0, 546, 0, 0, 0, 0, 0, 82, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 749 + 55, 0, 0, 56, 39, 0, 40, 41, 42, 289, + 0, 44, 0, 0, 0, 45, 0, 102, 0, 0, + 46, 0, 0, 0, 0, 0, 47, 48, 49, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, + 51, 0, 0, 0, 52, 0, 0, 0, 0, 0, + 53, 54, 55, 0, 39, 56, 40, 41, 42, 0, + 0, 44, 0, 0, 0, 45, 0, 38, 0, 0, + 46, 0, 0, 0, 0, 0, 47, 48, 49, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, + 51, 0, 0, 0, 52, 0, 0, 0, 0, 0, + 103, 54, 55, 0, 39, 56, 40, 41, 42, 0, + 0, 44, 0, 0, 0, 45, 0, 0, 0, 0, + 46, 0, 0, 0, 0, 0, 47, 48, 49, 70, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, + 51, 71, 0, 0, 52, 72, 0, 0, 73, 0, + 53, 54, 55, 0, 70, 56, 74, 0, 75, 0, + 0, 76, 77, 78, 0, 0, 71, 0, 0, 0, + 72, 0, 79, 73, 0, 0, 80, 0, 0, 70, + 81, 74, 0, 75, 0, 0, 76, 77, 78, 0, + 82, 71, 0, 0, 0, 72, 0, 79, 73, 0, + 0, 80, 0, 0, 70, 81, 74, 0, 75, 339, + 0, 76, 77, 78, 0, 82, 71, 0, 0, 0, + 72, 0, 79, 73, 0, 0, 80, 0, 0, 70, + 81, 74, 0, 75, 397, 0, 76, 77, 78, 0, + 82, 71, 0, 0, 0, 72, 0, 79, 73, 0, + 0, 80, 0, 0, 0, 81, 74, 0, 75, 461, + 0, 76, 77, 78, 0, 82, 0, 0, 0, 0, + 0, 0, 79, 0, 0, 0, 80, 0, 0, 0, + 81, 0, 0, 0, 548, 0, 0, 0, 0, 0, + 82, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 752 }; -static const short int yycheck[] = +static const yytype_int16 yycheck[] = { - 1, 43, 86, 467, 5, 33, 33, 94, 95, 96, - 97, 22, 99, 100, 101, 86, 86, 86, 181, 0, - 421, 108, 109, 80, 155, 112, 352, 12, 356, 355, - 104, 357, 458, 10, 8, 9, 121, 168, 169, 170, - 171, 103, 8, 9, 106, 8, 9, 22, 280, 123, - 451, 377, 195, 379, 380, 381, 57, 8, 9, 10, - 2, 389, 121, 358, 8, 9, 107, 362, 363, 364, - 98, 8, 9, 10, 121, 86, 76, 77, 78, 80, - 104, 122, 110, 111, 121, 397, 398, 29, 30, 31, - 32, 104, 34, 419, 29, 521, 96, 8, 9, 123, - 51, 104, 121, 187, 103, 112, 105, 106, 107, 272, - 123, 86, 104, 121, 51, 121, 187, 187, 187, 104, - 123, 447, 121, 122, 29, 152, 608, 290, 8, 9, - 10, 123, 460, 264, 560, 107, 406, 103, 75, 116, - 103, 228, 10, 413, 414, 415, 416, 473, 121, 123, - 122, 383, 194, 121, 155, 425, 121, 199, 453, 103, - 111, 22, 73, 564, 121, 116, 567, 168, 169, 170, - 171, 51, 442, 29, 111, 338, 187, 6, 179, 116, - 181, 582, 112, 51, 121, 120, 121, 122, 121, 421, - 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, - 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, - 353, 153, 187, 356, 29, 120, 121, 122, 106, 451, - 532, 104, 121, 104, 536, 86, 538, 106, 540, 541, - 542, 111, 104, 104, 8, 9, 116, 279, 401, 106, - 123, 121, 123, 111, 106, 287, 389, 29, 116, 8, - 9, 123, 123, 121, 104, 104, 121, 739, 114, 115, - 116, 117, 118, 264, 120, 121, 122, 278, 269, 270, - 123, 272, 273, 123, 123, 276, 50, 278, 104, 103, - 116, 105, 106, 107, 554, 613, 4, 288, 122, 290, - 8, 9, 103, 106, 236, 237, 103, 123, 568, 114, - 115, 116, 117, 118, 112, 120, 121, 122, 121, 122, - 123, 353, 86, 48, 356, 50, 51, 460, 92, 93, - 55, 121, 96, 100, 101, 102, 187, 269, 106, 330, - 331, 342, 564, 815, 116, 117, 118, 338, 120, 121, - 122, 121, 29, 121, 122, 123, 347, 389, 76, 77, - 78, 408, 353, 295, 6, 356, 820, 358, 385, 105, - 387, 362, 363, 364, 122, 123, 367, 121, 122, 370, - 123, 772, 104, 374, 103, 104, 318, 121, 122, 466, - 121, 122, 383, 122, 123, 427, 123, 123, 389, 124, - 125, 126, 127, 123, 113, 877, 123, 123, 409, 881, - 401, 123, 123, 404, 113, 406, 734, 408, 123, 437, - 437, 123, 413, 414, 415, 416, 417, 123, 460, 430, - 421, 123, 106, 158, 425, 160, 8, 9, 104, 116, - 117, 118, 374, 120, 121, 122, 918, 123, 581, 121, - 922, 442, 121, 769, 121, 126, 121, 104, 8, 9, - 451, 393, 453, 935, 124, 430, 106, 458, 107, 460, - 103, 116, 944, 104, 104, 549, 467, 113, 50, 116, - 613, 121, 122, 123, 116, 104, 124, 53, 549, 549, - 549, 107, 121, 87, 812, 811, 124, 63, 64, 116, - 50, 112, 434, 435, 436, 112, 438, 19, 20, 75, - 828, 121, 124, 122, 86, 81, 104, 29, 123, 123, - 92, 93, 123, 126, 96, 104, 458, 123, 121, 547, - 521, 107, 122, 104, 123, 467, 86, 103, 51, 105, - 106, 4, 92, 93, 860, 396, 397, 398, 549, 581, - 104, 569, 543, 571, 572, 123, 874, 548, 121, 126, - 124, 123, 121, 554, 124, 126, 123, 559, 112, 560, - 121, 112, 104, 564, 126, 113, 567, 568, 123, 430, - 113, 613, 88, 123, 549, 121, 603, 519, 579, 521, - 105, 582, 123, 123, 121, 123, 121, 121, 916, 113, - 123, 734, 114, 115, 116, 117, 118, 124, 120, 121, - 122, 113, 123, 123, 180, 123, 121, 608, 121, 123, - 465, 179, 613, 189, 123, 408, 736, 811, 560, 758, - 759, 760, 761, 769, 763, 860, 202, 408, 187, 342, - 206, 548, 581, 409, 187, 430, 402, 213, 214, 330, - 698, 583, 584, 585, 586, 587, 588, 589, 590, 591, - 592, 593, 594, 595, 596, 597, 598, 599, 600, 601, - 602, 464, 604, -1, -1, -1, -1, -1, -1, 812, - -1, 532, -1, -1, -1, 536, -1, 538, -1, 540, - 541, 542, -1, -1, -1, 828, -1, 774, 549, -1, - -1, -1, 734, -1, 270, -1, -1, 698, -1, -1, - 839, 840, 841, 842, 843, 844, 845, 846, 847, 848, - 849, 850, 851, 852, 853, 854, 855, 856, 294, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, 874, -1, 734, 762, 762, -1, -1, 739, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 887, -1, - -1, -1, -1, -1, 330, -1, 758, 759, 760, 761, - 336, 763, -1, -1, -1, 341, -1, 343, -1, -1, - 812, 772, -1, 916, -1, 3, 4, 5, 6, -1, - 8, 8, 9, -1, -1, 727, 828, -1, 927, -1, - -1, -1, -1, -1, -1, -1, -1, -1, 740, -1, - -1, 829, 830, 831, -1, 17, 18, 19, 20, -1, - -1, 812, -1, -1, 815, -1, 392, 29, -1, 820, - 396, 397, 398, 50, -1, -1, 54, 828, 770, -1, - 857, -1, 874, 61, -1, 777, -1, 839, 840, 841, - 842, 843, 844, 845, 846, 847, 848, 849, 850, 851, - 852, 853, 854, 855, 856, 83, -1, 85, -1, 86, + 1, 22, 10, 469, 5, 43, 33, 94, 95, 96, + 97, 86, 99, 100, 101, 86, 0, 86, 86, 22, + 80, 108, 109, 354, 22, 112, 357, 121, 359, 10, + 423, 182, 8, 9, 460, 12, 121, 8, 9, 399, + 400, 121, 358, 104, 33, 104, 29, 121, 379, 104, + 381, 382, 383, 282, 8, 9, 57, 76, 77, 78, + 453, 107, 123, 104, 123, 86, 8, 9, 123, 121, + 51, 2, 104, 112, 104, 391, 122, 96, 121, 80, + 8, 9, 123, 86, 121, 8, 9, 10, 86, 112, + 421, 123, 103, 123, 105, 106, 107, 523, 29, 30, + 31, 32, 73, 34, 196, 100, 101, 102, 116, 98, + 121, 122, 103, 188, 105, 106, 107, 188, 449, 188, + 188, 110, 111, 274, 408, 121, 153, 104, 51, 104, + 111, 415, 416, 417, 418, 116, 562, 120, 121, 122, + 121, 292, 229, 427, 475, 6, 462, 123, 123, 103, + 156, 48, 75, 50, 51, 156, 385, 195, 55, 121, + 444, 103, 200, 169, 170, 171, 172, 188, 169, 170, + 171, 172, 107, 566, 534, 103, 569, 121, 538, 180, + 540, 182, 542, 543, 544, 188, 106, 122, 111, 340, + 188, 584, 121, 116, 423, 8, 9, 10, 121, 8, + 9, 132, 133, 134, 135, 136, 137, 138, 139, 140, + 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, + 151, 152, 29, 154, 453, 121, 122, 124, 125, 126, + 127, 104, 121, 8, 9, 10, 29, 104, 51, 104, + 360, 121, 104, 281, 364, 365, 366, 106, 104, 4, + 123, 289, 403, 8, 9, 106, 123, 106, 123, 123, + 266, 123, 159, 355, 161, 266, 358, 123, 122, 123, + 271, 272, 556, 274, 275, 103, 51, 278, 106, 280, + 103, 104, 280, 121, 122, 29, 570, 121, 122, 290, + 121, 292, 122, 123, 29, 116, 611, 122, 111, 391, + 616, 103, 103, 116, 112, 6, 237, 238, 121, 116, + 117, 118, 123, 120, 121, 122, 121, 355, 121, 105, + 358, 114, 115, 116, 117, 118, 104, 120, 121, 122, + 113, 332, 333, 123, 123, 455, 111, 566, 123, 340, + 271, 116, 76, 77, 78, 106, 344, 123, 349, 123, + 410, 123, 123, 391, 355, 123, 123, 358, 824, 360, + 387, 123, 389, 364, 365, 366, 297, 113, 369, 123, + 462, 372, 116, 117, 118, 376, 120, 121, 122, 104, + 121, 468, 775, 106, 385, 120, 121, 122, 121, 320, + 391, 429, 123, 8, 9, 398, 399, 400, 121, 122, + 123, 121, 403, 121, 126, 406, 104, 408, 124, 410, + 107, 432, 439, 411, 415, 416, 417, 418, 419, 103, + 113, 737, 423, 106, 462, 104, 427, 742, 104, 432, + 116, 116, 124, 121, 432, 50, 116, 124, 121, 122, + 123, 772, 104, 444, 107, 376, 87, 116, 8, 9, + 439, 112, 453, 121, 455, 112, 123, 123, 122, 460, + 104, 462, 104, 123, 395, 124, 104, 107, 469, 123, + 126, 86, 8, 9, 122, 53, 551, 92, 93, 106, + 551, 96, 551, 551, 815, 63, 64, 121, 123, 51, + 50, 583, 4, 121, 121, 122, 123, 75, 104, 123, + 816, 126, 124, 81, 819, 436, 437, 438, 124, 440, + 123, 123, 126, 121, 50, 112, 832, 121, 112, 126, + 104, 113, 523, 123, 616, 103, 86, 105, 106, 460, + 551, 534, 92, 93, 865, 538, 96, 540, 469, 542, + 543, 544, 113, 88, 545, 583, 121, 123, 551, 550, + 86, 123, 105, 551, 123, 556, 92, 93, 121, 123, + 549, 562, 121, 879, 121, 566, 124, 882, 569, 570, + 113, 886, 123, 123, 123, 113, 123, 121, 616, 606, + 581, 121, 571, 584, 573, 574, 123, 180, 123, 467, + 521, 410, 523, 739, 815, 3, 4, 5, 6, 772, + 8, 8, 9, 181, 865, 188, 922, 411, 344, 924, + 611, 410, 190, 928, 550, 616, 583, 432, 188, 332, + 404, 466, 701, -1, -1, 203, 941, -1, -1, 207, + -1, 562, 19, 20, -1, 950, 214, 215, -1, -1, + -1, -1, 29, 50, -1, 737, 54, -1, -1, -1, + -1, -1, -1, 61, 585, 586, 587, 588, 589, 590, + 591, 592, 593, 594, 595, 596, 597, 598, 599, 600, + 601, 602, 603, 604, 605, 83, 607, 85, -1, 86, -1, 89, -1, -1, -1, 92, 93, -1, -1, 96, - -1, -1, -1, 874, 916, -1, 877, -1, 820, -1, - 881, -1, -1, 111, 911, 887, 913, 115, 116, 465, - -1, 119, -1, 121, -1, -1, 46, 125, 48, 49, - 112, 113, 114, 115, 116, 117, 118, -1, 120, 121, - 122, 938, 939, -1, -1, 916, 858, 918, 68, 69, - 70, 922, -1, -1, -1, 927, -1, -1, 870, -1, - -1, 81, 82, -1, 935, -1, -1, -1, -1, -1, - -1, -1, 518, 944, 94, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 531, 532, 533, -1, -1, - 536, -1, 538, -1, 540, 541, 542, -1, -1, 545, - 3, 4, 5, 6, 7, 8, 9, 10, -1, 12, - 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, - -1, -1, -1, -1, -1, -1, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, - 43, -1, -1, 46, 47, 48, 49, 50, 51, 52, - 53, 54, 55, -1, 57, 58, 59, 60, 61, 62, - 63, 64, 65, 66, 67, 68, 69, -1, -1, 72, - -1, 74, 75, 76, 77, 78, 79, 80, 81, 82, - 83, 84, 85, 86, -1, 88, 89, 90, 91, 92, - 93, 94, -1, 96, 97, 98, 99, -1, -1, -1, - 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, - 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, - 123, 124, 125, 126, 3, 4, 5, 6, 7, 8, - 9, 10, -1, 12, 13, 14, 15, 16, 17, 18, - 19, 20, 21, 22, -1, -1, -1, -1, -1, -1, - 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, - 39, 40, 41, 42, 43, -1, -1, 46, 47, 48, - 49, 50, 51, 52, 53, 54, 55, -1, 57, 58, - 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, - 69, -1, -1, 72, -1, 74, 75, 76, 77, 78, - 79, 80, 81, 82, 83, 84, 85, 86, -1, 88, - 89, 90, 91, 92, 93, 94, -1, 96, 97, 98, - 99, -1, -1, -1, 103, 104, 105, 106, 107, 108, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - 119, 120, 121, 122, 123, -1, 125, 126, 3, 4, - 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, + 777, -1, -1, -1, 272, 561, -1, -1, -1, 737, + 701, -1, -1, 111, 29, 19, 20, 115, 116, -1, + -1, 119, -1, 121, -1, 29, -1, 125, 296, -1, + -1, -1, -1, -1, 816, -1, -1, 114, 115, 116, + 117, 118, -1, 120, 121, 122, 737, -1, 765, -1, + 832, 742, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, 332, -1, -1, -1, -1, -1, + 338, -1, -1, -1, -1, 343, -1, 345, 15, 16, + 17, 18, 19, 20, 775, -1, 765, -1, 816, -1, + -1, -1, 29, -1, -1, -1, -1, 879, -1, 114, + 115, 116, 117, 118, 832, 120, 121, 122, -1, 730, + 114, 115, 116, 117, 118, -1, 120, 121, 122, -1, + -1, -1, 743, -1, -1, 816, 394, -1, 819, -1, + 398, 399, 400, 824, -1, -1, -1, -1, -1, -1, + 922, 832, -1, -1, -1, 862, -1, -1, -1, -1, + -1, 879, 773, -1, 833, 834, 835, -1, -1, 780, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 13, 14, 15, 16, - 17, 18, 19, 20, -1, -1, -1, 46, -1, 48, - 49, 46, 29, 48, 49, 50, 51, -1, 53, 54, - -1, -1, 57, -1, -1, -1, 61, 62, -1, 68, - 69, 70, -1, 68, 69, 70, -1, -1, -1, 74, - -1, -1, 81, 82, -1, -1, 81, 82, 83, -1, - 85, 86, -1, -1, 89, 94, -1, 92, 93, 94, + -1, -1, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, -1, 120, 121, 122, -1, -1, 879, -1, + -1, 882, -1, -1, 922, 886, -1, -1, -1, 467, + 917, -1, 919, 824, -1, 761, 762, 763, 764, -1, + 766, -1, -1, 13, 14, 15, 16, 17, 18, 19, + 20, -1, -1, -1, -1, -1, -1, 944, 945, 29, + -1, 922, -1, 924, -1, -1, -1, 928, -1, -1, + -1, -1, 863, -1, -1, -1, -1, -1, -1, -1, + 941, -1, 520, -1, 875, 761, 762, 763, 764, 950, + 766, 17, 18, 19, 20, 533, 534, 535, -1, -1, + 538, -1, 540, 29, 542, 543, 544, -1, -1, 547, + -1, -1, -1, -1, -1, -1, -1, 843, 844, 845, + 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, + 856, 857, 858, 859, 860, 861, -1, -1, 108, 109, + 110, 111, 112, 113, 114, 115, 116, 117, 118, -1, + 120, 121, 122, -1, -1, -1, 126, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 892, 843, 844, 845, + 846, 847, 848, 849, 850, 851, 852, 853, 854, 855, + 856, 857, 858, 859, 860, 861, 112, 113, 114, 115, + 116, 117, 118, -1, 120, 121, 122, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 933, -1, -1, + -1, -1, -1, -1, -1, -1, 892, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 3, 4, 5, 6, 7, 8, 9, 10, + -1, 12, 13, 14, 15, 16, 17, 18, 19, 20, + 21, 22, -1, -1, -1, -1, -1, 933, 29, 30, + 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, + 41, 42, 43, -1, -1, 46, 47, 48, 49, 50, + 51, 52, 53, 54, 55, -1, 57, 58, 59, 60, + 61, 62, 63, 64, 65, 66, 67, 68, 69, -1, + -1, 72, -1, 74, 75, 76, 77, 78, 79, 80, + 81, 82, 83, 84, 85, 86, -1, 88, 89, 90, + 91, 92, 93, 94, -1, 96, 97, 98, 99, -1, + -1, -1, 103, 104, 105, 106, 107, 108, 109, 110, + 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, + 121, 122, 123, 124, 125, 126, 3, 4, 5, 6, + 7, 8, 9, 10, -1, 12, 13, 14, 15, 16, + 17, 18, 19, 20, 21, 22, -1, -1, -1, -1, + -1, -1, 29, 30, 31, 32, 33, 34, 35, 36, + 37, 38, 39, 40, 41, 42, 43, -1, -1, 46, + 47, 48, 49, 50, 51, 52, 53, 54, 55, -1, + 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, + 67, 68, 69, -1, -1, 72, -1, 74, 75, 76, + 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, + -1, 88, 89, 90, 91, 92, 93, 94, -1, 96, + 97, 98, 99, -1, -1, -1, 103, 104, 105, 106, + 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 120, 121, 122, 123, -1, 125, 126, + -1, -1, 920, 3, 4, 5, 6, -1, 8, 9, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 13, 14, 15, 16, 17, 18, 19, 20, -1, + -1, -1, 46, -1, 48, 49, 46, 29, 48, 49, + 50, 51, -1, 53, 54, -1, -1, 57, -1, -1, + -1, 61, 62, -1, 68, 69, 70, -1, 68, 69, + 70, -1, -1, -1, 74, -1, -1, 81, 82, -1, + -1, 81, 82, 83, -1, 85, 86, -1, -1, 89, + 94, -1, 92, 93, 94, -1, -1, 97, 3, 4, + 5, 6, -1, 8, 9, -1, -1, 12, -1, -1, + -1, 111, -1, -1, -1, 115, 116, 121, -1, 119, + -1, 121, -1, -1, 106, 125, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, -1, 120, 121, + 122, 46, -1, 48, 49, 50, 51, -1, 53, 54, + -1, -1, 57, -1, -1, -1, 61, 62, -1, -1, + -1, -1, -1, 68, 69, 70, -1, -1, -1, 74, + -1, -1, -1, -1, -1, -1, 81, 82, 83, -1, + 85, 86, -1, -1, 89, -1, -1, 92, 93, 94, -1, -1, 97, 3, 4, 5, 6, -1, 8, 9, -1, -1, 12, -1, -1, -1, 111, -1, -1, -1, - 115, 116, 121, -1, 119, -1, 121, -1, 914, 106, - 125, 108, 109, -1, 111, 112, 113, 114, 115, 116, - 117, 118, -1, 120, 121, 122, 46, -1, 48, 49, + 115, -1, -1, -1, 119, -1, 121, -1, -1, -1, + 125, 13, 14, 15, 16, 17, 18, 19, 20, -1, + -1, -1, 46, -1, 48, 49, 46, 29, 48, 49, 50, 51, -1, 53, 54, -1, -1, 57, -1, -1, - -1, 61, 62, -1, -1, -1, -1, -1, 68, 69, - 70, -1, -1, -1, 74, -1, -1, -1, -1, -1, + -1, 61, 62, -1, 68, 69, 70, -1, 68, 69, + 70, -1, -1, -1, 74, -1, -1, 81, 82, -1, -1, 81, 82, 83, -1, 85, 86, -1, -1, 89, - -1, -1, 92, 93, 94, -1, -1, 97, 3, 4, - 5, 6, -1, 8, 9, -1, -1, 12, -1, -1, - -1, 111, -1, -1, -1, 115, -1, -1, -1, 119, - -1, 121, -1, -1, -1, 125, 13, 14, 15, 16, - 17, 18, 19, 20, -1, -1, -1, 46, -1, 48, - 49, 46, 29, 48, 49, 50, 51, -1, 53, 54, - -1, -1, 57, -1, -1, -1, 61, 62, -1, 68, - 69, 70, -1, 68, 69, 70, -1, -1, -1, 74, - -1, -1, 81, 82, -1, -1, 81, 82, 83, -1, - 85, 86, -1, -1, 89, 94, -1, 92, 93, 94, - -1, -1, 97, 3, 4, 5, 6, -1, 8, 9, - -1, 19, 20, -1, -1, -1, 111, -1, -1, -1, - 115, 29, 121, -1, 119, -1, 121, -1, 105, -1, - 125, 108, 109, -1, 111, 112, 113, 114, 115, 116, - 117, 118, -1, 120, 121, 122, 46, -1, 48, 49, + 94, -1, 92, 93, 94, -1, -1, 97, 3, 4, + 5, 6, -1, 8, 9, -1, -1, -1, -1, -1, + -1, 111, -1, -1, -1, 115, -1, 121, -1, 119, + -1, 121, -1, 105, -1, 125, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, -1, 120, 121, + 122, 46, -1, 48, 49, -1, -1, -1, 53, 54, + -1, -1, -1, -1, -1, -1, 61, 62, -1, 46, + -1, 48, 49, 68, 69, -1, 53, -1, -1, 74, + -1, -1, -1, -1, -1, 62, 81, 82, 83, -1, + 85, 68, 69, 70, 89, 3, 4, 5, 6, 94, + 8, 9, -1, -1, 81, 82, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 111, 94, -1, -1, + 115, 116, -1, -1, 119, -1, 121, -1, 123, -1, + 125, -1, -1, -1, -1, -1, -1, -1, 46, -1, + 48, 49, -1, -1, 121, 53, 54, -1, -1, -1, + -1, -1, -1, 61, 62, -1, 46, -1, 48, 49, + 68, 69, -1, -1, -1, -1, 74, -1, -1, -1, + -1, -1, -1, 81, 82, 83, -1, 85, 68, 69, + 70, 89, 3, 4, 5, 6, 94, 8, 9, -1, + -1, 81, 82, -1, -1, 103, -1, -1, -1, -1, + -1, -1, -1, 111, 94, -1, -1, 115, 116, -1, + -1, 119, -1, 121, -1, -1, -1, 125, -1, -1, + -1, -1, -1, -1, -1, 46, -1, 48, 49, -1, + -1, 121, 53, 54, -1, -1, -1, -1, -1, -1, + 61, 62, -1, 46, -1, 48, 49, 68, 69, -1, + 53, -1, -1, 74, -1, -1, -1, -1, -1, 62, + 81, 82, 83, -1, 85, 68, 69, 70, 89, 3, + 4, 5, 6, 94, 8, 9, -1, -1, 81, 82, + -1, -1, 103, -1, -1, -1, -1, -1, -1, -1, + 111, 94, -1, -1, 115, 116, -1, -1, 119, -1, + 121, -1, -1, -1, 125, -1, -1, -1, -1, -1, + -1, -1, 46, -1, 48, 49, -1, -1, -1, 53, + 54, -1, -1, -1, -1, -1, -1, 61, 62, -1, + 46, -1, 48, 49, 68, 69, -1, -1, -1, -1, + 74, -1, -1, -1, -1, -1, 62, 81, 82, 83, + -1, 85, 68, 69, 70, 89, 3, 4, 5, 6, + 94, 8, 9, -1, -1, 81, 82, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 111, 94, -1, + -1, 115, 116, -1, -1, 119, -1, 121, -1, 123, + -1, 125, -1, -1, -1, -1, -1, -1, -1, 46, + -1, 48, 49, -1, -1, -1, 53, 54, -1, -1, + -1, -1, -1, -1, 61, 62, -1, 46, -1, 48, + 49, 68, 69, -1, -1, -1, -1, 74, -1, -1, + -1, -1, -1, -1, 81, 82, 83, -1, 85, 68, + 69, 70, 89, 3, 4, 5, 6, 94, 8, 9, + -1, -1, 81, 82, -1, -1, 103, -1, -1, -1, + -1, -1, -1, -1, 111, 94, -1, -1, 115, 116, + -1, -1, 119, -1, 121, -1, -1, -1, 125, -1, + -1, -1, -1, -1, -1, -1, 46, -1, 48, 49, -1, -1, -1, 53, 54, -1, -1, -1, -1, -1, -1, 61, 62, -1, -1, -1, -1, -1, 68, 69, -1, -1, -1, -1, 74, -1, -1, -1, -1, -1, -1, 81, 82, 83, -1, 85, -1, -1, -1, 89, 3, 4, 5, 6, 94, 8, 9, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 114, 115, 116, 117, - 118, 111, 120, 121, 122, 115, 116, -1, -1, 119, - -1, 121, -1, 123, -1, 125, -1, -1, -1, -1, - -1, -1, -1, 46, -1, 48, 49, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, 111, -1, -1, -1, 115, 116, -1, -1, 119, + -1, 121, -1, 123, -1, 125, -1, 17, 18, 19, + 20, -1, -1, 46, -1, 48, 49, -1, -1, 29, 53, 54, -1, -1, -1, -1, -1, -1, 61, 62, - -1, 46, -1, 48, 49, 68, 69, -1, 53, -1, - -1, 74, -1, -1, -1, -1, -1, 62, 81, 82, - 83, -1, 85, 68, 69, 70, 89, 3, 4, 5, - 6, 94, 8, 9, -1, -1, 81, 82, -1, -1, - 103, -1, -1, -1, -1, -1, -1, -1, 111, 94, + -1, -1, -1, -1, -1, 68, 69, -1, -1, -1, + -1, 74, -1, -1, -1, -1, -1, -1, 81, 82, + 83, -1, 85, -1, -1, -1, 89, -1, -1, -1, + -1, 94, -1, 13, 14, 15, 16, 17, 18, 19, + 20, -1, -1, -1, -1, -1, -1, -1, 111, 29, -1, -1, 115, 116, -1, -1, 119, -1, 121, -1, - -1, -1, 125, -1, -1, -1, -1, -1, -1, -1, - 46, -1, 48, 49, -1, -1, 121, 53, 54, -1, - -1, -1, -1, -1, -1, 61, 62, -1, 46, -1, - 48, 49, 68, 69, -1, -1, -1, -1, 74, -1, - -1, -1, -1, -1, -1, 81, 82, 83, -1, 85, - 68, 69, 70, 89, 3, 4, 5, 6, 94, 8, - 9, -1, -1, 81, 82, -1, -1, 103, -1, -1, - -1, -1, -1, -1, -1, 111, 94, -1, -1, 115, - 116, -1, -1, 119, -1, 121, -1, -1, -1, 125, - -1, -1, -1, -1, -1, -1, -1, 46, -1, 48, - 49, -1, -1, 121, 53, 54, -1, -1, -1, -1, - -1, -1, 61, 62, -1, 46, -1, 48, 49, 68, - 69, -1, 53, -1, -1, 74, -1, -1, -1, -1, - -1, 62, 81, 82, 83, -1, 85, 68, 69, 70, - 89, 3, 4, 5, 6, 94, 8, 9, -1, -1, - 81, 82, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, 111, 94, -1, -1, 115, 116, -1, -1, - 119, -1, 121, -1, 123, -1, 125, -1, -1, -1, - -1, -1, -1, -1, 46, -1, 48, 49, -1, -1, - -1, 53, 54, -1, -1, -1, -1, -1, -1, 61, - 62, -1, 46, -1, 48, 49, 68, 69, -1, -1, - -1, -1, 74, -1, -1, -1, -1, -1, 62, 81, - 82, 83, -1, 85, 68, 69, 70, 89, 3, 4, - 5, 6, 94, 8, 9, -1, -1, 81, 82, -1, - -1, 103, -1, -1, -1, -1, -1, -1, -1, 111, - 94, -1, -1, 115, 116, -1, -1, 119, -1, 121, - -1, -1, -1, 125, -1, -1, -1, -1, -1, -1, - -1, 46, -1, 48, 49, -1, -1, -1, 53, 54, - -1, -1, -1, -1, -1, -1, 61, 62, -1, -1, - -1, -1, -1, 68, 69, -1, -1, -1, -1, 74, - -1, -1, -1, -1, -1, -1, 81, 82, 83, -1, - 85, -1, -1, -1, 89, 3, 4, 5, 6, 94, - 8, 9, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, 111, -1, -1, -1, - 115, 116, -1, -1, 119, -1, 121, -1, 123, -1, - 125, -1, -1, -1, -1, -1, -1, -1, 46, -1, - 48, 49, -1, -1, -1, 53, 54, -1, -1, -1, - -1, -1, -1, 61, 62, -1, -1, -1, -1, -1, - 68, 69, -1, -1, -1, -1, 74, 17, 18, 19, - 20, -1, -1, 81, 82, 83, -1, 85, -1, 29, - -1, 89, -1, -1, -1, -1, 94, -1, 13, 14, - 15, 16, 17, 18, 19, 20, -1, -1, -1, -1, - -1, -1, -1, 111, 29, -1, -1, 115, 116, -1, - -1, 119, -1, 121, -1, -1, -1, 125, 13, 14, - 15, 16, 17, 18, 19, 20, -1, -1, -1, -1, - -1, -1, -1, -1, 29, -1, -1, 13, 14, 15, - 16, 17, 18, 19, 20, -1, -1, -1, -1, -1, - -1, -1, -1, 29, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, 114, 115, 116, 117, 118, -1, - 120, 121, 122, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 108, 109, -1, 111, 112, 113, 114, - 115, 116, 117, 118, -1, 120, 121, 122, -1, -1, - -1, 126, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, 108, 109, -1, 111, 112, 113, 114, - 115, 116, 117, 118, -1, 120, 121, 122, -1, -1, - -1, 126, 108, 109, -1, 111, 112, 113, 114, 115, - 116, 117, 118, -1, 120, 121, 122, 8, 9, -1, - 126, 13, 14, 15, 16, 17, 18, 19, 20, -1, - -1, -1, -1, -1, -1, -1, -1, 29, -1, 31, - 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, - 42, -1, -1, -1, -1, 46, -1, 48, 49, -1, - 52, -1, 53, -1, -1, -1, -1, -1, -1, -1, - -1, 62, -1, -1, -1, -1, -1, 68, 69, 70, - -1, -1, 74, -1, -1, -1, -1, -1, -1, -1, - 81, 82, -1, -1, 8, 9, -1, -1, -1, -1, - -1, 92, -1, 94, -1, -1, 97, -1, -1, -1, - -1, -1, 104, -1, -1, 107, -1, 109, 110, 111, - 112, 113, 114, 115, 116, 117, 118, 119, -1, 121, - 122, 45, 46, 125, 48, 49, 50, 51, -1, 53, - -1, -1, -1, 57, 58, 59, -1, -1, 62, -1, - 8, 9, -1, 67, 68, 69, 70, -1, 72, -1, - -1, 75, -1, -1, -1, 79, -1, 81, 82, -1, - 84, -1, 86, -1, -1, -1, -1, -1, 92, 93, - 94, -1, 96, 97, 98, -1, -1, 45, 46, 103, - 48, 49, 50, 51, -1, 53, -1, -1, -1, 57, - 58, 59, -1, -1, 62, 119, 8, 9, -1, 67, - 68, 69, 70, -1, 72, -1, -1, 75, -1, -1, - -1, 79, -1, 81, 82, -1, 84, -1, 86, -1, - -1, -1, -1, -1, 92, 93, 94, -1, 96, 97, - 98, -1, -1, 45, 46, -1, 48, 49, 50, 51, + -1, -1, 125, 13, 14, 15, 16, 17, 18, 19, + 20, -1, -1, -1, 114, 115, 116, 117, 118, 29, + 120, 121, 122, 13, 14, 15, 16, 17, 18, 19, + 20, -1, -1, -1, -1, -1, -1, -1, -1, 29, + -1, 31, 32, 33, 34, 35, 36, 37, 38, 39, + 40, 41, 42, -1, -1, -1, -1, -1, -1, -1, + -1, -1, 52, -1, -1, -1, -1, -1, 108, 109, + 110, 111, 112, 113, 114, 115, 116, 117, 118, -1, + 120, 121, 122, -1, 74, -1, 126, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 8, 9, 108, 109, + 110, 111, 112, 113, 114, 115, 116, 117, 118, -1, + 120, 121, 122, -1, 104, -1, 126, 107, -1, 109, + 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, + -1, 121, 122, 45, 46, 125, 48, 49, 50, 51, -1, 53, -1, -1, -1, 57, 58, 59, -1, -1, - 62, 119, -1, -1, -1, 67, 68, 69, 70, -1, + 62, -1, 8, 9, -1, 67, 68, 69, 70, -1, 72, -1, -1, 75, -1, -1, -1, 79, -1, 81, 82, -1, 84, -1, 86, -1, -1, -1, -1, -1, - 92, 93, 94, -1, 96, 97, 98, 13, 14, 15, - 16, 17, 18, 19, 20, -1, -1, -1, -1, -1, - -1, -1, -1, 29, -1, -1, -1, 119, 13, 14, - 15, 16, 17, 18, 19, 20, -1, -1, -1, -1, - -1, -1, -1, -1, 29, 13, 14, 15, 16, 17, - 18, 19, 20, -1, -1, -1, -1, -1, -1, -1, - -1, 29, 13, 14, 15, 16, 17, 18, 19, 20, - -1, -1, -1, -1, -1, -1, -1, -1, 29, 13, + 92, 93, 94, -1, 96, 97, 98, -1, -1, 45, + 46, 103, 48, 49, 50, 51, -1, 53, -1, -1, + -1, 57, 58, 59, -1, -1, 62, 119, 8, 9, + -1, 67, 68, 69, 70, -1, 72, -1, -1, 75, + -1, -1, -1, 79, -1, 81, 82, -1, 84, -1, + 86, -1, -1, -1, -1, -1, 92, 93, 94, -1, + 96, 97, 98, -1, -1, 45, 46, -1, 48, 49, + 50, 51, -1, 53, -1, -1, -1, 57, 58, 59, + -1, -1, 62, 119, -1, -1, -1, 67, 68, 69, + 70, -1, 72, -1, -1, 75, -1, -1, -1, 79, + -1, 81, 82, -1, 84, -1, 86, -1, -1, -1, + -1, -1, 92, 93, 94, -1, 96, 97, 98, 13, 14, 15, 16, 17, 18, 19, 20, -1, -1, -1, - -1, -1, -1, -1, -1, 29, -1, -1, -1, -1, - 106, -1, 108, 109, -1, 111, 112, 113, 114, 115, - 116, 117, 118, -1, 120, 121, 122, -1, -1, -1, - -1, -1, -1, 108, 109, -1, 111, 112, 113, 114, - 115, 116, 117, 118, -1, 120, 121, 122, -1, -1, - 108, 109, -1, 111, 112, 113, 114, 115, 116, 117, - 118, -1, 120, 121, 122, 106, -1, 108, 109, -1, - 111, -1, -1, 114, 115, 116, 117, 118, -1, 120, - 121, 122, -1, -1, 108, 109, -1, 111, -1, -1, - 114, 115, 116, 117, 118, -1, 120, 121, 122, 14, - 15, 16, 17, 18, 19, 20, -1, -1, -1, -1, - -1, -1, -1, -1, 29, 14, 15, 16, 17, 18, + -1, -1, -1, -1, -1, 29, -1, -1, -1, 119, + 13, 14, 15, 16, 17, 18, 19, 20, -1, -1, + -1, -1, -1, -1, -1, -1, 29, 13, 14, 15, + 16, 17, 18, 19, 20, -1, -1, -1, -1, -1, + -1, -1, -1, 29, 13, 14, 15, 16, 17, 18, + 19, 20, -1, -1, -1, -1, -1, -1, -1, -1, + 29, 13, 14, 15, 16, 17, 18, 19, 20, -1, + -1, -1, -1, -1, -1, -1, -1, 29, -1, -1, + -1, -1, 106, -1, 108, 109, 110, 111, 112, 113, + 114, 115, 116, 117, 118, -1, 120, 121, 122, -1, + -1, -1, -1, -1, -1, 108, 109, 110, 111, 112, + 113, 114, 115, 116, 117, 118, -1, 120, 121, 122, + -1, -1, 108, 109, 110, 111, 112, 113, 114, 115, + 116, 117, 118, -1, 120, 121, 122, 106, -1, 108, + 109, 110, 111, -1, -1, 114, 115, 116, 117, 118, + -1, 120, 121, 122, -1, -1, 108, 109, 110, 111, + -1, -1, 114, 115, 116, 117, 118, -1, 120, 121, + 122, 14, 15, 16, 17, 18, 19, 20, -1, -1, + -1, -1, -1, -1, -1, -1, 29, 14, 15, 16, + 17, 18, 19, 20, -1, -1, -1, -1, -1, -1, + -1, -1, 29, 15, 16, 17, 18, 19, 20, -1, + -1, -1, 44, -1, -1, -1, -1, 29, 15, 16, + 17, 18, 19, 20, 56, -1, -1, -1, 60, -1, + -1, 63, 29, 15, 16, 17, 18, 19, 20, 71, + -1, 73, -1, -1, 76, 77, 78, 29, 15, 16, + 17, 18, 19, 20, -1, 87, -1, -1, -1, 91, + -1, -1, 29, 95, -1, -1, 109, 110, 111, 112, + 113, 114, 115, 116, 117, 118, -1, 120, 121, 122, + -1, -1, 109, 110, 111, -1, -1, 114, 115, 116, + 117, 118, -1, 120, 121, 122, -1, -1, 110, 111, + 112, 113, 114, 115, 116, 117, 118, -1, 120, 121, + 122, -1, -1, -1, 111, 112, 113, 114, 115, 116, + 117, 118, -1, 120, 121, 122, -1, 109, 110, 111, + -1, -1, 114, 115, 116, 117, 118, -1, 120, 121, + 122, -1, -1, -1, -1, 112, 113, 114, 115, 116, + 117, 118, -1, 120, 121, 122, 15, 16, 17, 18, 19, 20, -1, -1, -1, -1, -1, -1, -1, -1, 29, 15, 16, 17, 18, 19, 20, -1, -1, -1, - 44, -1, -1, -1, -1, 29, 15, 16, 17, 18, - 19, 20, 56, -1, -1, -1, 60, -1, -1, 63, - 29, 15, 16, 17, 18, 19, 20, 71, -1, 73, - -1, -1, 76, 77, 78, 29, 15, 16, 17, 18, - 19, 20, -1, 87, -1, -1, -1, 91, -1, -1, - 29, 95, -1, -1, 109, -1, 111, 112, 113, 114, - 115, 116, 117, 118, -1, 120, 121, 122, -1, -1, - 109, -1, 111, -1, -1, 114, 115, 116, 117, 118, - -1, 120, 121, 122, -1, 109, -1, 111, 112, 113, + 8, 9, -1, -1, -1, 29, 15, 16, 17, 18, + 19, 20, -1, -1, -1, -1, -1, -1, -1, -1, + 29, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 46, -1, + 48, 49, 50, 51, -1, 53, -1, -1, -1, -1, + -1, -1, -1, -1, 62, -1, -1, -1, 0, -1, + 68, 69, 70, -1, -1, -1, -1, -1, -1, -1, + -1, 110, 111, 81, 82, 114, 115, 116, 117, 118, + -1, 120, 121, 122, 92, -1, 94, 111, -1, 97, 114, 115, 116, 117, 118, -1, 120, 121, 122, -1, - -1, -1, 111, 112, 113, 114, 115, 116, 117, 118, - -1, 120, 121, 122, -1, -1, -1, -1, 112, 113, - 114, 115, 116, 117, 118, 0, 120, 121, 122, -1, - 109, -1, 111, -1, -1, 114, 115, 116, 117, 118, - -1, 120, 121, 122, 15, 16, 17, 18, 19, 20, - -1, -1, -1, -1, -1, -1, -1, -1, 29, 15, - 16, 17, 18, 19, 20, -1, -1, -1, -1, 44, - -1, -1, -1, 29, -1, -1, -1, -1, -1, -1, - -1, 56, -1, -1, -1, 60, -1, -1, 63, -1, - -1, -1, -1, -1, 8, 9, 71, -1, 73, -1, - -1, 76, 77, 78, -1, -1, -1, -1, -1, -1, + -1, -1, 44, -1, -1, 114, 115, 116, 117, 118, + -1, 120, 121, 122, 56, -1, 8, 9, 60, -1, + -1, 63, -1, -1, -1, -1, -1, -1, -1, 71, + -1, 73, -1, -1, 76, 77, 78, -1, -1, -1, + -1, -1, -1, -1, -1, 87, -1, -1, -1, 91, + -1, -1, -1, 95, 46, 9, 48, 49, -1, -1, + -1, 53, -1, 105, -1, -1, -1, -1, -1, -1, + 62, -1, -1, -1, -1, -1, 68, 69, 70, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 81, + 82, -1, 46, -1, 48, 49, 50, 51, -1, 53, + 92, -1, 94, 57, -1, 97, -1, 9, 62, -1, + -1, -1, -1, -1, 68, 69, 70, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, 81, 82, -1, + -1, -1, 86, -1, -1, -1, -1, -1, 92, 93, + 94, -1, -1, 97, 46, -1, 48, 49, 50, 51, + -1, 53, -1, -1, -1, 57, -1, 9, -1, -1, + 62, -1, -1, -1, -1, -1, 68, 69, 70, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 81, + 82, -1, -1, -1, 86, -1, -1, -1, -1, -1, + 92, 93, 94, -1, 46, 97, 48, 49, 50, -1, + -1, 53, -1, -1, -1, 57, -1, 9, -1, -1, + 62, -1, -1, -1, -1, -1, 68, 69, 70, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 81, + 82, -1, -1, -1, 86, -1, -1, -1, -1, -1, + 92, 93, 94, -1, 46, 97, 48, 49, 50, -1, + -1, 53, -1, -1, -1, 57, -1, -1, -1, -1, + 62, -1, -1, -1, -1, -1, 68, 69, 70, 44, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 81, + 82, 56, -1, -1, 86, 60, -1, -1, 63, -1, + 92, 93, 94, -1, 44, 97, 71, -1, 73, -1, + -1, 76, 77, 78, -1, -1, 56, -1, -1, -1, + 60, -1, 87, 63, -1, -1, 91, -1, -1, 44, + 95, 71, -1, 73, -1, -1, 76, 77, 78, -1, + 105, 56, -1, -1, -1, 60, -1, 87, 63, -1, + -1, 91, -1, -1, 44, 95, 71, -1, 73, 124, + -1, 76, 77, 78, -1, 105, 56, -1, -1, -1, + 60, -1, 87, 63, -1, -1, 91, -1, -1, 44, + 95, 71, -1, 73, 124, -1, 76, 77, 78, -1, + 105, 56, -1, -1, -1, 60, -1, 87, 63, -1, + -1, 91, -1, -1, -1, 95, 71, -1, 73, 124, + -1, 76, 77, 78, -1, 105, -1, -1, -1, -1, -1, -1, 87, -1, -1, -1, 91, -1, -1, -1, - 95, -1, -1, -1, -1, -1, -1, -1, -1, -1, - 105, -1, 46, 9, 48, 49, 50, 51, -1, 53, - 111, -1, -1, 114, 115, 116, 117, 118, 62, 120, - 121, 122, -1, -1, 68, 69, 70, -1, 114, 115, - 116, 117, 118, -1, 120, 121, 122, 81, 82, -1, - 46, -1, 48, 49, 50, 51, -1, 53, 92, -1, - 94, 57, -1, 97, -1, 9, 62, -1, -1, -1, - -1, -1, 68, 69, 70, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, 81, 82, -1, -1, -1, - 86, -1, -1, -1, -1, -1, 92, 93, 94, -1, - -1, 97, 46, -1, 48, 49, 50, 51, -1, 53, - -1, -1, -1, 57, -1, 9, -1, -1, 62, -1, - -1, -1, -1, -1, 68, 69, 70, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 81, 82, -1, - -1, -1, 86, -1, -1, -1, -1, -1, 92, 93, - 94, -1, 46, 97, 48, 49, 50, -1, -1, 53, - -1, -1, -1, 57, -1, 9, -1, -1, 62, -1, - -1, -1, -1, -1, 68, 69, 70, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 81, 82, -1, - -1, -1, 86, -1, -1, -1, -1, -1, 92, 93, - 94, -1, 46, 97, 48, 49, 50, -1, -1, 53, - -1, -1, -1, 57, -1, -1, -1, -1, 62, -1, - -1, -1, -1, -1, 68, 69, 70, 44, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 81, 82, 56, - -1, -1, 86, 60, -1, -1, 63, -1, 92, 93, - 94, -1, 44, 97, 71, -1, 73, -1, -1, 76, - 77, 78, -1, -1, 56, -1, -1, -1, 60, -1, - 87, 63, -1, -1, 91, -1, -1, 44, 95, 71, - -1, 73, -1, -1, 76, 77, 78, -1, 105, 56, - -1, -1, -1, 60, -1, 87, 63, -1, -1, 91, - -1, -1, 44, 95, 71, -1, 73, 124, -1, 76, - 77, 78, -1, 105, 56, -1, -1, -1, 60, -1, - 87, 63, -1, -1, 91, -1, -1, 44, 95, 71, - -1, 73, 124, -1, 76, 77, 78, -1, 105, 56, - -1, -1, -1, 60, -1, 87, 63, -1, -1, 91, - -1, -1, -1, 95, 71, -1, 73, 124, -1, 76, - 77, 78, -1, 105, -1, -1, -1, -1, -1, -1, - 87, -1, -1, -1, 91, -1, -1, -1, 95, -1, - -1, -1, 124, -1, -1, -1, -1, -1, 105, -1, - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, - -1, -1, -1, -1, -1, -1, -1, 124 + 95, -1, -1, -1, 124, -1, -1, -1, -1, -1, + 105, -1, -1, -1, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, -1, 124 }; /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing symbol of state STATE-NUM. */ -static const unsigned char yystos[] = +static const yytype_uint8 yystos[] = { 0, 100, 101, 102, 128, 129, 220, 3, 4, 5, 6, 8, 9, 46, 48, 49, 53, 54, 61, 62, @@ -2093,106 +2258,90 @@ static const unsigned char yystos[] = 121, 112, 121, 213, 213, 213, 213, 9, 46, 48, 49, 53, 62, 68, 69, 81, 82, 94, 182, 211, 213, 213, 13, 14, 15, 16, 17, 18, 19, 20, - 29, 108, 109, 111, 112, 113, 114, 115, 116, 117, - 118, 120, 121, 122, 6, 179, 53, 62, 69, 202, - 69, 202, 202, 8, 9, 218, 202, 10, 51, 111, - 116, 121, 178, 220, 103, 218, 103, 218, 106, 136, - 121, 103, 218, 106, 106, 106, 161, 137, 144, 73, - 218, 8, 9, 45, 51, 58, 59, 67, 72, 75, - 79, 84, 92, 96, 98, 103, 119, 149, 180, 183, - 185, 190, 192, 196, 197, 201, 210, 211, 220, 210, - 210, 210, 210, 182, 210, 210, 210, 218, 121, 218, - 218, 210, 210, 182, 182, 210, 123, 104, 123, 213, + 29, 108, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, 120, 121, 122, 6, 179, 53, 62, 69, + 202, 69, 202, 202, 8, 9, 218, 202, 10, 51, + 111, 116, 121, 178, 220, 103, 218, 103, 218, 106, + 136, 121, 103, 218, 106, 106, 106, 161, 137, 144, + 73, 218, 8, 9, 45, 51, 58, 59, 67, 72, + 75, 79, 84, 92, 96, 98, 103, 119, 149, 180, + 183, 185, 190, 192, 196, 197, 201, 210, 211, 220, + 210, 210, 210, 210, 182, 210, 210, 210, 218, 121, + 218, 218, 210, 210, 182, 182, 210, 123, 104, 123, + 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, + 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, + 213, 123, 211, 213, 178, 62, 116, 178, 178, 178, + 178, 122, 191, 103, 184, 186, 134, 218, 129, 103, + 112, 51, 149, 180, 218, 121, 121, 179, 219, 51, + 179, 218, 133, 218, 103, 105, 106, 107, 172, 105, + 140, 218, 218, 123, 123, 123, 123, 123, 113, 123, + 123, 123, 210, 123, 123, 123, 113, 123, 213, 213, + 106, 123, 126, 178, 123, 209, 213, 220, 194, 195, + 218, 220, 193, 129, 106, 187, 188, 220, 104, 124, + 199, 8, 9, 50, 51, 92, 162, 163, 164, 165, + 201, 220, 179, 172, 145, 150, 10, 116, 151, 141, + 179, 8, 9, 10, 51, 111, 116, 176, 220, 129, + 121, 205, 206, 130, 131, 218, 103, 213, 10, 51, + 75, 111, 116, 121, 142, 166, 218, 121, 123, 121, + 213, 121, 126, 124, 104, 107, 194, 124, 76, 77, + 78, 96, 189, 103, 104, 218, 129, 218, 165, 218, + 113, 104, 8, 9, 10, 51, 111, 116, 121, 177, + 220, 146, 147, 166, 3, 4, 5, 8, 12, 51, + 54, 61, 74, 83, 85, 89, 111, 115, 119, 121, + 125, 168, 169, 175, 179, 215, 216, 219, 220, 116, + 166, 168, 143, 166, 176, 116, 176, 176, 176, 121, + 122, 124, 152, 124, 207, 220, 103, 104, 121, 103, + 173, 174, 213, 220, 105, 116, 166, 13, 14, 15, + 16, 17, 18, 19, 20, 29, 31, 32, 33, 34, + 35, 36, 37, 38, 39, 40, 41, 42, 52, 74, + 104, 107, 109, 110, 111, 112, 113, 114, 115, 116, + 117, 118, 119, 121, 122, 125, 158, 166, 166, 166, + 106, 107, 121, 122, 171, 172, 220, 211, 211, 168, + 218, 213, 124, 92, 96, 197, 217, 218, 96, 217, + 96, 217, 76, 77, 78, 129, 189, 104, 124, 107, + 177, 137, 138, 159, 160, 164, 116, 177, 177, 177, + 177, 107, 122, 170, 220, 148, 166, 171, 172, 177, + 179, 112, 181, 121, 112, 213, 213, 213, 182, 211, + 213, 123, 12, 104, 177, 13, 14, 15, 16, 17, + 18, 19, 20, 29, 108, 109, 110, 111, 112, 113, + 114, 115, 116, 117, 118, 120, 121, 122, 166, 106, + 123, 123, 171, 172, 121, 176, 155, 209, 168, 3, + 4, 5, 6, 7, 8, 9, 10, 12, 13, 14, + 15, 16, 17, 18, 19, 20, 21, 22, 29, 30, + 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, + 41, 42, 43, 46, 47, 48, 49, 50, 51, 52, + 53, 54, 55, 57, 58, 59, 60, 61, 62, 63, + 64, 65, 66, 67, 68, 69, 72, 74, 75, 76, + 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, + 88, 89, 90, 91, 92, 93, 94, 96, 97, 98, + 99, 103, 104, 105, 106, 107, 108, 109, 110, 111, + 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, + 122, 123, 125, 126, 208, 205, 131, 210, 173, 124, + 104, 166, 123, 126, 123, 4, 213, 167, 209, 104, + 123, 123, 123, 107, 218, 217, 218, 217, 217, 217, + 217, 217, 124, 218, 182, 170, 177, 123, 54, 83, + 85, 111, 115, 116, 119, 121, 125, 212, 214, 209, + 171, 172, 104, 107, 171, 177, 182, 121, 182, 182, + 123, 123, 51, 157, 220, 12, 175, 171, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, 123, - 211, 213, 178, 62, 116, 178, 178, 178, 178, 122, - 191, 103, 184, 186, 134, 218, 129, 103, 112, 51, - 149, 180, 218, 121, 121, 179, 219, 51, 179, 218, - 133, 218, 103, 105, 106, 107, 172, 105, 140, 218, - 218, 123, 123, 123, 123, 123, 113, 123, 123, 123, - 210, 123, 123, 123, 113, 123, 213, 213, 106, 123, - 126, 178, 123, 209, 213, 220, 194, 195, 218, 220, - 193, 129, 106, 187, 188, 220, 104, 124, 199, 8, - 9, 50, 51, 92, 162, 163, 164, 165, 201, 220, - 179, 172, 145, 150, 10, 116, 151, 141, 179, 8, - 9, 10, 51, 111, 116, 176, 220, 129, 121, 205, - 206, 130, 131, 218, 103, 213, 10, 51, 75, 111, - 116, 121, 142, 166, 218, 121, 123, 121, 213, 121, - 126, 124, 104, 107, 194, 124, 76, 77, 78, 96, - 189, 103, 104, 218, 129, 218, 165, 218, 113, 104, - 8, 9, 10, 51, 111, 116, 121, 177, 220, 146, - 147, 166, 3, 4, 5, 8, 12, 51, 54, 61, - 74, 83, 85, 89, 111, 115, 119, 121, 125, 168, - 169, 175, 179, 215, 216, 219, 220, 116, 166, 168, - 143, 166, 176, 116, 176, 176, 176, 121, 122, 124, - 152, 124, 207, 220, 103, 104, 121, 103, 173, 174, - 213, 220, 105, 116, 166, 13, 14, 15, 16, 17, - 18, 19, 20, 29, 31, 32, 33, 34, 35, 36, - 37, 38, 39, 40, 41, 42, 52, 74, 104, 107, - 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, - 119, 121, 122, 125, 158, 166, 166, 166, 106, 107, - 121, 122, 171, 172, 220, 211, 211, 168, 218, 213, - 124, 92, 96, 197, 217, 218, 96, 217, 96, 217, - 76, 77, 78, 129, 189, 104, 124, 107, 177, 137, - 138, 159, 160, 164, 116, 177, 177, 177, 177, 107, - 122, 170, 220, 148, 166, 171, 172, 177, 179, 112, - 181, 121, 112, 213, 213, 213, 182, 211, 213, 123, - 12, 104, 177, 13, 14, 15, 16, 17, 18, 19, - 20, 29, 108, 109, 111, 112, 113, 114, 115, 116, - 117, 118, 120, 121, 122, 166, 106, 123, 123, 171, - 172, 121, 176, 155, 209, 168, 3, 4, 5, 6, - 7, 8, 9, 10, 12, 13, 14, 15, 16, 17, - 18, 19, 20, 21, 22, 29, 30, 31, 32, 33, - 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, - 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, - 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, - 67, 68, 69, 72, 74, 75, 76, 77, 78, 79, - 80, 81, 82, 83, 84, 85, 86, 88, 89, 90, - 91, 92, 93, 94, 96, 97, 98, 99, 103, 104, - 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, - 115, 116, 117, 118, 119, 120, 121, 122, 123, 125, - 126, 208, 205, 131, 210, 173, 124, 104, 166, 123, - 126, 123, 4, 213, 167, 209, 104, 123, 123, 123, - 107, 218, 217, 218, 217, 217, 217, 217, 217, 124, - 218, 182, 170, 177, 123, 54, 83, 85, 111, 115, - 116, 119, 121, 125, 212, 214, 209, 171, 172, 104, - 107, 171, 177, 182, 121, 182, 182, 123, 123, 51, - 157, 220, 12, 175, 171, 213, 213, 213, 213, 213, - 213, 213, 213, 213, 213, 213, 213, 213, 213, 213, - 213, 213, 213, 213, 213, 123, 211, 213, 123, 121, - 157, 104, 156, 168, 126, 123, 207, 124, 123, 124, - 103, 213, 168, 126, 142, 157, 213, 123, 121, 112, - 121, 112, 212, 212, 212, 212, 182, 211, 212, 13, - 14, 15, 16, 17, 18, 19, 20, 29, 108, 109, - 111, 114, 115, 116, 117, 118, 120, 121, 122, 126, - 104, 147, 213, 171, 113, 210, 123, 113, 213, 88, - 106, 123, 126, 121, 153, 143, 168, 123, 157, 124, - 173, 123, 105, 168, 182, 182, 182, 123, 123, 212, + 211, 213, 123, 121, 157, 104, 156, 168, 126, 123, + 207, 124, 123, 124, 103, 213, 168, 126, 142, 157, + 213, 123, 121, 112, 121, 112, 212, 212, 212, 212, + 182, 211, 212, 13, 14, 15, 16, 17, 18, 19, + 20, 29, 108, 109, 110, 111, 114, 115, 116, 117, + 118, 120, 121, 122, 126, 104, 147, 213, 171, 113, + 210, 123, 113, 213, 88, 106, 123, 126, 121, 153, + 143, 168, 123, 157, 124, 173, 123, 105, 168, 182, + 182, 182, 123, 123, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, - 212, 212, 212, 212, 212, 212, 212, 123, 211, 213, - 148, 121, 123, 121, 121, 213, 154, 168, 123, 157, - 124, 157, 123, 113, 123, 113, 212, 106, 123, 126, - 211, 211, 123, 218, 168, 123, 157, 157, 121, 121, - 212, 123, 123, 123, 123, 157, 211, 211, 157, 123, - 123 + 212, 212, 212, 123, 211, 213, 148, 121, 123, 121, + 121, 213, 154, 168, 123, 157, 124, 157, 123, 113, + 123, 113, 212, 106, 123, 126, 211, 211, 123, 218, + 168, 123, 157, 157, 121, 121, 212, 123, 123, 123, + 123, 157, 211, 211, 157, 123, 123 }; -#if ! defined (YYSIZE_T) && defined (__SIZE_TYPE__) -# define YYSIZE_T __SIZE_TYPE__ -#endif -#if ! defined (YYSIZE_T) && defined (size_t) -# define YYSIZE_T size_t -#endif -#if ! defined (YYSIZE_T) -# if defined (__STDC__) || defined (__cplusplus) -# include /* INFRINGES ON USER NAME SPACE */ -# define YYSIZE_T size_t -# endif -#endif -#if ! defined (YYSIZE_T) -# define YYSIZE_T unsigned int -#endif - #define yyerrok (yyerrstatus = 0) #define yyclearin (yychar = YYEMPTY) #define YYEMPTY (-2) @@ -2218,15 +2367,15 @@ do \ yychar = (Token); \ yylval = (Value); \ yytoken = YYTRANSLATE (yychar); \ - YYPOPSTACK; \ + YYPOPSTACK (1); \ goto yybackup; \ } \ else \ - { \ - yyerror ("syntax error: cannot back up");\ + { \ + yyerror (YY_("syntax error: cannot back up")); \ YYERROR; \ } \ -while (0) +while (YYID (0)) #define YYTERROR 1 @@ -2241,7 +2390,7 @@ while (0) #ifndef YYLLOC_DEFAULT # define YYLLOC_DEFAULT(Current, Rhs, N) \ do \ - if (N) \ + if (YYID (N)) \ { \ (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \ (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \ @@ -2255,7 +2404,7 @@ while (0) (Current).first_column = (Current).last_column = \ YYRHSLOC (Rhs, 0).last_column; \ } \ - while (0) + while (YYID (0)) #endif @@ -2267,8 +2416,8 @@ while (0) # if YYLTYPE_IS_TRIVIAL # define YY_LOCATION_PRINT(File, Loc) \ fprintf (File, "%d.%d-%d.%d", \ - (Loc).first_line, (Loc).first_column, \ - (Loc).last_line, (Loc).last_column) + (Loc).first_line, (Loc).first_column, \ + (Loc).last_line, (Loc).last_column) # else # define YY_LOCATION_PRINT(File, Loc) ((void) 0) # endif @@ -2295,37 +2444,105 @@ while (0) do { \ if (yydebug) \ YYFPRINTF Args; \ -} while (0) +} while (YYID (0)) -# define YY_SYMBOL_PRINT(Title, Type, Value, Location) \ -do { \ - if (yydebug) \ - { \ - YYFPRINTF (stderr, "%s ", Title); \ - yysymprint (stderr, \ - Type, Value, Location); \ - YYFPRINTF (stderr, "\n"); \ - } \ -} while (0) +# define YY_SYMBOL_PRINT(Title, Type, Value, Location) \ +do { \ + if (yydebug) \ + { \ + YYFPRINTF (stderr, "%s ", Title); \ + yy_symbol_print (stderr, \ + Type, Value, Location); \ + YYFPRINTF (stderr, "\n"); \ + } \ +} while (YYID (0)) + + +/*--------------------------------. +| Print this symbol on YYOUTPUT. | +`--------------------------------*/ + +/*ARGSUSED*/ +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +static void +yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, YYLTYPE const * const yylocationp) +#else +static void +yy_symbol_value_print (yyoutput, yytype, yyvaluep, yylocationp) + FILE *yyoutput; + int yytype; + YYSTYPE const * const yyvaluep; + YYLTYPE const * const yylocationp; +#endif +{ + if (!yyvaluep) + return; + YYUSE (yylocationp); +# ifdef YYPRINT + if (yytype < YYNTOKENS) + YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep); +# else + YYUSE (yyoutput); +# endif + switch (yytype) + { + default: + break; + } +} + + +/*--------------------------------. +| Print this symbol on YYOUTPUT. | +`--------------------------------*/ + +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +static void +yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, YYLTYPE const * const yylocationp) +#else +static void +yy_symbol_print (yyoutput, yytype, yyvaluep, yylocationp) + FILE *yyoutput; + int yytype; + YYSTYPE const * const yyvaluep; + YYLTYPE const * const yylocationp; +#endif +{ + if (yytype < YYNTOKENS) + YYFPRINTF (yyoutput, "token %s (", yytname[yytype]); + else + YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]); + + YY_LOCATION_PRINT (yyoutput, *yylocationp); + YYFPRINTF (yyoutput, ": "); + yy_symbol_value_print (yyoutput, yytype, yyvaluep, yylocationp); + YYFPRINTF (yyoutput, ")"); +} /*------------------------------------------------------------------. | yy_stack_print -- Print the state stack from its BOTTOM up to its | | TOP (included). | `------------------------------------------------------------------*/ -#if defined (__STDC__) || defined (__cplusplus) +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) static void -yy_stack_print (short int *bottom, short int *top) +yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop) #else static void -yy_stack_print (bottom, top) - short int *bottom; - short int *top; +yy_stack_print (yybottom, yytop) + yytype_int16 *yybottom; + yytype_int16 *yytop; #endif { YYFPRINTF (stderr, "Stack now"); - for (/* Nothing. */; bottom <= top; ++bottom) - YYFPRINTF (stderr, " %d", *bottom); + for (; yybottom <= yytop; yybottom++) + { + int yybot = *yybottom; + YYFPRINTF (stderr, " %d", yybot); + } YYFPRINTF (stderr, "\n"); } @@ -2333,37 +2550,46 @@ yy_stack_print (bottom, top) do { \ if (yydebug) \ yy_stack_print ((Bottom), (Top)); \ -} while (0) +} while (YYID (0)) /*------------------------------------------------. | Report that the YYRULE is going to be reduced. | `------------------------------------------------*/ -#if defined (__STDC__) || defined (__cplusplus) +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) static void -yy_reduce_print (int yyrule) +yy_reduce_print (YYSTYPE *yyvsp, YYLTYPE *yylsp, int yyrule) #else static void -yy_reduce_print (yyrule) +yy_reduce_print (yyvsp, yylsp, yyrule) + YYSTYPE *yyvsp; + YYLTYPE *yylsp; int yyrule; #endif { + int yynrhs = yyr2[yyrule]; int yyi; - unsigned int yylno = yyrline[yyrule]; - YYFPRINTF (stderr, "Reducing stack by rule %d (line %u), ", - yyrule - 1, yylno); - /* Print the symbols being reduced, and their result. */ - for (yyi = yyprhs[yyrule]; 0 <= yyrhs[yyi]; yyi++) - YYFPRINTF (stderr, "%s ", yytname [yyrhs[yyi]]); - YYFPRINTF (stderr, "-> %s\n", yytname [yyr1[yyrule]]); + unsigned long int yylno = yyrline[yyrule]; + YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n", + yyrule - 1, yylno); + /* The symbols being reduced. */ + for (yyi = 0; yyi < yynrhs; yyi++) + { + YYFPRINTF (stderr, " $%d = ", yyi + 1); + yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi], + &(yyvsp[(yyi + 1) - (yynrhs)]) + , &(yylsp[(yyi + 1) - (yynrhs)]) ); + YYFPRINTF (stderr, "\n"); + } } # define YY_REDUCE_PRINT(Rule) \ do { \ if (yydebug) \ - yy_reduce_print (Rule); \ -} while (0) + yy_reduce_print (yyvsp, yylsp, Rule); \ +} while (YYID (0)) /* Nonzero means print parse trace. It is left uninitialized so that multiple parsers can coexist. */ @@ -2385,7 +2611,7 @@ int yydebug; if the built-in stack extension method is used). Do not make this value too large; the results are undefined if - SIZE_MAX < YYSTACK_BYTES (YYMAXDEPTH) + YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH) evaluated with infinite-precision integer arithmetic. */ #ifndef YYMAXDEPTH @@ -2397,45 +2623,47 @@ int yydebug; #if YYERROR_VERBOSE # ifndef yystrlen -# if defined (__GLIBC__) && defined (_STRING_H) +# if defined __GLIBC__ && defined _STRING_H # define yystrlen strlen # else /* Return the length of YYSTR. */ +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) static YYSIZE_T -# if defined (__STDC__) || defined (__cplusplus) yystrlen (const char *yystr) -# else +#else +static YYSIZE_T yystrlen (yystr) - const char *yystr; -# endif + const char *yystr; +#endif { - register const char *yys = yystr; - - while (*yys++ != '\0') + YYSIZE_T yylen; + for (yylen = 0; yystr[yylen]; yylen++) continue; - - return yys - yystr - 1; + return yylen; } # endif # endif # ifndef yystpcpy -# if defined (__GLIBC__) && defined (_STRING_H) && defined (_GNU_SOURCE) +# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE # define yystpcpy stpcpy # else /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in YYDEST. */ +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) static char * -# if defined (__STDC__) || defined (__cplusplus) yystpcpy (char *yydest, const char *yysrc) -# else +#else +static char * yystpcpy (yydest, yysrc) - char *yydest; - const char *yysrc; -# endif + char *yydest; + const char *yysrc; +#endif { - register char *yyd = yydest; - register const char *yys = yysrc; + char *yyd = yydest; + const char *yys = yysrc; while ((*yyd++ = *yys++) != '\0') continue; @@ -2445,57 +2673,171 @@ yystpcpy (yydest, yysrc) # endif # endif -#endif /* !YYERROR_VERBOSE */ +# ifndef yytnamerr +/* Copy to YYRES the contents of YYSTR after stripping away unnecessary + quotes and backslashes, so that it's suitable for yyerror. The + heuristic is that double-quoting is unnecessary unless the string + contains an apostrophe, a comma, or backslash (other than + backslash-backslash). YYSTR is taken from yytname. If YYRES is + null, do not copy; instead, return the length of what the result + would have been. */ +static YYSIZE_T +yytnamerr (char *yyres, const char *yystr) +{ + if (*yystr == '"') + { + YYSIZE_T yyn = 0; + char const *yyp = yystr; + for (;;) + switch (*++yyp) + { + case '\'': + case ',': + goto do_not_strip_quotes; + + case '\\': + if (*++yyp != '\\') + goto do_not_strip_quotes; + /* Fall through. */ + default: + if (yyres) + yyres[yyn] = *yyp; + yyn++; + break; + + case '"': + if (yyres) + yyres[yyn] = '\0'; + return yyn; + } + do_not_strip_quotes: ; + } + + if (! yyres) + return yystrlen (yystr); + + return yystpcpy (yyres, yystr) - yyres; +} +# endif + +/* Copy into YYRESULT an error message about the unexpected token + YYCHAR while in state YYSTATE. Return the number of bytes copied, + including the terminating null byte. If YYRESULT is null, do not + copy anything; just return the number of bytes that would be + copied. As a special case, return 0 if an ordinary "syntax error" + message will do. Return YYSIZE_MAXIMUM if overflow occurs during + size calculation. */ +static YYSIZE_T +yysyntax_error (char *yyresult, int yystate, int yychar) +{ + int yyn = yypact[yystate]; + + if (! (YYPACT_NINF < yyn && yyn <= YYLAST)) + return 0; + else + { + int yytype = YYTRANSLATE (yychar); + YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]); + YYSIZE_T yysize = yysize0; + YYSIZE_T yysize1; + int yysize_overflow = 0; + enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; + char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; + int yyx; + +# if 0 + /* This is so xgettext sees the translatable formats that are + constructed on the fly. */ + YY_("syntax error, unexpected %s"); + YY_("syntax error, unexpected %s, expecting %s"); + YY_("syntax error, unexpected %s, expecting %s or %s"); + YY_("syntax error, unexpected %s, expecting %s or %s or %s"); + YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"); +# endif + char *yyfmt; + char const *yyf; + static char const yyunexpected[] = "syntax error, unexpected %s"; + static char const yyexpecting[] = ", expecting %s"; + static char const yyor[] = " or %s"; + char yyformat[sizeof yyunexpected + + sizeof yyexpecting - 1 + + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2) + * (sizeof yyor - 1))]; + char const *yyprefix = yyexpecting; + + /* Start YYX at -YYN if negative to avoid negative indexes in + YYCHECK. */ + int yyxbegin = yyn < 0 ? -yyn : 0; + + /* Stay within bounds of both yycheck and yytname. */ + int yychecklim = YYLAST - yyn + 1; + int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; + int yycount = 1; + + yyarg[0] = yytname[yytype]; + yyfmt = yystpcpy (yyformat, yyunexpected); + + for (yyx = yyxbegin; yyx < yyxend; ++yyx) + if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR) + { + if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM) + { + yycount = 1; + yysize = yysize0; + yyformat[sizeof yyunexpected - 1] = '\0'; + break; + } + yyarg[yycount++] = yytname[yyx]; + yysize1 = yysize + yytnamerr (0, yytname[yyx]); + yysize_overflow |= (yysize1 < yysize); + yysize = yysize1; + yyfmt = yystpcpy (yyfmt, yyprefix); + yyprefix = yyor; + } + + yyf = YY_(yyformat); + yysize1 = yysize + yystrlen (yyf); + yysize_overflow |= (yysize1 < yysize); + yysize = yysize1; + + if (yysize_overflow) + return YYSIZE_MAXIMUM; + + if (yyresult) + { + /* Avoid sprintf, as that infringes on the user's name space. + Don't have undefined behavior even if the translation + produced a string with the wrong number of "%s"s. */ + char *yyp = yyresult; + int yyi = 0; + while ((*yyp = *yyf) != '\0') + { + if (*yyp == '%' && yyf[1] == 's' && yyi < yycount) + { + yyp += yytnamerr (yyp, yyarg[yyi++]); + yyf += 2; + } + else + { + yyp++; + yyf++; + } + } + } + return yysize; + } +} +#endif /* YYERROR_VERBOSE */ -#if YYDEBUG -/*--------------------------------. -| Print this symbol on YYOUTPUT. | -`--------------------------------*/ - -#if defined (__STDC__) || defined (__cplusplus) -static void -yysymprint (FILE *yyoutput, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocationp) -#else -static void -yysymprint (yyoutput, yytype, yyvaluep, yylocationp) - FILE *yyoutput; - int yytype; - YYSTYPE *yyvaluep; - YYLTYPE *yylocationp; -#endif -{ - /* Pacify ``unused variable'' warnings. */ - (void) yyvaluep; - (void) yylocationp; - - if (yytype < YYNTOKENS) - YYFPRINTF (yyoutput, "token %s (", yytname[yytype]); - else - YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]); - - YY_LOCATION_PRINT (yyoutput, *yylocationp); - fprintf (yyoutput, ": "); - -# ifdef YYPRINT - if (yytype < YYNTOKENS) - YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep); -# endif - switch (yytype) - { - default: - break; - } - YYFPRINTF (yyoutput, ")"); -} - -#endif /* ! YYDEBUG */ /*-----------------------------------------------. | Release the memory associated to this symbol. | `-----------------------------------------------*/ -#if defined (__STDC__) || defined (__cplusplus) +/*ARGSUSED*/ +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) static void yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep, YYLTYPE *yylocationp) #else @@ -2507,9 +2849,8 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp) YYLTYPE *yylocationp; #endif { - /* Pacify ``unused variable'' warnings. */ - (void) yyvaluep; - (void) yylocationp; + YYUSE (yyvaluep); + YYUSE (yylocationp); if (!yymsg) yymsg = "Deleting"; @@ -2519,21 +2860,19 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp) { default: - break; + break; } } - /* Prevent warnings from -Wmissing-prototypes. */ - #ifdef YYPARSE_PARAM -# if defined (__STDC__) || defined (__cplusplus) +#if defined __STDC__ || defined __cplusplus int yyparse (void *YYPARSE_PARAM); -# else +#else int yyparse (); -# endif +#endif #else /* ! YYPARSE_PARAM */ -#if defined (__STDC__) || defined (__cplusplus) +#if defined __STDC__ || defined __cplusplus int yyparse (void); #else int yyparse (); @@ -2544,20 +2883,23 @@ int yyparse (); - -/*----------. -| yyparse. | -`----------*/ +/*-------------------------. +| yyparse or yypush_parse. | +`-------------------------*/ #ifdef YYPARSE_PARAM -# if defined (__STDC__) || defined (__cplusplus) -int yyparse (void *YYPARSE_PARAM) -# else -int yyparse (YYPARSE_PARAM) - void *YYPARSE_PARAM; -# endif +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) +int +yyparse (void *YYPARSE_PARAM) +#else +int +yyparse (YYPARSE_PARAM) + void *YYPARSE_PARAM; +#endif #else /* ! YYPARSE_PARAM */ -#if defined (__STDC__) || defined (__cplusplus) +#if (defined __STDC__ || defined __C99__FUNC__ \ + || defined __cplusplus || defined _MSC_VER) int yyparse (void) #else @@ -2567,88 +2909,99 @@ yyparse () #endif #endif { - /* The look-ahead symbol. */ +/* The lookahead symbol. */ int yychar; -/* The semantic value of the look-ahead symbol. */ +/* The semantic value of the lookahead symbol. */ YYSTYPE yylval; -/* Number of syntax errors so far. */ -int yynerrs; -/* Location data for the look-ahead symbol. */ +/* Location data for the lookahead symbol. */ YYLTYPE yylloc; - register int yystate; - register int yyn; + /* Number of syntax errors so far. */ + int yynerrs; + + int yystate; + /* Number of tokens to shift before error messages enabled. */ + int yyerrstatus; + + /* The stacks and their tools: + `yyss': related to states. + `yyvs': related to semantic values. + `yyls': related to locations. + + Refer to the stacks thru separate pointers, to allow yyoverflow + to reallocate them elsewhere. */ + + /* The state stack. */ + yytype_int16 yyssa[YYINITDEPTH]; + yytype_int16 *yyss; + yytype_int16 *yyssp; + + /* The semantic value stack. */ + YYSTYPE yyvsa[YYINITDEPTH]; + YYSTYPE *yyvs; + YYSTYPE *yyvsp; + + /* The location stack. */ + YYLTYPE yylsa[YYINITDEPTH]; + YYLTYPE *yyls; + YYLTYPE *yylsp; + + /* The locations where the error started and ended. */ + YYLTYPE yyerror_range[2]; + + YYSIZE_T yystacksize; + + int yyn; int yyresult; - /* Number of tokens to shift before error messages enabled. */ - int yyerrstatus; - /* Look-ahead token as an internal (translated) token number. */ - int yytoken = 0; - - /* Three stacks and their tools: - `yyss': related to states, - `yyvs': related to semantic values, - `yyls': related to locations. - - Refer to the stacks thru separate pointers, to allow yyoverflow - to reallocate them elsewhere. */ - - /* The state stack. */ - short int yyssa[YYINITDEPTH]; - short int *yyss = yyssa; - register short int *yyssp; - - /* The semantic value stack. */ - YYSTYPE yyvsa[YYINITDEPTH]; - YYSTYPE *yyvs = yyvsa; - register YYSTYPE *yyvsp; - - /* The location stack. */ - YYLTYPE yylsa[YYINITDEPTH]; - YYLTYPE *yyls = yylsa; - YYLTYPE *yylsp; - /* The locations where the error started and ended. */ - YYLTYPE yyerror_range[2]; - -#define YYPOPSTACK (yyvsp--, yyssp--, yylsp--) - - YYSIZE_T yystacksize = YYINITDEPTH; - + /* Lookahead token as an internal (translated) token number. */ + int yytoken; /* The variables used to return semantic value and location from the action routines. */ YYSTYPE yyval; YYLTYPE yyloc; - /* When reducing, the number of symbols on the RHS of the reduced - rule. */ - int yylen; +#if YYERROR_VERBOSE + /* Buffer for error messages, and its allocated size. */ + char yymsgbuf[128]; + char *yymsg = yymsgbuf; + YYSIZE_T yymsg_alloc = sizeof yymsgbuf; +#endif + +#define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N), yylsp -= (N)) + + /* The number of symbols on the RHS of the reduced rule. + Keep to zero when no symbol should be popped. */ + int yylen = 0; + + yytoken = 0; + yyss = yyssa; + yyvs = yyvsa; + yyls = yylsa; + yystacksize = YYINITDEPTH; YYDPRINTF ((stderr, "Starting parse\n")); yystate = 0; yyerrstatus = 0; yynerrs = 0; - yychar = YYEMPTY; /* Cause a token to be read. */ + yychar = YYEMPTY; /* Cause a token to be read. */ /* Initialize stack pointers. Waste one element of value and location stack so that they stay on the same level as the state stack. The wasted elements are never initialized. */ - yyssp = yyss; yyvsp = yyvs; yylsp = yyls; + #if YYLTYPE_IS_TRIVIAL /* Initialize the default location before parsing starts. */ yylloc.first_line = yylloc.last_line = 1; - yylloc.first_column = yylloc.last_column = 0; + yylloc.first_column = yylloc.last_column = 1; #endif - - yyvsp[0] = yylval; - yylsp[0] = yylloc; - goto yysetstate; /*------------------------------------------------------------. @@ -2656,8 +3009,7 @@ YYLTYPE yylloc; `------------------------------------------------------------*/ yynewstate: /* In all cases, when you get here, the value and location stacks - have just been pushed. so pushing a state here evens the stacks. - */ + have just been pushed. So pushing a state here evens the stacks. */ yyssp++; yysetstate: @@ -2670,46 +3022,47 @@ YYLTYPE yylloc; #ifdef yyoverflow { - /* Give user a chance to reallocate the stack. Use copies of + /* Give user a chance to reallocate the stack. Use copies of these so that the &'s don't force the real ones into memory. */ YYSTYPE *yyvs1 = yyvs; - short int *yyss1 = yyss; + yytype_int16 *yyss1 = yyss; YYLTYPE *yyls1 = yyls; /* Each stack pointer address is followed by the size of the data in use in that stack, in bytes. This used to be a conditional around just the two extra args, but that might be undefined if yyoverflow is a macro. */ - yyoverflow ("parser stack overflow", + yyoverflow (YY_("memory exhausted"), &yyss1, yysize * sizeof (*yyssp), &yyvs1, yysize * sizeof (*yyvsp), &yyls1, yysize * sizeof (*yylsp), &yystacksize); + yyls = yyls1; yyss = yyss1; yyvs = yyvs1; } #else /* no yyoverflow */ # ifndef YYSTACK_RELOCATE - goto yyoverflowlab; + goto yyexhaustedlab; # else /* Extend the stack our own way. */ if (YYMAXDEPTH <= yystacksize) - goto yyoverflowlab; + goto yyexhaustedlab; yystacksize *= 2; if (YYMAXDEPTH < yystacksize) yystacksize = YYMAXDEPTH; { - short int *yyss1 = yyss; + yytype_int16 *yyss1 = yyss; union yyalloc *yyptr = (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize)); if (! yyptr) - goto yyoverflowlab; - YYSTACK_RELOCATE (yyss); - YYSTACK_RELOCATE (yyvs); - YYSTACK_RELOCATE (yyls); + goto yyexhaustedlab; + YYSTACK_RELOCATE (yyss_alloc, yyss); + YYSTACK_RELOCATE (yyvs_alloc, yyvs); + YYSTACK_RELOCATE (yyls_alloc, yyls); # undef YYSTACK_RELOCATE if (yyss1 != yyssa) YYSTACK_FREE (yyss1); @@ -2730,6 +3083,9 @@ YYLTYPE yylloc; YYDPRINTF ((stderr, "Entering state %d\n", yystate)); + if (yystate == YYFINAL) + YYACCEPT; + goto yybackup; /*-----------. @@ -2737,19 +3093,17 @@ YYLTYPE yylloc; `-----------*/ yybackup: -/* Do appropriate processing given the current state. */ -/* Read a look-ahead token if we need one and don't already have one. */ -/* yyresume: */ - - /* First try to decide what to do without reference to look-ahead token. */ + /* Do appropriate processing given the current state. Read a + lookahead token if we need one and don't already have one. */ + /* First try to decide what to do without reference to lookahead token. */ yyn = yypact[yystate]; if (yyn == YYPACT_NINF) goto yydefault; - /* Not known => get a look-ahead token if don't already have one. */ + /* Not known => get a lookahead token if don't already have one. */ - /* YYCHAR is either YYEMPTY or YYEOF or a valid look-ahead symbol. */ + /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol. */ if (yychar == YYEMPTY) { YYDPRINTF ((stderr, "Reading a token: ")); @@ -2781,25 +3135,20 @@ yybackup: goto yyreduce; } - if (yyn == YYFINAL) - YYACCEPT; - - /* Shift the look-ahead token. */ - YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc); - - /* Discard the token being shifted unless it is eof. */ - if (yychar != YYEOF) - yychar = YYEMPTY; - - *++yyvsp = yylval; - *++yylsp = yylloc; - /* Count tokens shifted since error; after three, turn off error status. */ if (yyerrstatus) yyerrstatus--; + /* Shift the lookahead token. */ + YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc); + + /* Discard the shifted token. */ + yychar = YYEMPTY; + yystate = yyn; + *++yyvsp = yylval; + *++yylsp = yylloc; goto yynewstate; @@ -2830,41 +3179,51 @@ yyreduce: GCC warning that YYVAL may be used uninitialized. */ yyval = yyvsp[1-yylen]; - /* Default location. */ - YYLLOC_DEFAULT (yyloc, yylsp - yylen, yylen); + /* Default location. */ + YYLLOC_DEFAULT (yyloc, (yylsp - yylen), yylen); YY_REDUCE_PRINT (yyn); switch (yyn) { case 3: + +/* Line 1455 of yacc.c */ #line 383 "cppBison.yxx" { - current_expr = (yyvsp[0].u.expr); + current_expr = (yyvsp[(2) - (2)].u.expr); } break; case 4: + +/* Line 1455 of yacc.c */ #line 387 "cppBison.yxx" { - current_type = (yyvsp[0].u.type); + current_type = (yyvsp[(2) - (2)].u.type); } break; case 10: + +/* Line 1455 of yacc.c */ #line 405 "cppBison.yxx" { - delete (yyvsp[-1].u.expr); + delete (yyvsp[(3) - (4)].u.expr); } break; case 11: + +/* Line 1455 of yacc.c */ #line 417 "cppBison.yxx" { push_storage_class((current_storage_class & ~CPPInstance::SC_c_binding) | - ((yyvsp[-1].u.integer) & CPPInstance::SC_c_binding)); + ((yyvsp[(1) - (2)].u.integer) & CPPInstance::SC_c_binding)); } break; case 12: + +/* Line 1455 of yacc.c */ #line 422 "cppBison.yxx" { pop_storage_class(); @@ -2872,6 +3231,8 @@ yyreduce: break; case 20: + +/* Line 1455 of yacc.c */ #line 436 "cppBison.yxx" { if (publish_nest_level != 0) { @@ -2881,17 +3242,19 @@ yyreduce: } publish_previous = current_scope->get_current_vis(); - publish_loc = (yylsp[0]); + publish_loc = (yylsp[(1) - (1)]); publish_nest_level++; current_scope->set_current_vis(V_published); } break; case 21: + +/* Line 1455 of yacc.c */ #line 449 "cppBison.yxx" { if (publish_nest_level != 1) { - yyerror("Unmatched __end_publish", (yylsp[0])); + yyerror("Unmatched __end_publish", (yylsp[(1) - (1)])); } else { current_scope->set_current_vis(publish_previous); } @@ -2900,6 +3263,8 @@ yyreduce: break; case 22: + +/* Line 1455 of yacc.c */ #line 458 "cppBison.yxx" { current_scope->set_current_vis(V_published); @@ -2907,6 +3272,8 @@ yyreduce: break; case 23: + +/* Line 1455 of yacc.c */ #line 462 "cppBison.yxx" { if (publish_nest_level > 0) { @@ -2918,6 +3285,8 @@ yyreduce: break; case 24: + +/* Line 1455 of yacc.c */ #line 470 "cppBison.yxx" { current_scope->set_current_vis(V_protected); @@ -2925,6 +3294,8 @@ yyreduce: break; case 25: + +/* Line 1455 of yacc.c */ #line 474 "cppBison.yxx" { current_scope->set_current_vis(V_private); @@ -2932,14 +3303,18 @@ yyreduce: break; case 26: + +/* Line 1455 of yacc.c */ #line 478 "cppBison.yxx" { - CPPMakeSeq *make_seq = new CPPMakeSeq((yyvsp[-6].u.identifier)->get_simple_name(), (yyvsp[-4].u.identifier)->get_simple_name(), (yyvsp[-2].u.identifier)->get_simple_name(), (yylsp[-8]).file); - current_scope->add_declaration(make_seq, global_scope, current_lexer, (yylsp[-8])); + CPPMakeSeq *make_seq = new CPPMakeSeq((yyvsp[(3) - (9)].u.identifier)->get_simple_name(), (yyvsp[(5) - (9)].u.identifier)->get_simple_name(), (yyvsp[(7) - (9)].u.identifier)->get_simple_name(), (yylsp[(1) - (9)]).file); + current_scope->add_declaration(make_seq, global_scope, current_lexer, (yylsp[(1) - (9)])); } break; case 27: + +/* Line 1455 of yacc.c */ #line 486 "cppBison.yxx" { CPPScope *new_scope = new CPPScope(current_scope, CPPNameComponent("temp"), @@ -2949,6 +3324,8 @@ yyreduce: break; case 28: + +/* Line 1455 of yacc.c */ #line 492 "cppBison.yxx" { delete current_scope; @@ -2957,6 +3334,8 @@ yyreduce: break; case 29: + +/* Line 1455 of yacc.c */ #line 501 "cppBison.yxx" { (yyval.u.integer) = 0; @@ -2964,83 +3343,105 @@ yyreduce: break; case 30: + +/* Line 1455 of yacc.c */ #line 505 "cppBison.yxx" { - (yyval.u.integer) = (yyvsp[-1].u.integer) | (int)CPPInstance::SC_extern; + (yyval.u.integer) = (yyvsp[(1) - (2)].u.integer) | (int)CPPInstance::SC_extern; } break; case 31: + +/* Line 1455 of yacc.c */ #line 509 "cppBison.yxx" { - (yyval.u.integer) = (yyvsp[-2].u.integer) | (int)CPPInstance::SC_extern; - if ((yyvsp[0].str) == "C") { + (yyval.u.integer) = (yyvsp[(1) - (3)].u.integer) | (int)CPPInstance::SC_extern; + if ((yyvsp[(3) - (3)].str) == "C") { (yyval.u.integer) |= (int)CPPInstance::SC_c_binding; - } else if ((yyvsp[0].str) == "C++") { + } else if ((yyvsp[(3) - (3)].str) == "C++") { (yyval.u.integer) &= ~(int)CPPInstance::SC_c_binding; } else { - yywarning("Ignoring unknown linkage type \"" + (yyvsp[0].str) + "\"", (yylsp[0])); + yywarning("Ignoring unknown linkage type \"" + (yyvsp[(3) - (3)].str) + "\"", (yylsp[(3) - (3)])); } } break; case 32: + +/* Line 1455 of yacc.c */ #line 520 "cppBison.yxx" { - (yyval.u.integer) = (yyvsp[-1].u.integer) | (int)CPPInstance::SC_static; + (yyval.u.integer) = (yyvsp[(1) - (2)].u.integer) | (int)CPPInstance::SC_static; } break; case 33: + +/* Line 1455 of yacc.c */ #line 524 "cppBison.yxx" { - (yyval.u.integer) = (yyvsp[-1].u.integer) | (int)CPPInstance::SC_inline; + (yyval.u.integer) = (yyvsp[(1) - (2)].u.integer) | (int)CPPInstance::SC_inline; } break; case 34: + +/* Line 1455 of yacc.c */ #line 528 "cppBison.yxx" { - (yyval.u.integer) = (yyvsp[-1].u.integer) | (int)CPPInstance::SC_virtual; + (yyval.u.integer) = (yyvsp[(1) - (2)].u.integer) | (int)CPPInstance::SC_virtual; } break; case 35: + +/* Line 1455 of yacc.c */ #line 532 "cppBison.yxx" { - (yyval.u.integer) = (yyvsp[-1].u.integer) | (int)CPPInstance::SC_explicit; + (yyval.u.integer) = (yyvsp[(1) - (2)].u.integer) | (int)CPPInstance::SC_explicit; } break; case 36: + +/* Line 1455 of yacc.c */ #line 536 "cppBison.yxx" { - (yyval.u.integer) = (yyvsp[-1].u.integer) | (int)CPPInstance::SC_volatile; + (yyval.u.integer) = (yyvsp[(1) - (2)].u.integer) | (int)CPPInstance::SC_volatile; } break; case 37: + +/* Line 1455 of yacc.c */ #line 540 "cppBison.yxx" { - (yyval.u.integer) = (yyvsp[-1].u.integer) | (int)CPPInstance::SC_mutable; + (yyval.u.integer) = (yyvsp[(1) - (2)].u.integer) | (int)CPPInstance::SC_mutable; } break; case 38: + +/* Line 1455 of yacc.c */ #line 544 "cppBison.yxx" { - (yyval.u.integer) = (yyvsp[-1].u.integer) | (int)CPPInstance::SC_register; + (yyval.u.integer) = (yyvsp[(1) - (2)].u.integer) | (int)CPPInstance::SC_register; } break; case 39: + +/* Line 1455 of yacc.c */ #line 548 "cppBison.yxx" { - (yyval.u.integer) = (yyvsp[-1].u.integer) | (int)CPPInstance::SC_blocking; + (yyval.u.integer) = (yyvsp[(1) - (2)].u.integer) | (int)CPPInstance::SC_blocking; } break; case 40: + +/* Line 1455 of yacc.c */ #line 555 "cppBison.yxx" { /* multiple_var_declaration adds itself to the scope. */ @@ -3048,6 +3449,8 @@ yyreduce: break; case 41: + +/* Line 1455 of yacc.c */ #line 559 "cppBison.yxx" { // We don't really care about the storage class here. In fact, it's @@ -3055,36 +3458,42 @@ yyreduce: // storage class, but we require it just to help yacc out in its // parsing. - current_scope->add_declaration((yyvsp[-1].u.decl), global_scope, current_lexer, (yylsp[-1])); + current_scope->add_declaration((yyvsp[(2) - (3)].u.decl), global_scope, current_lexer, (yylsp[(2) - (3)])); } break; case 42: + +/* Line 1455 of yacc.c */ #line 568 "cppBison.yxx" { - if ((yyvsp[-1].u.instance) != (CPPInstance *)NULL) { - (yyvsp[-1].u.instance)->_storage_class |= (current_storage_class | (yyvsp[-2].u.integer)); - current_scope->add_declaration((yyvsp[-1].u.instance), global_scope, current_lexer, (yylsp[-1])); - (yyvsp[-1].u.instance)->set_initializer((yyvsp[0].u.expr)); + if ((yyvsp[(2) - (3)].u.instance) != (CPPInstance *)NULL) { + (yyvsp[(2) - (3)].u.instance)->_storage_class |= (current_storage_class | (yyvsp[(1) - (3)].u.integer)); + current_scope->add_declaration((yyvsp[(2) - (3)].u.instance), global_scope, current_lexer, (yylsp[(2) - (3)])); + (yyvsp[(2) - (3)].u.instance)->set_initializer((yyvsp[(3) - (3)].u.expr)); } } break; case 43: + +/* Line 1455 of yacc.c */ #line 579 "cppBison.yxx" { // We don't need to push/pop type, because we can't nest // multiple_var_declarations. - if ((yyvsp[0].u.decl)->as_type_declaration()) { - current_type = (yyvsp[0].u.decl)->as_type_declaration()->_type; + if ((yyvsp[(2) - (2)].u.decl)->as_type_declaration()) { + current_type = (yyvsp[(2) - (2)].u.decl)->as_type_declaration()->_type; } else { - current_type = (yyvsp[0].u.decl)->as_type(); + current_type = (yyvsp[(2) - (2)].u.decl)->as_type(); } - push_storage_class((yyvsp[-1].u.integer)); + push_storage_class((yyvsp[(1) - (2)].u.integer)); } break; case 44: + +/* Line 1455 of yacc.c */ #line 590 "cppBison.yxx" { pop_storage_class(); @@ -3092,16 +3501,20 @@ yyreduce: break; case 45: + +/* Line 1455 of yacc.c */ #line 594 "cppBison.yxx" { // We don't need to push/pop type, because we can't nest // multiple_var_declarations. - current_type = (yyvsp[0].u.type); - push_storage_class((yyvsp[-2].u.integer)); + current_type = (yyvsp[(3) - (3)].u.type); + push_storage_class((yyvsp[(1) - (3)].u.integer)); } break; case 46: + +/* Line 1455 of yacc.c */ #line 601 "cppBison.yxx" { pop_storage_class(); @@ -3109,66 +3522,78 @@ yyreduce: break; case 47: + +/* Line 1455 of yacc.c */ #line 612 "cppBison.yxx" { - CPPInstance *inst = new CPPInstance(current_type, (yyvsp[-1].u.inst_ident), + CPPInstance *inst = new CPPInstance(current_type, (yyvsp[(1) - (2)].u.inst_ident), current_storage_class, - (yylsp[-1]).file); - inst->set_initializer((yyvsp[0].u.expr)); - current_scope->add_declaration(inst, global_scope, current_lexer, (yylsp[-1])); + (yylsp[(1) - (2)]).file); + inst->set_initializer((yyvsp[(2) - (2)].u.expr)); + current_scope->add_declaration(inst, global_scope, current_lexer, (yylsp[(1) - (2)])); } break; case 48: + +/* Line 1455 of yacc.c */ #line 620 "cppBison.yxx" { - CPPInstance *inst = new CPPInstance(current_type, (yyvsp[-3].u.inst_ident), + CPPInstance *inst = new CPPInstance(current_type, (yyvsp[(1) - (4)].u.inst_ident), current_storage_class, - (yylsp[-3]).file); - inst->set_initializer((yyvsp[-2].u.expr)); - current_scope->add_declaration(inst, global_scope, current_lexer, (yylsp[-3])); + (yylsp[(1) - (4)]).file); + inst->set_initializer((yyvsp[(2) - (4)].u.expr)); + current_scope->add_declaration(inst, global_scope, current_lexer, (yylsp[(1) - (4)])); } break; case 49: + +/* Line 1455 of yacc.c */ #line 631 "cppBison.yxx" { - (yyvsp[-1].u.inst_ident)->add_modifier(IIT_const); - CPPInstance *inst = new CPPInstance(current_type, (yyvsp[-1].u.inst_ident), + (yyvsp[(1) - (2)].u.inst_ident)->add_modifier(IIT_const); + CPPInstance *inst = new CPPInstance(current_type, (yyvsp[(1) - (2)].u.inst_ident), current_storage_class, - (yylsp[-1]).file); - inst->set_initializer((yyvsp[0].u.expr)); - current_scope->add_declaration(inst, global_scope, current_lexer, (yylsp[-1])); + (yylsp[(1) - (2)]).file); + inst->set_initializer((yyvsp[(2) - (2)].u.expr)); + current_scope->add_declaration(inst, global_scope, current_lexer, (yylsp[(1) - (2)])); } break; case 50: + +/* Line 1455 of yacc.c */ #line 640 "cppBison.yxx" { - (yyvsp[-3].u.inst_ident)->add_modifier(IIT_const); - CPPInstance *inst = new CPPInstance(current_type, (yyvsp[-3].u.inst_ident), + (yyvsp[(1) - (4)].u.inst_ident)->add_modifier(IIT_const); + CPPInstance *inst = new CPPInstance(current_type, (yyvsp[(1) - (4)].u.inst_ident), current_storage_class, - (yylsp[-3]).file); - inst->set_initializer((yyvsp[-2].u.expr)); - current_scope->add_declaration(inst, global_scope, current_lexer, (yylsp[-3])); + (yylsp[(1) - (4)]).file); + inst->set_initializer((yyvsp[(2) - (4)].u.expr)); + current_scope->add_declaration(inst, global_scope, current_lexer, (yylsp[(1) - (4)])); } break; case 51: + +/* Line 1455 of yacc.c */ #line 653 "cppBison.yxx" { // We don't need to push/pop type, because we can't nest // multiple_var_declarations. - if ((yyvsp[0].u.decl)->as_type_declaration()) { - current_type = (yyvsp[0].u.decl)->as_type_declaration()->_type; + if ((yyvsp[(2) - (2)].u.decl)->as_type_declaration()) { + current_type = (yyvsp[(2) - (2)].u.decl)->as_type_declaration()->_type; } else { - current_type = (yyvsp[0].u.decl)->as_type(); + current_type = (yyvsp[(2) - (2)].u.decl)->as_type(); } - push_storage_class((yyvsp[-1].u.integer)); + push_storage_class((yyvsp[(1) - (2)].u.integer)); } break; case 52: + +/* Line 1455 of yacc.c */ #line 664 "cppBison.yxx" { pop_storage_class(); @@ -3176,16 +3601,20 @@ yyreduce: break; case 53: + +/* Line 1455 of yacc.c */ #line 668 "cppBison.yxx" { // We don't need to push/pop type, because we can't nest // multiple_var_declarations. - current_type = (yyvsp[0].u.type); - push_storage_class((yyvsp[-2].u.integer)); + current_type = (yyvsp[(3) - (3)].u.type); + push_storage_class((yyvsp[(1) - (3)].u.integer)); } break; case 54: + +/* Line 1455 of yacc.c */ #line 675 "cppBison.yxx" { pop_storage_class(); @@ -3193,78 +3622,92 @@ yyreduce: break; case 55: + +/* Line 1455 of yacc.c */ #line 679 "cppBison.yxx" { - if ((yyvsp[-1].u.instance) != (CPPDeclaration *)NULL) { - CPPInstance *inst = (yyvsp[-1].u.instance)->as_instance(); + if ((yyvsp[(2) - (3)].u.instance) != (CPPDeclaration *)NULL) { + CPPInstance *inst = (yyvsp[(2) - (3)].u.instance)->as_instance(); if (inst != (CPPInstance *)NULL) { - inst->_storage_class |= (current_storage_class | (yyvsp[-2].u.integer)); - current_scope->add_declaration(inst, global_scope, current_lexer, (yylsp[-1])); - current_scope->add_declaration(new CPPTypedef(inst, current_scope == global_scope), global_scope, current_lexer, (yylsp[-1])); + inst->_storage_class |= (current_storage_class | (yyvsp[(1) - (3)].u.integer)); + current_scope->add_declaration(inst, global_scope, current_lexer, (yylsp[(2) - (3)])); + current_scope->add_declaration(new CPPTypedef(inst, current_scope == global_scope), global_scope, current_lexer, (yylsp[(2) - (3)])); } } } break; case 56: + +/* Line 1455 of yacc.c */ #line 693 "cppBison.yxx" { - CPPInstance *inst = new CPPInstance(current_type, (yyvsp[-1].u.inst_ident), + CPPInstance *inst = new CPPInstance(current_type, (yyvsp[(1) - (2)].u.inst_ident), current_storage_class, - (yylsp[-1]).file); - inst->set_initializer((yyvsp[0].u.expr)); - current_scope->add_declaration(new CPPTypedef(inst, current_scope == global_scope), global_scope, current_lexer, (yylsp[-1])); + (yylsp[(1) - (2)]).file); + inst->set_initializer((yyvsp[(2) - (2)].u.expr)); + current_scope->add_declaration(new CPPTypedef(inst, current_scope == global_scope), global_scope, current_lexer, (yylsp[(1) - (2)])); } break; case 57: + +/* Line 1455 of yacc.c */ #line 701 "cppBison.yxx" { - CPPInstance *inst = new CPPInstance(current_type, (yyvsp[-3].u.inst_ident), + CPPInstance *inst = new CPPInstance(current_type, (yyvsp[(1) - (4)].u.inst_ident), current_storage_class, - (yylsp[-3]).file); - inst->set_initializer((yyvsp[-2].u.expr)); - current_scope->add_declaration(new CPPTypedef(inst, current_scope == global_scope), global_scope, current_lexer, (yylsp[-3])); + (yylsp[(1) - (4)]).file); + inst->set_initializer((yyvsp[(2) - (4)].u.expr)); + current_scope->add_declaration(new CPPTypedef(inst, current_scope == global_scope), global_scope, current_lexer, (yylsp[(1) - (4)])); } break; case 58: + +/* Line 1455 of yacc.c */ #line 712 "cppBison.yxx" { - (yyvsp[-1].u.inst_ident)->add_modifier(IIT_const); - CPPInstance *inst = new CPPInstance(current_type, (yyvsp[-1].u.inst_ident), + (yyvsp[(1) - (2)].u.inst_ident)->add_modifier(IIT_const); + CPPInstance *inst = new CPPInstance(current_type, (yyvsp[(1) - (2)].u.inst_ident), current_storage_class, - (yylsp[-1]).file); - inst->set_initializer((yyvsp[0].u.expr)); - current_scope->add_declaration(new CPPTypedef(inst, current_scope == global_scope), global_scope, current_lexer, (yylsp[-1])); + (yylsp[(1) - (2)]).file); + inst->set_initializer((yyvsp[(2) - (2)].u.expr)); + current_scope->add_declaration(new CPPTypedef(inst, current_scope == global_scope), global_scope, current_lexer, (yylsp[(1) - (2)])); } break; case 59: + +/* Line 1455 of yacc.c */ #line 721 "cppBison.yxx" { - (yyvsp[-3].u.inst_ident)->add_modifier(IIT_const); - CPPInstance *inst = new CPPInstance(current_type, (yyvsp[-3].u.inst_ident), + (yyvsp[(1) - (4)].u.inst_ident)->add_modifier(IIT_const); + CPPInstance *inst = new CPPInstance(current_type, (yyvsp[(1) - (4)].u.inst_ident), current_storage_class, - (yylsp[-3]).file); - inst->set_initializer((yyvsp[-2].u.expr)); - current_scope->add_declaration(new CPPTypedef(inst, current_scope == global_scope), global_scope, current_lexer, (yylsp[-3])); + (yylsp[(1) - (4)]).file); + inst->set_initializer((yyvsp[(2) - (4)].u.expr)); + current_scope->add_declaration(new CPPTypedef(inst, current_scope == global_scope), global_scope, current_lexer, (yylsp[(1) - (4)])); } break; case 60: + +/* Line 1455 of yacc.c */ #line 735 "cppBison.yxx" { - push_scope((yyvsp[-1].u.identifier)->get_scope(current_scope, global_scope)); + push_scope((yyvsp[(1) - (2)].u.identifier)->get_scope(current_scope, global_scope)); } break; case 61: + +/* Line 1455 of yacc.c */ #line 739 "cppBison.yxx" { pop_scope(); CPPType *type; - if ((yyvsp[-5].u.identifier)->get_simple_name() == current_scope->get_simple_name()) { + if ((yyvsp[(1) - (6)].u.identifier)->get_simple_name() == current_scope->get_simple_name()) { // This is a constructor, and has no return. type = new CPPSimpleType(CPPSimpleType::T_void); } else { @@ -3273,26 +3716,30 @@ yyreduce: type = new CPPSimpleType(CPPSimpleType::T_int); } - CPPInstanceIdentifier *ii = new CPPInstanceIdentifier((yyvsp[-5].u.identifier)); - ii->add_func_modifier((yyvsp[-2].u.param_list), (yyvsp[0].u.integer)); + CPPInstanceIdentifier *ii = new CPPInstanceIdentifier((yyvsp[(1) - (6)].u.identifier)); + ii->add_func_modifier((yyvsp[(4) - (6)].u.param_list), (yyvsp[(6) - (6)].u.integer)); - (yyval.u.instance) = new CPPInstance(type, ii, 0, (yylsp[-5]).file); + (yyval.u.instance) = new CPPInstance(type, ii, 0, (yylsp[(1) - (6)]).file); } break; case 62: + +/* Line 1455 of yacc.c */ #line 757 "cppBison.yxx" { - push_scope((yyvsp[-1].u.identifier)->get_scope(current_scope, global_scope)); + push_scope((yyvsp[(1) - (2)].u.identifier)->get_scope(current_scope, global_scope)); } break; case 63: + +/* Line 1455 of yacc.c */ #line 761 "cppBison.yxx" { pop_scope(); CPPType *type; - if ((yyvsp[-5].u.identifier)->get_simple_name() == current_scope->get_simple_name()) { + if ((yyvsp[(1) - (6)].u.identifier)->get_simple_name() == current_scope->get_simple_name()) { // This is a constructor, and has no return. type = new CPPSimpleType(CPPSimpleType::T_void); } else { @@ -3301,97 +3748,113 @@ yyreduce: type = new CPPSimpleType(CPPSimpleType::T_int); } - CPPInstanceIdentifier *ii = new CPPInstanceIdentifier((yyvsp[-5].u.identifier)); - ii->add_func_modifier((yyvsp[-2].u.param_list), (yyvsp[0].u.integer)); + CPPInstanceIdentifier *ii = new CPPInstanceIdentifier((yyvsp[(1) - (6)].u.identifier)); + ii->add_func_modifier((yyvsp[(4) - (6)].u.param_list), (yyvsp[(6) - (6)].u.integer)); - (yyval.u.instance) = new CPPInstance(type, ii, 0, (yylsp[-5]).file); + (yyval.u.instance) = new CPPInstance(type, ii, 0, (yylsp[(1) - (6)]).file); } break; case 64: + +/* Line 1455 of yacc.c */ #line 781 "cppBison.yxx" { - push_scope((yyvsp[-1].u.identifier)->get_scope(current_scope, global_scope)); + push_scope((yyvsp[(2) - (3)].u.identifier)->get_scope(current_scope, global_scope)); } break; case 65: + +/* Line 1455 of yacc.c */ #line 785 "cppBison.yxx" { pop_scope(); - if ((yyvsp[-5].u.identifier)->is_scoped()) { - yyerror("Invalid destructor name: ~" + (yyvsp[-5].u.identifier)->get_fully_scoped_name(), (yylsp[-5])); + if ((yyvsp[(2) - (7)].u.identifier)->is_scoped()) { + yyerror("Invalid destructor name: ~" + (yyvsp[(2) - (7)].u.identifier)->get_fully_scoped_name(), (yylsp[(2) - (7)])); } else { CPPIdentifier *ident = - new CPPIdentifier("~" + (yyvsp[-5].u.identifier)->get_simple_name(), (yylsp[-5]).file); - delete (yyvsp[-5].u.identifier); + new CPPIdentifier("~" + (yyvsp[(2) - (7)].u.identifier)->get_simple_name(), (yylsp[(2) - (7)]).file); + delete (yyvsp[(2) - (7)].u.identifier); CPPType *type; type = new CPPSimpleType(CPPSimpleType::T_void); CPPInstanceIdentifier *ii = new CPPInstanceIdentifier(ident); - ii->add_func_modifier((yyvsp[-2].u.param_list), (yyvsp[0].u.integer)); + ii->add_func_modifier((yyvsp[(5) - (7)].u.param_list), (yyvsp[(7) - (7)].u.integer)); - (yyval.u.instance) = new CPPInstance(type, ii, 0, (yylsp[-5]).file); + (yyval.u.instance) = new CPPInstance(type, ii, 0, (yylsp[(2) - (7)]).file); } } break; case 66: + +/* Line 1455 of yacc.c */ #line 811 "cppBison.yxx" { - push_scope((yyvsp[-2].u.inst_ident)->get_scope(current_scope, global_scope)); + push_scope((yyvsp[(4) - (6)].u.inst_ident)->get_scope(current_scope, global_scope)); } break; case 67: + +/* Line 1455 of yacc.c */ #line 815 "cppBison.yxx" { pop_scope(); - CPPType *type = (yyvsp[-9].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); + CPPType *type = (yyvsp[(1) - (10)].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); assert(type != NULL); - CPPInstanceIdentifier *ii = (yyvsp[-6].u.inst_ident); + CPPInstanceIdentifier *ii = (yyvsp[(4) - (10)].u.inst_ident); ii->add_modifier(IIT_pointer); - ii->add_func_modifier((yyvsp[-2].u.param_list), (yyvsp[0].u.integer)); - (yyval.u.instance) = new CPPInstance(type, ii, 0, (yylsp[-9]).file); + ii->add_func_modifier((yyvsp[(8) - (10)].u.param_list), (yyvsp[(10) - (10)].u.integer)); + (yyval.u.instance) = new CPPInstance(type, ii, 0, (yylsp[(1) - (10)]).file); } break; case 68: + +/* Line 1455 of yacc.c */ #line 826 "cppBison.yxx" { - push_scope((yyvsp[-2].u.inst_ident)->get_scope(current_scope, global_scope)); + push_scope((yyvsp[(5) - (7)].u.inst_ident)->get_scope(current_scope, global_scope)); } break; case 69: + +/* Line 1455 of yacc.c */ #line 830 "cppBison.yxx" { pop_scope(); - CPPType *type = (yyvsp[-10].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); + CPPType *type = (yyvsp[(1) - (11)].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); assert(type != NULL); - CPPInstanceIdentifier *ii = (yyvsp[-6].u.inst_ident); - ii->add_scoped_pointer_modifier((yyvsp[-8].u.identifier)); - ii->add_func_modifier((yyvsp[-2].u.param_list), (yyvsp[0].u.integer)); - (yyval.u.instance) = new CPPInstance(type, ii, 0, (yylsp[-10]).file); + CPPInstanceIdentifier *ii = (yyvsp[(5) - (11)].u.inst_ident); + ii->add_scoped_pointer_modifier((yyvsp[(3) - (11)].u.identifier)); + ii->add_func_modifier((yyvsp[(9) - (11)].u.param_list), (yyvsp[(11) - (11)].u.integer)); + (yyval.u.instance) = new CPPInstance(type, ii, 0, (yylsp[(1) - (11)]).file); } break; case 70: + +/* Line 1455 of yacc.c */ #line 843 "cppBison.yxx" { - if ((yyvsp[-3].u.identifier) != NULL) { - push_scope((yyvsp[-3].u.identifier)->get_scope(current_scope, global_scope)); + if ((yyvsp[(1) - (4)].u.identifier) != NULL) { + push_scope((yyvsp[(1) - (4)].u.identifier)->get_scope(current_scope, global_scope)); } } break; case 71: + +/* Line 1455 of yacc.c */ #line 849 "cppBison.yxx" { - if ((yyvsp[-7].u.identifier) != NULL) { + if ((yyvsp[(1) - (8)].u.identifier) != NULL) { pop_scope(); } @@ -3404,51 +3867,57 @@ yyreduce: // We give typecast operators the name "operator typecast ", // where is a simple name of the type to be typecast. Use // the method's return type to determine the full type description. - string name = "operator typecast " + (yyvsp[-6].u.type)->get_simple_name(); - CPPIdentifier *ident = (yyvsp[-7].u.identifier); + string name = "operator typecast " + (yyvsp[(2) - (8)].u.type)->get_simple_name(); + CPPIdentifier *ident = (yyvsp[(1) - (8)].u.identifier); if (ident == NULL) { - ident = new CPPIdentifier(name, (yylsp[-7]).file); + ident = new CPPIdentifier(name, (yylsp[(1) - (8)]).file); } else { ident->add_name(name); } (yyval.u.instance) = CPPInstance::make_typecast_function - (new CPPInstance((yyvsp[-6].u.type), (yyvsp[-5].u.inst_ident), 0, (yylsp[-5]).file), ident, (yyvsp[-2].u.param_list), (yyvsp[0].u.integer)); + (new CPPInstance((yyvsp[(2) - (8)].u.type), (yyvsp[(3) - (8)].u.inst_ident), 0, (yylsp[(3) - (8)]).file), ident, (yyvsp[(6) - (8)].u.param_list), (yyvsp[(8) - (8)].u.integer)); } break; case 72: + +/* Line 1455 of yacc.c */ #line 874 "cppBison.yxx" { - if ((yyvsp[-4].u.identifier) != NULL) { - push_scope((yyvsp[-4].u.identifier)->get_scope(current_scope, global_scope)); + if ((yyvsp[(1) - (5)].u.identifier) != NULL) { + push_scope((yyvsp[(1) - (5)].u.identifier)->get_scope(current_scope, global_scope)); } } break; case 73: + +/* Line 1455 of yacc.c */ #line 880 "cppBison.yxx" { - if ((yyvsp[-8].u.identifier) != NULL) { + if ((yyvsp[(1) - (9)].u.identifier) != NULL) { pop_scope(); } - CPPIdentifier *ident = (yyvsp[-8].u.identifier); + CPPIdentifier *ident = (yyvsp[(1) - (9)].u.identifier); if (ident == NULL) { - ident = new CPPIdentifier("operator typecast", (yylsp[-8]).file); + ident = new CPPIdentifier("operator typecast", (yylsp[(1) - (9)]).file); } else { ident->add_name("operator typecast"); } - (yyvsp[-5].u.inst_ident)->add_modifier(IIT_const); + (yyvsp[(4) - (9)].u.inst_ident)->add_modifier(IIT_const); (yyval.u.instance) = CPPInstance::make_typecast_function - (new CPPInstance((yyvsp[-6].u.type), (yyvsp[-5].u.inst_ident), 0, (yylsp[-5]).file), ident, (yyvsp[-2].u.param_list), (yyvsp[0].u.integer)); + (new CPPInstance((yyvsp[(3) - (9)].u.type), (yyvsp[(4) - (9)].u.inst_ident), 0, (yylsp[(4) - (9)]).file), ident, (yyvsp[(7) - (9)].u.param_list), (yyvsp[(9) - (9)].u.integer)); } break; case 74: + +/* Line 1455 of yacc.c */ #line 900 "cppBison.yxx" { CPPDeclaration *decl = - (yyvsp[0].u.identifier)->find_symbol(current_scope, global_scope, current_lexer); + (yyvsp[(1) - (1)].u.identifier)->find_symbol(current_scope, global_scope, current_lexer); if (decl != (CPPDeclaration *)NULL) { (yyval.u.instance) = decl->as_instance(); } else { @@ -3458,6 +3927,8 @@ yyreduce: break; case 75: + +/* Line 1455 of yacc.c */ #line 913 "cppBison.yxx" { (yyval.u.integer) = 0; @@ -3465,6 +3936,8 @@ yyreduce: break; case 76: + +/* Line 1455 of yacc.c */ #line 917 "cppBison.yxx" { (yyval.u.integer) = (int)CPPFunctionType::F_const_method; @@ -3472,20 +3945,26 @@ yyreduce: break; case 77: + +/* Line 1455 of yacc.c */ #line 921 "cppBison.yxx" { - (yyval.u.integer) = (yyvsp[-3].u.integer); + (yyval.u.integer) = (yyvsp[(1) - (4)].u.integer); } break; case 78: + +/* Line 1455 of yacc.c */ #line 925 "cppBison.yxx" { - (yyval.u.integer) = (yyvsp[-4].u.integer); + (yyval.u.integer) = (yyvsp[(1) - (5)].u.integer); } break; case 79: + +/* Line 1455 of yacc.c */ #line 932 "cppBison.yxx" { (yyval.str) = "!"; @@ -3493,6 +3972,8 @@ yyreduce: break; case 80: + +/* Line 1455 of yacc.c */ #line 936 "cppBison.yxx" { (yyval.str) = "~"; @@ -3500,6 +3981,8 @@ yyreduce: break; case 81: + +/* Line 1455 of yacc.c */ #line 940 "cppBison.yxx" { (yyval.str) = "*"; @@ -3507,6 +3990,8 @@ yyreduce: break; case 82: + +/* Line 1455 of yacc.c */ #line 944 "cppBison.yxx" { (yyval.str) = "/"; @@ -3514,6 +3999,8 @@ yyreduce: break; case 83: + +/* Line 1455 of yacc.c */ #line 948 "cppBison.yxx" { (yyval.str) = "%"; @@ -3521,6 +4008,8 @@ yyreduce: break; case 84: + +/* Line 1455 of yacc.c */ #line 952 "cppBison.yxx" { (yyval.str) = "+"; @@ -3528,6 +4017,8 @@ yyreduce: break; case 85: + +/* Line 1455 of yacc.c */ #line 956 "cppBison.yxx" { (yyval.str) = "-"; @@ -3535,6 +4026,8 @@ yyreduce: break; case 86: + +/* Line 1455 of yacc.c */ #line 960 "cppBison.yxx" { (yyval.str) = "|"; @@ -3542,6 +4035,8 @@ yyreduce: break; case 87: + +/* Line 1455 of yacc.c */ #line 964 "cppBison.yxx" { (yyval.str) = "&"; @@ -3549,6 +4044,8 @@ yyreduce: break; case 88: + +/* Line 1455 of yacc.c */ #line 968 "cppBison.yxx" { (yyval.str) = "^"; @@ -3556,6 +4053,8 @@ yyreduce: break; case 89: + +/* Line 1455 of yacc.c */ #line 972 "cppBison.yxx" { (yyval.str) = "||"; @@ -3563,6 +4062,8 @@ yyreduce: break; case 90: + +/* Line 1455 of yacc.c */ #line 976 "cppBison.yxx" { (yyval.str) = "&&"; @@ -3570,6 +4071,8 @@ yyreduce: break; case 91: + +/* Line 1455 of yacc.c */ #line 980 "cppBison.yxx" { (yyval.str) = "=="; @@ -3577,6 +4080,8 @@ yyreduce: break; case 92: + +/* Line 1455 of yacc.c */ #line 984 "cppBison.yxx" { (yyval.str) = "!="; @@ -3584,6 +4089,8 @@ yyreduce: break; case 93: + +/* Line 1455 of yacc.c */ #line 988 "cppBison.yxx" { (yyval.str) = "<="; @@ -3591,6 +4098,8 @@ yyreduce: break; case 94: + +/* Line 1455 of yacc.c */ #line 992 "cppBison.yxx" { (yyval.str) = ">="; @@ -3598,6 +4107,8 @@ yyreduce: break; case 95: + +/* Line 1455 of yacc.c */ #line 996 "cppBison.yxx" { (yyval.str) = "<"; @@ -3605,6 +4116,8 @@ yyreduce: break; case 96: + +/* Line 1455 of yacc.c */ #line 1000 "cppBison.yxx" { (yyval.str) = ">"; @@ -3612,6 +4125,8 @@ yyreduce: break; case 97: + +/* Line 1455 of yacc.c */ #line 1004 "cppBison.yxx" { (yyval.str) = "<<"; @@ -3619,6 +4134,8 @@ yyreduce: break; case 98: + +/* Line 1455 of yacc.c */ #line 1008 "cppBison.yxx" { (yyval.str) = ">>"; @@ -3626,6 +4143,8 @@ yyreduce: break; case 99: + +/* Line 1455 of yacc.c */ #line 1012 "cppBison.yxx" { (yyval.str) = "="; @@ -3633,6 +4152,8 @@ yyreduce: break; case 100: + +/* Line 1455 of yacc.c */ #line 1016 "cppBison.yxx" { (yyval.str) = ","; @@ -3640,6 +4161,8 @@ yyreduce: break; case 101: + +/* Line 1455 of yacc.c */ #line 1020 "cppBison.yxx" { (yyval.str) = "++"; @@ -3647,6 +4170,8 @@ yyreduce: break; case 102: + +/* Line 1455 of yacc.c */ #line 1024 "cppBison.yxx" { (yyval.str) = "--"; @@ -3654,6 +4179,8 @@ yyreduce: break; case 103: + +/* Line 1455 of yacc.c */ #line 1028 "cppBison.yxx" { (yyval.str) = "*="; @@ -3661,6 +4188,8 @@ yyreduce: break; case 104: + +/* Line 1455 of yacc.c */ #line 1032 "cppBison.yxx" { (yyval.str) = "/="; @@ -3668,6 +4197,8 @@ yyreduce: break; case 105: + +/* Line 1455 of yacc.c */ #line 1036 "cppBison.yxx" { (yyval.str) = "%="; @@ -3675,6 +4206,8 @@ yyreduce: break; case 106: + +/* Line 1455 of yacc.c */ #line 1040 "cppBison.yxx" { (yyval.str) = "+="; @@ -3682,6 +4215,8 @@ yyreduce: break; case 107: + +/* Line 1455 of yacc.c */ #line 1044 "cppBison.yxx" { (yyval.str) = "-="; @@ -3689,6 +4224,8 @@ yyreduce: break; case 108: + +/* Line 1455 of yacc.c */ #line 1048 "cppBison.yxx" { (yyval.str) = "|="; @@ -3696,6 +4233,8 @@ yyreduce: break; case 109: + +/* Line 1455 of yacc.c */ #line 1052 "cppBison.yxx" { (yyval.str) = "&="; @@ -3703,6 +4242,8 @@ yyreduce: break; case 110: + +/* Line 1455 of yacc.c */ #line 1056 "cppBison.yxx" { (yyval.str) = "^="; @@ -3710,6 +4251,8 @@ yyreduce: break; case 111: + +/* Line 1455 of yacc.c */ #line 1060 "cppBison.yxx" { (yyval.str) = "<<="; @@ -3717,6 +4260,8 @@ yyreduce: break; case 112: + +/* Line 1455 of yacc.c */ #line 1064 "cppBison.yxx" { (yyval.str) = ">>="; @@ -3724,6 +4269,8 @@ yyreduce: break; case 113: + +/* Line 1455 of yacc.c */ #line 1068 "cppBison.yxx" { (yyval.str) = "->"; @@ -3731,6 +4278,8 @@ yyreduce: break; case 114: + +/* Line 1455 of yacc.c */ #line 1072 "cppBison.yxx" { (yyval.str) = "[]"; @@ -3738,6 +4287,8 @@ yyreduce: break; case 115: + +/* Line 1455 of yacc.c */ #line 1076 "cppBison.yxx" { (yyval.str) = "()"; @@ -3745,6 +4296,8 @@ yyreduce: break; case 116: + +/* Line 1455 of yacc.c */ #line 1080 "cppBison.yxx" { (yyval.str) = "new"; @@ -3752,6 +4305,8 @@ yyreduce: break; case 117: + +/* Line 1455 of yacc.c */ #line 1084 "cppBison.yxx" { (yyval.str) = "delete"; @@ -3759,6 +4314,8 @@ yyreduce: break; case 120: + +/* Line 1455 of yacc.c */ #line 1096 "cppBison.yxx" { push_scope(new CPPTemplateScope(current_scope)); @@ -3766,6 +4323,8 @@ yyreduce: break; case 121: + +/* Line 1455 of yacc.c */ #line 1100 "cppBison.yxx" { pop_scope(); @@ -3773,104 +4332,128 @@ yyreduce: break; case 124: + +/* Line 1455 of yacc.c */ #line 1112 "cppBison.yxx" { CPPTemplateScope *ts = current_scope->as_template_scope(); assert(ts != NULL); - ts->add_template_parameter((yyvsp[0].u.decl)); + ts->add_template_parameter((yyvsp[(1) - (1)].u.decl)); } break; case 125: + +/* Line 1455 of yacc.c */ #line 1118 "cppBison.yxx" { CPPTemplateScope *ts = current_scope->as_template_scope(); assert(ts != NULL); - ts->add_template_parameter((yyvsp[0].u.decl)); + ts->add_template_parameter((yyvsp[(3) - (3)].u.decl)); } break; case 126: + +/* Line 1455 of yacc.c */ #line 1127 "cppBison.yxx" { - (yyval.u.decl) = CPPType::new_type(new CPPClassTemplateParameter((yyvsp[0].u.identifier))); + (yyval.u.decl) = CPPType::new_type(new CPPClassTemplateParameter((yyvsp[(2) - (2)].u.identifier))); } break; case 127: + +/* Line 1455 of yacc.c */ #line 1131 "cppBison.yxx" { - (yyval.u.decl) = CPPType::new_type(new CPPClassTemplateParameter((yyvsp[-2].u.identifier), (yyvsp[0].u.type))); + (yyval.u.decl) = CPPType::new_type(new CPPClassTemplateParameter((yyvsp[(2) - (4)].u.identifier), (yyvsp[(4) - (4)].u.type))); } break; case 128: + +/* Line 1455 of yacc.c */ #line 1135 "cppBison.yxx" { - CPPInstance *inst = new CPPInstance((yyvsp[-2].u.type), (yyvsp[-1].u.inst_ident), 0, (yylsp[-1]).file); - inst->set_initializer((yyvsp[0].u.expr)); + CPPInstance *inst = new CPPInstance((yyvsp[(1) - (3)].u.type), (yyvsp[(2) - (3)].u.inst_ident), 0, (yylsp[(2) - (3)]).file); + inst->set_initializer((yyvsp[(3) - (3)].u.expr)); (yyval.u.decl) = inst; } break; case 129: + +/* Line 1455 of yacc.c */ #line 1141 "cppBison.yxx" { - (yyvsp[-1].u.inst_ident)->add_modifier(IIT_const); - CPPInstance *inst = new CPPInstance((yyvsp[-2].u.type), (yyvsp[-1].u.inst_ident), 0, (yylsp[-1]).file); - inst->set_initializer((yyvsp[0].u.expr)); + (yyvsp[(3) - (4)].u.inst_ident)->add_modifier(IIT_const); + CPPInstance *inst = new CPPInstance((yyvsp[(2) - (4)].u.type), (yyvsp[(3) - (4)].u.inst_ident), 0, (yylsp[(3) - (4)]).file); + inst->set_initializer((yyvsp[(4) - (4)].u.expr)); (yyval.u.decl) = inst; } break; case 130: + +/* Line 1455 of yacc.c */ #line 1151 "cppBison.yxx" { - (yyval.u.type) = CPPType::new_type((yyvsp[0].u.simple_type)); + (yyval.u.type) = CPPType::new_type((yyvsp[(1) - (1)].u.simple_type)); } break; case 131: + +/* Line 1455 of yacc.c */ #line 1155 "cppBison.yxx" { - yywarning("Not a type: " + (yyvsp[0].u.identifier)->get_fully_scoped_name(), (yylsp[0])); + yywarning("Not a type: " + (yyvsp[(1) - (1)].u.identifier)->get_fully_scoped_name(), (yylsp[(1) - (1)])); (yyval.u.type) = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_unknown)); } break; case 132: + +/* Line 1455 of yacc.c */ #line 1160 "cppBison.yxx" { - (yyval.u.type) = (yyvsp[0].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); + (yyval.u.type) = (yyvsp[(1) - (1)].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); assert((yyval.u.type) != NULL); } break; case 133: + +/* Line 1455 of yacc.c */ #line 1165 "cppBison.yxx" { - (yyval.u.type) = CPPType::new_type(new CPPTBDType((yyvsp[0].u.identifier))); + (yyval.u.type) = CPPType::new_type(new CPPTBDType((yyvsp[(2) - (2)].u.identifier))); } break; case 134: + +/* Line 1455 of yacc.c */ #line 1173 "cppBison.yxx" { - (yyval.u.inst_ident) = new CPPInstanceIdentifier((yyvsp[0].u.identifier)); + (yyval.u.inst_ident) = new CPPInstanceIdentifier((yyvsp[(1) - (1)].u.identifier)); } break; case 135: + +/* Line 1455 of yacc.c */ #line 1177 "cppBison.yxx" { // For an operator function. We implement this simply by building a // ficticious name for the function; in other respects it's just // like a regular function. - CPPIdentifier *ident = (yyvsp[-1].u.identifier); + CPPIdentifier *ident = (yyvsp[(1) - (2)].u.identifier); if (ident == NULL) { - ident = new CPPIdentifier("operator "+(yyvsp[0].str), (yylsp[0]).file); + ident = new CPPIdentifier("operator "+(yyvsp[(2) - (2)].str), (yylsp[(2) - (2)]).file); } else { - ident->_names.push_back("operator "+(yyvsp[0].str)); + ident->_names.push_back("operator "+(yyvsp[(2) - (2)].str)); } (yyval.u.inst_ident) = new CPPInstanceIdentifier(ident); @@ -3878,86 +4461,106 @@ yyreduce: break; case 136: + +/* Line 1455 of yacc.c */ #line 1191 "cppBison.yxx" { - (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); + (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_const); } break; case 137: + +/* Line 1455 of yacc.c */ #line 1196 "cppBison.yxx" { - (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); + (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_pointer); } break; case 138: + +/* Line 1455 of yacc.c */ #line 1201 "cppBison.yxx" { - (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); + (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_reference); } break; case 139: + +/* Line 1455 of yacc.c */ #line 1206 "cppBison.yxx" { - (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); - (yyval.u.inst_ident)->add_scoped_pointer_modifier((yyvsp[-2].u.identifier)); + (yyval.u.inst_ident) = (yyvsp[(3) - (3)].u.inst_ident); + (yyval.u.inst_ident)->add_scoped_pointer_modifier((yyvsp[(1) - (3)].u.identifier)); } break; case 140: + +/* Line 1455 of yacc.c */ #line 1211 "cppBison.yxx" { - (yyval.u.inst_ident) = (yyvsp[-3].u.inst_ident); - (yyval.u.inst_ident)->add_array_modifier((yyvsp[-1].u.expr)); + (yyval.u.inst_ident) = (yyvsp[(1) - (4)].u.inst_ident); + (yyval.u.inst_ident)->add_array_modifier((yyvsp[(3) - (4)].u.expr)); } break; case 141: + +/* Line 1455 of yacc.c */ #line 1216 "cppBison.yxx" { // bitfield definition. We ignore the bitfield for now. - (yyval.u.inst_ident) = (yyvsp[-2].u.inst_ident); + (yyval.u.inst_ident) = (yyvsp[(1) - (3)].u.inst_ident); } break; case 142: + +/* Line 1455 of yacc.c */ #line 1221 "cppBison.yxx" { - (yyval.u.inst_ident) = (yyvsp[-1].u.inst_ident); + (yyval.u.inst_ident) = (yyvsp[(2) - (3)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_paren); } break; case 143: + +/* Line 1455 of yacc.c */ #line 1226 "cppBison.yxx" { - push_scope((yyvsp[-1].u.inst_ident)->get_scope(current_scope, global_scope)); + push_scope((yyvsp[(1) - (2)].u.inst_ident)->get_scope(current_scope, global_scope)); } break; case 144: + +/* Line 1455 of yacc.c */ #line 1230 "cppBison.yxx" { pop_scope(); - (yyval.u.inst_ident) = (yyvsp[-5].u.inst_ident); - if ((yyvsp[-2].u.param_list)->is_parameter_expr() && (yyvsp[0].u.integer) == 0) { + (yyval.u.inst_ident) = (yyvsp[(1) - (6)].u.inst_ident); + if ((yyvsp[(4) - (6)].u.param_list)->is_parameter_expr() && (yyvsp[(6) - (6)].u.integer) == 0) { // Oops, this must have been an instance declaration with a // parameter list, not a function prototype. - (yyval.u.inst_ident)->add_initializer_modifier((yyvsp[-2].u.param_list)); + (yyval.u.inst_ident)->add_initializer_modifier((yyvsp[(4) - (6)].u.param_list)); } else { // This was (probably) a function prototype. - (yyval.u.inst_ident)->add_func_modifier((yyvsp[-2].u.param_list), (yyvsp[0].u.integer)); + (yyval.u.inst_ident)->add_func_modifier((yyvsp[(4) - (6)].u.param_list), (yyvsp[(6) - (6)].u.integer)); } } break; case 145: + +/* Line 1455 of yacc.c */ #line 1248 "cppBison.yxx" { (yyval.u.param_list) = new CPPParameterList; @@ -3965,6 +4568,8 @@ yyreduce: break; case 146: + +/* Line 1455 of yacc.c */ #line 1252 "cppBison.yxx" { (yyval.u.param_list) = new CPPParameterList; @@ -3973,45 +4578,57 @@ yyreduce: break; case 147: + +/* Line 1455 of yacc.c */ #line 1257 "cppBison.yxx" { - (yyval.u.param_list) = (yyvsp[0].u.param_list); + (yyval.u.param_list) = (yyvsp[(1) - (1)].u.param_list); } break; case 148: + +/* Line 1455 of yacc.c */ #line 1261 "cppBison.yxx" { - (yyval.u.param_list) = (yyvsp[-2].u.param_list); + (yyval.u.param_list) = (yyvsp[(1) - (3)].u.param_list); (yyval.u.param_list)->_includes_ellipsis = true; } break; case 149: + +/* Line 1455 of yacc.c */ #line 1266 "cppBison.yxx" { - (yyval.u.param_list) = (yyvsp[-1].u.param_list); + (yyval.u.param_list) = (yyvsp[(1) - (2)].u.param_list); (yyval.u.param_list)->_includes_ellipsis = true; } break; case 150: + +/* Line 1455 of yacc.c */ #line 1274 "cppBison.yxx" { (yyval.u.param_list) = new CPPParameterList; - (yyval.u.param_list)->_parameters.push_back((yyvsp[0].u.instance)); + (yyval.u.param_list)->_parameters.push_back((yyvsp[(1) - (1)].u.instance)); } break; case 151: + +/* Line 1455 of yacc.c */ #line 1279 "cppBison.yxx" { - (yyval.u.param_list) = (yyvsp[-2].u.param_list); - (yyval.u.param_list)->_parameters.push_back((yyvsp[0].u.instance)); + (yyval.u.param_list) = (yyvsp[(1) - (3)].u.param_list); + (yyval.u.param_list)->_parameters.push_back((yyvsp[(3) - (3)].u.instance)); } break; case 152: + +/* Line 1455 of yacc.c */ #line 1287 "cppBison.yxx" { (yyval.u.expr) = (CPPExpression *)NULL; @@ -4019,13 +4636,17 @@ yyreduce: break; case 153: + +/* Line 1455 of yacc.c */ #line 1291 "cppBison.yxx" { - (yyval.u.expr) = (yyvsp[0].u.expr); + (yyval.u.expr) = (yyvsp[(2) - (2)].u.expr); } break; case 154: + +/* Line 1455 of yacc.c */ #line 1298 "cppBison.yxx" { (yyval.u.expr) = (CPPExpression *)NULL; @@ -4033,13 +4654,17 @@ yyreduce: break; case 155: + +/* Line 1455 of yacc.c */ #line 1302 "cppBison.yxx" { - (yyval.u.expr) = (yyvsp[0].u.expr); + (yyval.u.expr) = (yyvsp[(2) - (2)].u.expr); } break; case 156: + +/* Line 1455 of yacc.c */ #line 1309 "cppBison.yxx" { (yyval.u.expr) = (CPPExpression *)NULL; @@ -4047,6 +4672,8 @@ yyreduce: break; case 157: + +/* Line 1455 of yacc.c */ #line 1313 "cppBison.yxx" { (yyval.u.expr) = (CPPExpression *)NULL; @@ -4054,6 +4681,8 @@ yyreduce: break; case 158: + +/* Line 1455 of yacc.c */ #line 1317 "cppBison.yxx" { (yyval.u.expr) = (CPPExpression *)NULL; @@ -4061,13 +4690,17 @@ yyreduce: break; case 159: + +/* Line 1455 of yacc.c */ #line 1321 "cppBison.yxx" { - (yyval.u.expr) = (yyvsp[-1].u.expr); + (yyval.u.expr) = (yyvsp[(2) - (3)].u.expr); } break; case 160: + +/* Line 1455 of yacc.c */ #line 1325 "cppBison.yxx" { (yyval.u.expr) = (CPPExpression *)NULL; @@ -4075,50 +4708,62 @@ yyreduce: break; case 164: + +/* Line 1455 of yacc.c */ #line 1338 "cppBison.yxx" { } break; case 168: + +/* Line 1455 of yacc.c */ #line 1347 "cppBison.yxx" { - (yyval.u.instance) = new CPPInstance((yyvsp[-2].u.type), (yyvsp[-1].u.inst_ident), 0, (yylsp[-1]).file); - (yyval.u.instance)->set_initializer((yyvsp[0].u.expr)); + (yyval.u.instance) = new CPPInstance((yyvsp[(1) - (3)].u.type), (yyvsp[(2) - (3)].u.inst_ident), 0, (yylsp[(2) - (3)]).file); + (yyval.u.instance)->set_initializer((yyvsp[(3) - (3)].u.expr)); } break; case 169: + +/* Line 1455 of yacc.c */ #line 1352 "cppBison.yxx" { - yywarning("Not a type: " + (yyvsp[-2].u.identifier)->get_fully_scoped_name(), (yylsp[-2])); + yywarning("Not a type: " + (yyvsp[(1) - (3)].u.identifier)->get_fully_scoped_name(), (yylsp[(1) - (3)])); CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_unknown)); - (yyval.u.instance) = new CPPInstance(type, (yyvsp[-1].u.inst_ident), 0, (yylsp[-1]).file); - (yyval.u.instance)->set_initializer((yyvsp[0].u.expr)); + (yyval.u.instance) = new CPPInstance(type, (yyvsp[(2) - (3)].u.inst_ident), 0, (yylsp[(2) - (3)]).file); + (yyval.u.instance)->set_initializer((yyvsp[(3) - (3)].u.expr)); } break; case 170: + +/* Line 1455 of yacc.c */ #line 1360 "cppBison.yxx" { - (yyvsp[-1].u.inst_ident)->add_modifier(IIT_const); - (yyval.u.instance) = new CPPInstance((yyvsp[-2].u.type), (yyvsp[-1].u.inst_ident), 0, (yylsp[-1]).file); - (yyval.u.instance)->set_initializer((yyvsp[0].u.expr)); + (yyvsp[(3) - (4)].u.inst_ident)->add_modifier(IIT_const); + (yyval.u.instance) = new CPPInstance((yyvsp[(2) - (4)].u.type), (yyvsp[(3) - (4)].u.inst_ident), 0, (yylsp[(3) - (4)]).file); + (yyval.u.instance)->set_initializer((yyvsp[(4) - (4)].u.expr)); } break; case 171: + +/* Line 1455 of yacc.c */ #line 1366 "cppBison.yxx" { CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_parameter)); (yyval.u.instance) = new CPPInstance(type, "expr"); - (yyval.u.instance)->set_initializer((yyvsp[0].u.expr)); + (yyval.u.instance)->set_initializer((yyvsp[(1) - (1)].u.expr)); } break; case 172: + +/* Line 1455 of yacc.c */ #line 1376 "cppBison.yxx" { (yyval.u.inst_ident) = new CPPInstanceIdentifier((CPPIdentifier *)NULL); @@ -4126,60 +4771,76 @@ yyreduce: break; case 173: + +/* Line 1455 of yacc.c */ #line 1380 "cppBison.yxx" { - (yyval.u.inst_ident) = new CPPInstanceIdentifier((yyvsp[0].u.identifier)); + (yyval.u.inst_ident) = new CPPInstanceIdentifier((yyvsp[(1) - (1)].u.identifier)); } break; case 174: + +/* Line 1455 of yacc.c */ #line 1384 "cppBison.yxx" { - (yyval.u.inst_ident) = new CPPInstanceIdentifier((yyvsp[0].u.identifier)); + (yyval.u.inst_ident) = new CPPInstanceIdentifier((yyvsp[(1) - (1)].u.identifier)); } break; case 175: + +/* Line 1455 of yacc.c */ #line 1388 "cppBison.yxx" { - (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); + (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_const); } break; case 176: + +/* Line 1455 of yacc.c */ #line 1393 "cppBison.yxx" { - (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); + (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_pointer); } break; case 177: + +/* Line 1455 of yacc.c */ #line 1398 "cppBison.yxx" { - (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); + (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_reference); } break; case 178: + +/* Line 1455 of yacc.c */ #line 1403 "cppBison.yxx" { - (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); - (yyval.u.inst_ident)->add_scoped_pointer_modifier((yyvsp[-2].u.identifier)); + (yyval.u.inst_ident) = (yyvsp[(3) - (3)].u.inst_ident); + (yyval.u.inst_ident)->add_scoped_pointer_modifier((yyvsp[(1) - (3)].u.identifier)); } break; case 179: + +/* Line 1455 of yacc.c */ #line 1408 "cppBison.yxx" { - (yyval.u.inst_ident) = (yyvsp[-3].u.inst_ident); - (yyval.u.inst_ident)->add_array_modifier((yyvsp[-1].u.expr)); + (yyval.u.inst_ident) = (yyvsp[(1) - (4)].u.inst_ident); + (yyval.u.inst_ident)->add_array_modifier((yyvsp[(3) - (4)].u.expr)); } break; case 180: + +/* Line 1455 of yacc.c */ #line 1416 "cppBison.yxx" { (yyval.u.inst_ident) = new CPPInstanceIdentifier((CPPIdentifier *)NULL); @@ -4187,77 +4848,97 @@ yyreduce: break; case 181: + +/* Line 1455 of yacc.c */ #line 1420 "cppBison.yxx" { - (yyval.u.inst_ident) = new CPPInstanceIdentifier((yyvsp[0].u.identifier)); + (yyval.u.inst_ident) = new CPPInstanceIdentifier((yyvsp[(1) - (1)].u.identifier)); } break; case 182: + +/* Line 1455 of yacc.c */ #line 1424 "cppBison.yxx" { - (yyval.u.inst_ident) = new CPPInstanceIdentifier((yyvsp[0].u.identifier)); + (yyval.u.inst_ident) = new CPPInstanceIdentifier((yyvsp[(1) - (1)].u.identifier)); } break; case 183: + +/* Line 1455 of yacc.c */ #line 1428 "cppBison.yxx" { - (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); + (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_const); } break; case 184: + +/* Line 1455 of yacc.c */ #line 1433 "cppBison.yxx" { - (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); + (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_pointer); } break; case 185: + +/* Line 1455 of yacc.c */ #line 1438 "cppBison.yxx" { - (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); + (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_reference); } break; case 186: + +/* Line 1455 of yacc.c */ #line 1443 "cppBison.yxx" { - (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); - (yyval.u.inst_ident)->add_scoped_pointer_modifier((yyvsp[-2].u.identifier)); + (yyval.u.inst_ident) = (yyvsp[(3) - (3)].u.inst_ident); + (yyval.u.inst_ident)->add_scoped_pointer_modifier((yyvsp[(1) - (3)].u.identifier)); } break; case 187: + +/* Line 1455 of yacc.c */ #line 1448 "cppBison.yxx" { - (yyval.u.inst_ident) = (yyvsp[-3].u.inst_ident); - (yyval.u.inst_ident)->add_array_modifier((yyvsp[-1].u.expr)); + (yyval.u.inst_ident) = (yyvsp[(1) - (4)].u.inst_ident); + (yyval.u.inst_ident)->add_array_modifier((yyvsp[(3) - (4)].u.expr)); } break; case 188: + +/* Line 1455 of yacc.c */ #line 1453 "cppBison.yxx" { - (yyval.u.inst_ident) = (yyvsp[-5].u.inst_ident); + (yyval.u.inst_ident) = (yyvsp[(2) - (7)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_paren); - (yyval.u.inst_ident)->add_func_modifier((yyvsp[-2].u.param_list), (yyvsp[0].u.integer)); + (yyval.u.inst_ident)->add_func_modifier((yyvsp[(5) - (7)].u.param_list), (yyvsp[(7) - (7)].u.integer)); } break; case 189: + +/* Line 1455 of yacc.c */ #line 1459 "cppBison.yxx" { - (yyval.u.inst_ident) = (yyvsp[-1].u.inst_ident); + (yyval.u.inst_ident) = (yyvsp[(2) - (3)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_paren); } break; case 190: + +/* Line 1455 of yacc.c */ #line 1467 "cppBison.yxx" { (yyval.u.inst_ident) = new CPPInstanceIdentifier((CPPIdentifier *)NULL); @@ -4265,115 +4946,143 @@ yyreduce: break; case 191: + +/* Line 1455 of yacc.c */ #line 1471 "cppBison.yxx" { - (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); + (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_const); } break; case 192: + +/* Line 1455 of yacc.c */ #line 1476 "cppBison.yxx" { - (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); + (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_pointer); } break; case 193: + +/* Line 1455 of yacc.c */ #line 1481 "cppBison.yxx" { - (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); + (yyval.u.inst_ident) = (yyvsp[(2) - (2)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_reference); } break; case 194: + +/* Line 1455 of yacc.c */ #line 1486 "cppBison.yxx" { - (yyval.u.inst_ident) = (yyvsp[0].u.inst_ident); - (yyval.u.inst_ident)->add_scoped_pointer_modifier((yyvsp[-2].u.identifier)); + (yyval.u.inst_ident) = (yyvsp[(3) - (3)].u.inst_ident); + (yyval.u.inst_ident)->add_scoped_pointer_modifier((yyvsp[(1) - (3)].u.identifier)); } break; case 195: + +/* Line 1455 of yacc.c */ #line 1491 "cppBison.yxx" { - (yyval.u.inst_ident) = (yyvsp[-3].u.inst_ident); - (yyval.u.inst_ident)->add_array_modifier((yyvsp[-1].u.expr)); + (yyval.u.inst_ident) = (yyvsp[(1) - (4)].u.inst_ident); + (yyval.u.inst_ident)->add_array_modifier((yyvsp[(3) - (4)].u.expr)); } break; case 196: + +/* Line 1455 of yacc.c */ #line 1496 "cppBison.yxx" { - (yyval.u.inst_ident) = (yyvsp[-5].u.inst_ident); + (yyval.u.inst_ident) = (yyvsp[(2) - (7)].u.inst_ident); (yyval.u.inst_ident)->add_modifier(IIT_paren); - (yyval.u.inst_ident)->add_func_modifier((yyvsp[-2].u.param_list), (yyvsp[0].u.integer)); + (yyval.u.inst_ident)->add_func_modifier((yyvsp[(5) - (7)].u.param_list), (yyvsp[(7) - (7)].u.integer)); } break; case 197: + +/* Line 1455 of yacc.c */ #line 1505 "cppBison.yxx" { - (yyval.u.type) = CPPType::new_type((yyvsp[0].u.simple_type)); + (yyval.u.type) = CPPType::new_type((yyvsp[(1) - (1)].u.simple_type)); } break; case 198: + +/* Line 1455 of yacc.c */ #line 1509 "cppBison.yxx" { - (yyval.u.type) = (yyvsp[0].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); + (yyval.u.type) = (yyvsp[(1) - (1)].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); assert((yyval.u.type) != NULL); } break; case 199: + +/* Line 1455 of yacc.c */ #line 1514 "cppBison.yxx" { - (yyval.u.type) = CPPType::new_type(new CPPTBDType((yyvsp[0].u.identifier))); + (yyval.u.type) = CPPType::new_type(new CPPTBDType((yyvsp[(2) - (2)].u.identifier))); } break; case 200: + +/* Line 1455 of yacc.c */ #line 1518 "cppBison.yxx" { - (yyval.u.type) = CPPType::new_type((yyvsp[0].u.struct_type)); + (yyval.u.type) = CPPType::new_type((yyvsp[(1) - (1)].u.struct_type)); } break; case 201: + +/* Line 1455 of yacc.c */ #line 1522 "cppBison.yxx" { - (yyval.u.type) = CPPType::new_type((yyvsp[0].u.struct_type)); + (yyval.u.type) = CPPType::new_type((yyvsp[(1) - (1)].u.struct_type)); } break; case 202: + +/* Line 1455 of yacc.c */ #line 1526 "cppBison.yxx" { - (yyval.u.type) = CPPType::new_type((yyvsp[0].u.enum_type)); + (yyval.u.type) = CPPType::new_type((yyvsp[(1) - (1)].u.enum_type)); } break; case 203: + +/* Line 1455 of yacc.c */ #line 1530 "cppBison.yxx" { - (yyval.u.type) = CPPType::new_type((yyvsp[0].u.enum_type)); + (yyval.u.type) = CPPType::new_type((yyvsp[(1) - (1)].u.enum_type)); } break; case 204: + +/* Line 1455 of yacc.c */ #line 1534 "cppBison.yxx" { - CPPType *type = (yyvsp[0].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); + CPPType *type = (yyvsp[(2) - (2)].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); if (type != NULL) { (yyval.u.type) = type; } else { CPPExtensionType *et = - CPPType::new_type(new CPPExtensionType((yyvsp[-1].u.extension_enum), (yyvsp[0].u.identifier), current_scope, (yylsp[-1]).file)) + CPPType::new_type(new CPPExtensionType((yyvsp[(1) - (2)].u.extension_enum), (yyvsp[(2) - (2)].u.identifier), current_scope, (yylsp[(1) - (2)]).file)) ->as_extension_type(); - CPPScope *scope = (yyvsp[0].u.identifier)->get_scope(current_scope, global_scope); + CPPScope *scope = (yyvsp[(2) - (2)].u.identifier)->get_scope(current_scope, global_scope); if (scope != NULL) { scope->define_extension_type(et); } @@ -4383,16 +5092,18 @@ yyreduce: break; case 205: + +/* Line 1455 of yacc.c */ #line 1550 "cppBison.yxx" { - CPPType *type = (yyvsp[0].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); + CPPType *type = (yyvsp[(2) - (2)].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); if (type != NULL) { (yyval.u.type) = type; } else { CPPExtensionType *et = - CPPType::new_type(new CPPExtensionType((yyvsp[-1].u.extension_enum), (yyvsp[0].u.identifier), current_scope, (yylsp[-1]).file)) + CPPType::new_type(new CPPExtensionType((yyvsp[(1) - (2)].u.extension_enum), (yyvsp[(2) - (2)].u.identifier), current_scope, (yylsp[(1) - (2)]).file)) ->as_extension_type(); - CPPScope *scope = (yyvsp[0].u.identifier)->get_scope(current_scope, global_scope); + CPPScope *scope = (yyvsp[(2) - (2)].u.identifier)->get_scope(current_scope, global_scope); if (scope != NULL) { scope->define_extension_type(et); } @@ -4402,66 +5113,82 @@ yyreduce: break; case 206: + +/* Line 1455 of yacc.c */ #line 1569 "cppBison.yxx" { - (yyval.u.decl) = CPPType::new_type((yyvsp[0].u.simple_type)); + (yyval.u.decl) = CPPType::new_type((yyvsp[(1) - (1)].u.simple_type)); } break; case 207: + +/* Line 1455 of yacc.c */ #line 1573 "cppBison.yxx" { - (yyval.u.decl) = (yyvsp[0].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); + (yyval.u.decl) = (yyvsp[(1) - (1)].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); assert((yyval.u.decl) != NULL); } break; case 208: + +/* Line 1455 of yacc.c */ #line 1578 "cppBison.yxx" { - (yyval.u.decl) = CPPType::new_type(new CPPTBDType((yyvsp[0].u.identifier))); + (yyval.u.decl) = CPPType::new_type(new CPPTBDType((yyvsp[(2) - (2)].u.identifier))); } break; case 209: + +/* Line 1455 of yacc.c */ #line 1582 "cppBison.yxx" { - (yyval.u.decl) = CPPType::new_type((yyvsp[0].u.struct_type)); + (yyval.u.decl) = CPPType::new_type((yyvsp[(1) - (1)].u.struct_type)); } break; case 210: + +/* Line 1455 of yacc.c */ #line 1586 "cppBison.yxx" { - (yyval.u.decl) = new CPPTypeDeclaration(CPPType::new_type((yyvsp[0].u.struct_type))); + (yyval.u.decl) = new CPPTypeDeclaration(CPPType::new_type((yyvsp[(1) - (1)].u.struct_type))); } break; case 211: + +/* Line 1455 of yacc.c */ #line 1590 "cppBison.yxx" { - (yyval.u.decl) = CPPType::new_type((yyvsp[0].u.enum_type)); + (yyval.u.decl) = CPPType::new_type((yyvsp[(1) - (1)].u.enum_type)); } break; case 212: + +/* Line 1455 of yacc.c */ #line 1594 "cppBison.yxx" { - (yyval.u.decl) = new CPPTypeDeclaration(CPPType::new_type((yyvsp[0].u.enum_type))); + (yyval.u.decl) = new CPPTypeDeclaration(CPPType::new_type((yyvsp[(1) - (1)].u.enum_type))); } break; case 213: + +/* Line 1455 of yacc.c */ #line 1598 "cppBison.yxx" { - CPPType *type = (yyvsp[0].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); + CPPType *type = (yyvsp[(2) - (2)].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); if (type != NULL) { (yyval.u.decl) = type; } else { CPPExtensionType *et = - CPPType::new_type(new CPPExtensionType((yyvsp[-1].u.extension_enum), (yyvsp[0].u.identifier), current_scope, (yylsp[-1]).file)) + CPPType::new_type(new CPPExtensionType((yyvsp[(1) - (2)].u.extension_enum), (yyvsp[(2) - (2)].u.identifier), current_scope, (yylsp[(1) - (2)]).file)) ->as_extension_type(); - CPPScope *scope = (yyvsp[0].u.identifier)->get_scope(current_scope, global_scope); + CPPScope *scope = (yyvsp[(2) - (2)].u.identifier)->get_scope(current_scope, global_scope); if (scope != NULL) { scope->define_extension_type(et); } @@ -4471,16 +5198,18 @@ yyreduce: break; case 214: + +/* Line 1455 of yacc.c */ #line 1614 "cppBison.yxx" { - CPPType *type = (yyvsp[0].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); + CPPType *type = (yyvsp[(2) - (2)].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); if (type != NULL) { (yyval.u.decl) = type; } else { CPPExtensionType *et = - CPPType::new_type(new CPPExtensionType((yyvsp[-1].u.extension_enum), (yyvsp[0].u.identifier), current_scope, (yylsp[-1]).file)) + CPPType::new_type(new CPPExtensionType((yyvsp[(1) - (2)].u.extension_enum), (yyvsp[(2) - (2)].u.identifier), current_scope, (yylsp[(1) - (2)]).file)) ->as_extension_type(); - CPPScope *scope = (yyvsp[0].u.identifier)->get_scope(current_scope, global_scope); + CPPScope *scope = (yyvsp[(2) - (2)].u.identifier)->get_scope(current_scope, global_scope); if (scope != NULL) { scope->define_extension_type(et); } @@ -4490,38 +5219,46 @@ yyreduce: break; case 215: + +/* Line 1455 of yacc.c */ #line 1633 "cppBison.yxx" { - (yyval.u.type) = CPPType::new_type((yyvsp[0].u.simple_type)); + (yyval.u.type) = CPPType::new_type((yyvsp[(1) - (1)].u.simple_type)); } break; case 216: + +/* Line 1455 of yacc.c */ #line 1637 "cppBison.yxx" { - (yyval.u.type) = (yyvsp[0].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); + (yyval.u.type) = (yyvsp[(1) - (1)].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); assert((yyval.u.type) != NULL); } break; case 217: + +/* Line 1455 of yacc.c */ #line 1642 "cppBison.yxx" { - (yyval.u.type) = CPPType::new_type(new CPPTBDType((yyvsp[0].u.identifier))); + (yyval.u.type) = CPPType::new_type(new CPPTBDType((yyvsp[(2) - (2)].u.identifier))); } break; case 218: + +/* Line 1455 of yacc.c */ #line 1646 "cppBison.yxx" { - CPPType *type = (yyvsp[0].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); + CPPType *type = (yyvsp[(2) - (2)].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); if (type != NULL) { (yyval.u.type) = type; } else { CPPExtensionType *et = - CPPType::new_type(new CPPExtensionType((yyvsp[-1].u.extension_enum), (yyvsp[0].u.identifier), current_scope, (yylsp[-1]).file)) + CPPType::new_type(new CPPExtensionType((yyvsp[(1) - (2)].u.extension_enum), (yyvsp[(2) - (2)].u.identifier), current_scope, (yylsp[(1) - (2)]).file)) ->as_extension_type(); - CPPScope *scope = (yyvsp[0].u.identifier)->get_scope(current_scope, global_scope); + CPPScope *scope = (yyvsp[(2) - (2)].u.identifier)->get_scope(current_scope, global_scope); if (scope != NULL) { scope->define_extension_type(et); } @@ -4531,16 +5268,18 @@ yyreduce: break; case 219: + +/* Line 1455 of yacc.c */ #line 1662 "cppBison.yxx" { - CPPType *type = (yyvsp[0].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); + CPPType *type = (yyvsp[(2) - (2)].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); if (type != NULL) { (yyval.u.type) = type; } else { CPPExtensionType *et = - CPPType::new_type(new CPPExtensionType((yyvsp[-1].u.extension_enum), (yyvsp[0].u.identifier), current_scope, (yylsp[-1]).file)) + CPPType::new_type(new CPPExtensionType((yyvsp[(1) - (2)].u.extension_enum), (yyvsp[(2) - (2)].u.identifier), current_scope, (yylsp[(1) - (2)]).file)) ->as_extension_type(); - CPPScope *scope = (yyvsp[0].u.identifier)->get_scope(current_scope, global_scope); + CPPScope *scope = (yyvsp[(2) - (2)].u.identifier)->get_scope(current_scope, global_scope); if (scope != NULL) { scope->define_extension_type(et); } @@ -4550,34 +5289,40 @@ yyreduce: break; case 220: + +/* Line 1455 of yacc.c */ #line 1681 "cppBison.yxx" { - CPPInstance *inst = new CPPInstance((yyvsp[-1].u.type), (yyvsp[0].u.inst_ident), 0, (yylsp[-1]).file); + CPPInstance *inst = new CPPInstance((yyvsp[(1) - (2)].u.type), (yyvsp[(2) - (2)].u.inst_ident), 0, (yylsp[(1) - (2)]).file); (yyval.u.type) = inst->_type; delete inst; } break; case 221: + +/* Line 1455 of yacc.c */ #line 1687 "cppBison.yxx" { - (yyvsp[0].u.inst_ident)->add_modifier(IIT_const); - CPPInstance *inst = new CPPInstance((yyvsp[-1].u.type), (yyvsp[0].u.inst_ident), 0, (yylsp[-2]).file); + (yyvsp[(3) - (3)].u.inst_ident)->add_modifier(IIT_const); + CPPInstance *inst = new CPPInstance((yyvsp[(2) - (3)].u.type), (yyvsp[(3) - (3)].u.inst_ident), 0, (yylsp[(1) - (3)]).file); (yyval.u.type) = inst->_type; delete inst; } break; case 222: + +/* Line 1455 of yacc.c */ #line 1697 "cppBison.yxx" { CPPVisibility starting_vis = - ((yyvsp[-1].u.extension_enum) == CPPExtensionType::T_class) ? V_private : V_public; + ((yyvsp[(1) - (2)].u.extension_enum) == CPPExtensionType::T_class) ? V_private : V_public; CPPScope *new_scope = new CPPScope(current_scope, CPPNameComponent("anon"), starting_vis); - CPPStructType *st = new CPPStructType((yyvsp[-1].u.extension_enum), NULL, current_scope, - new_scope, (yylsp[-1]).file); + CPPStructType *st = new CPPStructType((yyvsp[(1) - (2)].u.extension_enum), NULL, current_scope, + new_scope, (yylsp[(1) - (2)]).file); new_scope->set_struct_type(st); push_scope(new_scope); @@ -4586,6 +5331,8 @@ yyreduce: break; case 223: + +/* Line 1455 of yacc.c */ #line 1711 "cppBison.yxx" { (yyval.u.struct_type) = current_struct; @@ -4596,20 +5343,22 @@ yyreduce: break; case 224: + +/* Line 1455 of yacc.c */ #line 1721 "cppBison.yxx" { CPPVisibility starting_vis = - ((yyvsp[-1].u.extension_enum) == CPPExtensionType::T_class) ? V_private : V_public; + ((yyvsp[(1) - (2)].u.extension_enum) == CPPExtensionType::T_class) ? V_private : V_public; - CPPScope *scope = (yyvsp[0].u.identifier)->get_scope(current_scope, global_scope, current_lexer); + CPPScope *scope = (yyvsp[(2) - (2)].u.identifier)->get_scope(current_scope, global_scope, current_lexer); if (scope == NULL) { scope = current_scope; } - CPPScope *new_scope = new CPPScope(scope, (yyvsp[0].u.identifier)->_names.back(), + CPPScope *new_scope = new CPPScope(scope, (yyvsp[(2) - (2)].u.identifier)->_names.back(), starting_vis); - CPPStructType *st = new CPPStructType((yyvsp[-1].u.extension_enum), (yyvsp[0].u.identifier), current_scope, - new_scope, (yylsp[-1]).file); + CPPStructType *st = new CPPStructType((yyvsp[(1) - (2)].u.extension_enum), (yyvsp[(2) - (2)].u.identifier), current_scope, + new_scope, (yylsp[(1) - (2)]).file); new_scope->set_struct_type(st); current_scope->define_extension_type(st); @@ -4619,6 +5368,8 @@ yyreduce: break; case 225: + +/* Line 1455 of yacc.c */ #line 1741 "cppBison.yxx" { (yyval.u.struct_type) = current_struct; @@ -4629,76 +5380,98 @@ yyreduce: break; case 230: + +/* Line 1455 of yacc.c */ #line 1761 "cppBison.yxx" { - current_struct->append_derivation((yyvsp[0].u.type), V_public, false); + current_struct->append_derivation((yyvsp[(2) - (2)].u.type), V_public, false); } break; case 231: + +/* Line 1455 of yacc.c */ #line 1765 "cppBison.yxx" { - current_struct->append_derivation((yyvsp[0].u.type), V_protected, false); + current_struct->append_derivation((yyvsp[(2) - (2)].u.type), V_protected, false); } break; case 232: + +/* Line 1455 of yacc.c */ #line 1769 "cppBison.yxx" { - current_struct->append_derivation((yyvsp[0].u.type), V_private, false); + current_struct->append_derivation((yyvsp[(2) - (2)].u.type), V_private, false); } break; case 233: + +/* Line 1455 of yacc.c */ #line 1773 "cppBison.yxx" { - current_struct->append_derivation((yyvsp[0].u.type), V_public, true); + current_struct->append_derivation((yyvsp[(3) - (3)].u.type), V_public, true); } break; case 234: + +/* Line 1455 of yacc.c */ #line 1777 "cppBison.yxx" { - current_struct->append_derivation((yyvsp[0].u.type), V_protected, true); + current_struct->append_derivation((yyvsp[(3) - (3)].u.type), V_protected, true); } break; case 235: + +/* Line 1455 of yacc.c */ #line 1781 "cppBison.yxx" { - current_struct->append_derivation((yyvsp[0].u.type), V_private, true); + current_struct->append_derivation((yyvsp[(3) - (3)].u.type), V_private, true); } break; case 236: + +/* Line 1455 of yacc.c */ #line 1785 "cppBison.yxx" { - current_struct->append_derivation((yyvsp[0].u.type), V_public, true); + current_struct->append_derivation((yyvsp[(3) - (3)].u.type), V_public, true); } break; case 237: + +/* Line 1455 of yacc.c */ #line 1789 "cppBison.yxx" { - current_struct->append_derivation((yyvsp[0].u.type), V_protected, true); + current_struct->append_derivation((yyvsp[(3) - (3)].u.type), V_protected, true); } break; case 238: + +/* Line 1455 of yacc.c */ #line 1793 "cppBison.yxx" { - current_struct->append_derivation((yyvsp[0].u.type), V_private, true); + current_struct->append_derivation((yyvsp[(3) - (3)].u.type), V_private, true); } break; case 239: + +/* Line 1455 of yacc.c */ #line 1800 "cppBison.yxx" { - current_enum = new CPPEnumType(NULL, current_scope, (yylsp[-1]).file); + current_enum = new CPPEnumType(NULL, current_scope, (yylsp[(1) - (2)]).file); } break; case 240: + +/* Line 1455 of yacc.c */ #line 1804 "cppBison.yxx" { (yyval.u.enum_type) = current_enum; @@ -4707,13 +5480,17 @@ yyreduce: break; case 241: + +/* Line 1455 of yacc.c */ #line 1812 "cppBison.yxx" { - current_enum = new CPPEnumType((yyvsp[-1].u.identifier), current_scope, (yylsp[-2]).file); + current_enum = new CPPEnumType((yyvsp[(2) - (3)].u.identifier), current_scope, (yylsp[(1) - (3)]).file); } break; case 242: + +/* Line 1455 of yacc.c */ #line 1816 "cppBison.yxx" { (yyval.u.enum_type) = current_enum; @@ -4722,38 +5499,48 @@ yyreduce: break; case 246: + +/* Line 1455 of yacc.c */ #line 1830 "cppBison.yxx" { assert(current_enum != NULL); - current_enum->add_element((yyvsp[0].u.identifier)->get_simple_name(), current_scope); + current_enum->add_element((yyvsp[(1) - (1)].u.identifier)->get_simple_name(), current_scope); } break; case 247: + +/* Line 1455 of yacc.c */ #line 1835 "cppBison.yxx" { assert(current_enum != NULL); - current_enum->add_element((yyvsp[-2].u.identifier)->get_simple_name(), current_scope, (yyvsp[0].u.expr)); + current_enum->add_element((yyvsp[(1) - (3)].u.identifier)->get_simple_name(), current_scope, (yyvsp[(3) - (3)].u.expr)); } break; case 248: + +/* Line 1455 of yacc.c */ #line 1840 "cppBison.yxx" { assert(current_enum != NULL); - current_enum->add_element((yyvsp[0].u.identifier)->get_simple_name(), current_scope); + current_enum->add_element((yyvsp[(3) - (3)].u.identifier)->get_simple_name(), current_scope); } break; case 249: + +/* Line 1455 of yacc.c */ #line 1845 "cppBison.yxx" { assert(current_enum != NULL); - current_enum->add_element((yyvsp[-2].u.identifier)->get_simple_name(), current_scope, (yyvsp[0].u.expr)); + current_enum->add_element((yyvsp[(3) - (5)].u.identifier)->get_simple_name(), current_scope, (yyvsp[(5) - (5)].u.expr)); } break; case 250: + +/* Line 1455 of yacc.c */ #line 1853 "cppBison.yxx" { (yyval.u.extension_enum) = CPPExtensionType::T_enum; @@ -4761,6 +5548,8 @@ yyreduce: break; case 251: + +/* Line 1455 of yacc.c */ #line 1860 "cppBison.yxx" { (yyval.u.extension_enum) = CPPExtensionType::T_class; @@ -4768,6 +5557,8 @@ yyreduce: break; case 252: + +/* Line 1455 of yacc.c */ #line 1864 "cppBison.yxx" { (yyval.u.extension_enum) = CPPExtensionType::T_struct; @@ -4775,6 +5566,8 @@ yyreduce: break; case 253: + +/* Line 1455 of yacc.c */ #line 1868 "cppBison.yxx" { (yyval.u.extension_enum) = CPPExtensionType::T_union; @@ -4782,27 +5575,31 @@ yyreduce: break; case 254: + +/* Line 1455 of yacc.c */ #line 1875 "cppBison.yxx" { - CPPScope *scope = (yyvsp[-1].u.identifier)->find_scope(current_scope, global_scope, current_lexer); + CPPScope *scope = (yyvsp[(2) - (3)].u.identifier)->find_scope(current_scope, global_scope, current_lexer); if (scope == NULL) { // This must be a new namespace declaration. CPPScope *parent_scope = - (yyvsp[-1].u.identifier)->get_scope(current_scope, global_scope, current_lexer); + (yyvsp[(2) - (3)].u.identifier)->get_scope(current_scope, global_scope, current_lexer); if (parent_scope == NULL) { parent_scope = current_scope; } - scope = new CPPScope(parent_scope, (yyvsp[-1].u.identifier)->_names.back(), V_public); + scope = new CPPScope(parent_scope, (yyvsp[(2) - (3)].u.identifier)->_names.back(), V_public); } - CPPNamespace *nspace = new CPPNamespace((yyvsp[-1].u.identifier), scope, (yylsp[-2]).file); - current_scope->add_declaration(nspace, global_scope, current_lexer, (yylsp[-2])); + CPPNamespace *nspace = new CPPNamespace((yyvsp[(2) - (3)].u.identifier), scope, (yylsp[(1) - (3)]).file); + current_scope->add_declaration(nspace, global_scope, current_lexer, (yylsp[(1) - (3)])); current_scope->define_namespace(nspace); push_scope(scope); } break; case 255: + +/* Line 1455 of yacc.c */ #line 1893 "cppBison.yxx" { pop_scope(); @@ -4810,24 +5607,30 @@ yyreduce: break; case 257: + +/* Line 1455 of yacc.c */ #line 1901 "cppBison.yxx" { - CPPUsing *using_decl = new CPPUsing((yyvsp[0].u.identifier), false, (yylsp[-1]).file); - current_scope->add_declaration(using_decl, global_scope, current_lexer, (yylsp[-1])); + CPPUsing *using_decl = new CPPUsing((yyvsp[(2) - (2)].u.identifier), false, (yylsp[(1) - (2)]).file); + current_scope->add_declaration(using_decl, global_scope, current_lexer, (yylsp[(1) - (2)])); current_scope->add_using(using_decl, global_scope, current_lexer); } break; case 258: + +/* Line 1455 of yacc.c */ #line 1907 "cppBison.yxx" { - CPPUsing *using_decl = new CPPUsing((yyvsp[0].u.identifier), true, (yylsp[-2]).file); - current_scope->add_declaration(using_decl, global_scope, current_lexer, (yylsp[-2])); + CPPUsing *using_decl = new CPPUsing((yyvsp[(3) - (3)].u.identifier), true, (yylsp[(1) - (3)]).file); + current_scope->add_declaration(using_decl, global_scope, current_lexer, (yylsp[(1) - (3)])); current_scope->add_using(using_decl, global_scope, current_lexer); } break; case 262: + +/* Line 1455 of yacc.c */ #line 1922 "cppBison.yxx" { (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_bool); @@ -4835,6 +5638,8 @@ yyreduce: break; case 263: + +/* Line 1455 of yacc.c */ #line 1926 "cppBison.yxx" { (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_char); @@ -4842,6 +5647,8 @@ yyreduce: break; case 264: + +/* Line 1455 of yacc.c */ #line 1930 "cppBison.yxx" { (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_wchar_t); @@ -4849,6 +5656,8 @@ yyreduce: break; case 265: + +/* Line 1455 of yacc.c */ #line 1934 "cppBison.yxx" { (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_int, @@ -4857,6 +5666,8 @@ yyreduce: break; case 266: + +/* Line 1455 of yacc.c */ #line 1939 "cppBison.yxx" { (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_int, @@ -4865,6 +5676,8 @@ yyreduce: break; case 267: + +/* Line 1455 of yacc.c */ #line 1944 "cppBison.yxx" { (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_int, @@ -4873,6 +5686,8 @@ yyreduce: break; case 268: + +/* Line 1455 of yacc.c */ #line 1949 "cppBison.yxx" { (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_int, @@ -4881,6 +5696,8 @@ yyreduce: break; case 269: + +/* Line 1455 of yacc.c */ #line 1954 "cppBison.yxx" { (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_int, @@ -4889,6 +5706,8 @@ yyreduce: break; case 270: + +/* Line 1455 of yacc.c */ #line 1959 "cppBison.yxx" { (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_int); @@ -4896,17 +5715,21 @@ yyreduce: break; case 271: + +/* Line 1455 of yacc.c */ #line 1963 "cppBison.yxx" { - (yyval.u.simple_type) = (yyvsp[0].u.simple_type); + (yyval.u.simple_type) = (yyvsp[(2) - (2)].u.simple_type); (yyval.u.simple_type)->_flags |= CPPSimpleType::F_short; } break; case 272: + +/* Line 1455 of yacc.c */ #line 1968 "cppBison.yxx" { - (yyval.u.simple_type) = (yyvsp[0].u.simple_type); + (yyval.u.simple_type) = (yyvsp[(2) - (2)].u.simple_type); if ((yyval.u.simple_type)->_flags & CPPSimpleType::F_long) { (yyval.u.simple_type)->_flags |= CPPSimpleType::F_longlong; } else { @@ -4916,22 +5739,28 @@ yyreduce: break; case 273: + +/* Line 1455 of yacc.c */ #line 1977 "cppBison.yxx" { - (yyval.u.simple_type) = (yyvsp[0].u.simple_type); + (yyval.u.simple_type) = (yyvsp[(2) - (2)].u.simple_type); (yyval.u.simple_type)->_flags |= CPPSimpleType::F_unsigned; } break; case 274: + +/* Line 1455 of yacc.c */ #line 1982 "cppBison.yxx" { - (yyval.u.simple_type) = (yyvsp[0].u.simple_type); + (yyval.u.simple_type) = (yyvsp[(2) - (2)].u.simple_type); (yyval.u.simple_type)->_flags |= CPPSimpleType::F_signed; } break; case 275: + +/* Line 1455 of yacc.c */ #line 1990 "cppBison.yxx" { (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_float); @@ -4939,6 +5768,8 @@ yyreduce: break; case 276: + +/* Line 1455 of yacc.c */ #line 1994 "cppBison.yxx" { (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_float, @@ -4947,6 +5778,8 @@ yyreduce: break; case 277: + +/* Line 1455 of yacc.c */ #line 1999 "cppBison.yxx" { (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_double); @@ -4954,6 +5787,8 @@ yyreduce: break; case 278: + +/* Line 1455 of yacc.c */ #line 2003 "cppBison.yxx" { (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_float, @@ -4962,6 +5797,8 @@ yyreduce: break; case 279: + +/* Line 1455 of yacc.c */ #line 2008 "cppBison.yxx" { (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_double, @@ -4970,6 +5807,8 @@ yyreduce: break; case 280: + +/* Line 1455 of yacc.c */ #line 2016 "cppBison.yxx" { (yyval.u.simple_type) = new CPPSimpleType(CPPSimpleType::T_void); @@ -4977,6 +5816,8 @@ yyreduce: break; case 281: + +/* Line 1455 of yacc.c */ #line 2025 "cppBison.yxx" { current_lexer->_resolve_identifiers = false; @@ -4984,6 +5825,8 @@ yyreduce: break; case 282: + +/* Line 1455 of yacc.c */ #line 2029 "cppBison.yxx" { current_lexer->_resolve_identifiers = true; @@ -4991,60 +5834,80 @@ yyreduce: break; case 285: + +/* Line 1455 of yacc.c */ #line 2041 "cppBison.yxx" { } break; case 286: + +/* Line 1455 of yacc.c */ #line 2044 "cppBison.yxx" { } break; case 287: + +/* Line 1455 of yacc.c */ #line 2047 "cppBison.yxx" { } break; case 288: + +/* Line 1455 of yacc.c */ #line 2050 "cppBison.yxx" { } break; case 289: + +/* Line 1455 of yacc.c */ #line 2053 "cppBison.yxx" { } break; case 290: + +/* Line 1455 of yacc.c */ #line 2056 "cppBison.yxx" { } break; case 291: + +/* Line 1455 of yacc.c */ #line 2059 "cppBison.yxx" { } break; case 292: + +/* Line 1455 of yacc.c */ #line 2062 "cppBison.yxx" { } break; case 366: + +/* Line 1455 of yacc.c */ #line 2082 "cppBison.yxx" { } break; case 390: + +/* Line 1455 of yacc.c */ #line 2091 "cppBison.yxx" { (yyval.u.expr) = (CPPExpression *)NULL; @@ -5052,13 +5915,17 @@ yyreduce: break; case 391: + +/* Line 1455 of yacc.c */ #line 2095 "cppBison.yxx" { - (yyval.u.expr) = (yyvsp[0].u.expr); + (yyval.u.expr) = (yyvsp[(1) - (1)].u.expr); } break; case 392: + +/* Line 1455 of yacc.c */ #line 2102 "cppBison.yxx" { (yyval.u.expr) = (CPPExpression *)NULL; @@ -5066,1033 +5933,1334 @@ yyreduce: break; case 393: + +/* Line 1455 of yacc.c */ #line 2106 "cppBison.yxx" { - (yyval.u.expr) = (yyvsp[0].u.expr); + (yyval.u.expr) = (yyvsp[(1) - (1)].u.expr); } break; case 394: + +/* Line 1455 of yacc.c */ #line 2113 "cppBison.yxx" { - (yyval.u.expr) = (yyvsp[0].u.expr); + (yyval.u.expr) = (yyvsp[(1) - (1)].u.expr); } break; case 395: + +/* Line 1455 of yacc.c */ #line 2117 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(',', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(',', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 396: + +/* Line 1455 of yacc.c */ #line 2124 "cppBison.yxx" { - (yyval.u.expr) = (yyvsp[0].u.expr); + (yyval.u.expr) = (yyvsp[(1) - (1)].u.expr); } break; case 397: + +/* Line 1455 of yacc.c */ #line 2128 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-2].u.type), (yyvsp[0].u.expr))); + (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[(2) - (4)].u.type), (yyvsp[(4) - (4)].u.expr))); } break; case 398: + +/* Line 1455 of yacc.c */ #line 2132 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-4].u.type), (yyvsp[-1].u.expr))); + (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[(3) - (7)].u.type), (yyvsp[(6) - (7)].u.expr))); } break; case 399: + +/* Line 1455 of yacc.c */ #line 2136 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-4].u.type), (yyvsp[-1].u.expr))); + (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[(3) - (7)].u.type), (yyvsp[(6) - (7)].u.expr))); } break; case 400: + +/* Line 1455 of yacc.c */ #line 2140 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(CPPExpression::sizeof_func((yyvsp[-1].u.type))); + (yyval.u.expr) = new CPPExpression(CPPExpression::sizeof_func((yyvsp[(3) - (4)].u.type))); } break; case 401: + +/* Line 1455 of yacc.c */ #line 2144 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(UNARY_NOT, (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(UNARY_NOT, (yyvsp[(2) - (2)].u.expr)); } break; case 402: + +/* Line 1455 of yacc.c */ #line 2148 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(UNARY_NEGATE, (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(UNARY_NEGATE, (yyvsp[(2) - (2)].u.expr)); } break; case 403: + +/* Line 1455 of yacc.c */ #line 2152 "cppBison.yxx" { - if ((yyvsp[0].u.expr)->_type == CPPExpression::T_integer) { - (yyval.u.expr) = (yyvsp[0].u.expr); + if ((yyvsp[(2) - (2)].u.expr)->_type == CPPExpression::T_integer) { + (yyval.u.expr) = (yyvsp[(2) - (2)].u.expr); (yyval.u.expr)->_u._integer = -(yyval.u.expr)->_u._integer; - } else if ((yyvsp[0].u.expr)->_type == CPPExpression::T_real) { - (yyval.u.expr) = (yyvsp[0].u.expr); + } else if ((yyvsp[(2) - (2)].u.expr)->_type == CPPExpression::T_real) { + (yyval.u.expr) = (yyvsp[(2) - (2)].u.expr); (yyval.u.expr)->_u._real = -(yyval.u.expr)->_u._real; } else { - (yyval.u.expr) = new CPPExpression(UNARY_MINUS, (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(UNARY_MINUS, (yyvsp[(2) - (2)].u.expr)); } } break; case 404: + +/* Line 1455 of yacc.c */ #line 2164 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(UNARY_STAR, (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(UNARY_STAR, (yyvsp[(2) - (2)].u.expr)); } break; case 405: + +/* Line 1455 of yacc.c */ #line 2168 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(UNARY_REF, (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(UNARY_REF, (yyvsp[(2) - (2)].u.expr)); } break; case 406: + +/* Line 1455 of yacc.c */ #line 2172 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression('*', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('*', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 407: + +/* Line 1455 of yacc.c */ #line 2176 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression('/', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('/', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 408: + +/* Line 1455 of yacc.c */ #line 2180 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression('%', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('%', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 409: + +/* Line 1455 of yacc.c */ #line 2184 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression('+', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('+', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 410: + +/* Line 1455 of yacc.c */ #line 2188 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression('-', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('-', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 411: + +/* Line 1455 of yacc.c */ #line 2192 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression('|', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('|', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 412: + +/* Line 1455 of yacc.c */ #line 2196 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression('&', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('^', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 413: + +/* Line 1455 of yacc.c */ #line 2200 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(OROR, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('&', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 414: + +/* Line 1455 of yacc.c */ #line 2204 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(ANDAND, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(OROR, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 415: + +/* Line 1455 of yacc.c */ #line 2208 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(EQCOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(ANDAND, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 416: + +/* Line 1455 of yacc.c */ #line 2212 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(NECOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(EQCOMPARE, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 417: + +/* Line 1455 of yacc.c */ #line 2216 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(LECOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(NECOMPARE, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 418: + +/* Line 1455 of yacc.c */ #line 2220 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(GECOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(LECOMPARE, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 419: + +/* Line 1455 of yacc.c */ #line 2224 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(LSHIFT, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(GECOMPARE, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 420: + +/* Line 1455 of yacc.c */ #line 2228 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(RSHIFT, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(LSHIFT, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 421: + +/* Line 1455 of yacc.c */ #line 2232 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression('?', (yyvsp[-4].u.expr), (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(RSHIFT, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 422: + +/* Line 1455 of yacc.c */ #line 2236 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression('[', (yyvsp[-3].u.expr), (yyvsp[-1].u.expr)); + (yyval.u.expr) = new CPPExpression('?', (yyvsp[(1) - (5)].u.expr), (yyvsp[(3) - (5)].u.expr), (yyvsp[(5) - (5)].u.expr)); } break; case 423: + +/* Line 1455 of yacc.c */ #line 2240 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression('f', (yyvsp[-3].u.expr), (yyvsp[-1].u.expr)); + (yyval.u.expr) = new CPPExpression('[', (yyvsp[(1) - (4)].u.expr), (yyvsp[(3) - (4)].u.expr)); } break; case 424: + +/* Line 1455 of yacc.c */ #line 2244 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression('f', (yyvsp[-2].u.expr)); + (yyval.u.expr) = new CPPExpression('f', (yyvsp[(1) - (4)].u.expr), (yyvsp[(3) - (4)].u.expr)); } break; case 425: + +/* Line 1455 of yacc.c */ #line 2248 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression('.', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('f', (yyvsp[(1) - (3)].u.expr)); } break; case 426: + +/* Line 1455 of yacc.c */ #line 2252 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(POINTSAT, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('.', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 427: + +/* Line 1455 of yacc.c */ #line 2256 "cppBison.yxx" { - (yyval.u.expr) = (yyvsp[-1].u.expr); + (yyval.u.expr) = new CPPExpression(POINTSAT, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 428: -#line 2264 "cppBison.yxx" + +/* Line 1455 of yacc.c */ +#line 2260 "cppBison.yxx" { - (yyval.u.expr) = (yyvsp[0].u.expr); + (yyval.u.expr) = (yyvsp[(2) - (3)].u.expr); } break; case 429: + +/* Line 1455 of yacc.c */ #line 2268 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-2].u.type), (yyvsp[0].u.expr))); + (yyval.u.expr) = (yyvsp[(1) - (1)].u.expr); } break; case 430: + +/* Line 1455 of yacc.c */ #line 2272 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-4].u.type), (yyvsp[-1].u.expr))); + (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[(2) - (4)].u.type), (yyvsp[(4) - (4)].u.expr))); } break; case 431: + +/* Line 1455 of yacc.c */ #line 2276 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-4].u.type), (yyvsp[-1].u.expr))); + (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[(3) - (7)].u.type), (yyvsp[(6) - (7)].u.expr))); } break; case 432: + +/* Line 1455 of yacc.c */ #line 2280 "cppBison.yxx" { - // A constructor call. - CPPType *type = (yyvsp[-3].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); - assert(type != NULL); - (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[-1].u.expr))); + (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[(3) - (7)].u.type), (yyvsp[(6) - (7)].u.expr))); } break; case 433: -#line 2287 "cppBison.yxx" + +/* Line 1455 of yacc.c */ +#line 2284 "cppBison.yxx" { - CPPType *type = - CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_int)); - (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[-1].u.expr))); + // A constructor call. + CPPType *type = (yyvsp[(1) - (4)].u.identifier)->find_type(current_scope, global_scope, false, current_lexer); + assert(type != NULL); + (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[(3) - (4)].u.expr))); } break; case 434: -#line 2293 "cppBison.yxx" + +/* Line 1455 of yacc.c */ +#line 2291 "cppBison.yxx" { CPPType *type = - CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_char)); - (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[-1].u.expr))); + CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_int)); + (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[(3) - (4)].u.expr))); } break; case 435: -#line 2299 "cppBison.yxx" + +/* Line 1455 of yacc.c */ +#line 2297 "cppBison.yxx" { CPPType *type = - CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_wchar_t)); - (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[-1].u.expr))); + CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_char)); + (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[(3) - (4)].u.expr))); } break; case 436: -#line 2305 "cppBison.yxx" + +/* Line 1455 of yacc.c */ +#line 2303 "cppBison.yxx" { CPPType *type = - CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_bool)); - (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[-1].u.expr))); + CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_wchar_t)); + (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[(3) - (4)].u.expr))); } break; case 437: -#line 2311 "cppBison.yxx" + +/* Line 1455 of yacc.c */ +#line 2309 "cppBison.yxx" { CPPType *type = - CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_int, - CPPSimpleType::F_short)); - (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[-1].u.expr))); + CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_bool)); + (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[(3) - (4)].u.expr))); } break; case 438: -#line 2318 "cppBison.yxx" + +/* Line 1455 of yacc.c */ +#line 2315 "cppBison.yxx" { CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_int, - CPPSimpleType::F_long)); - (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[-1].u.expr))); + CPPSimpleType::F_short)); + (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[(3) - (4)].u.expr))); } break; case 439: -#line 2325 "cppBison.yxx" + +/* Line 1455 of yacc.c */ +#line 2322 "cppBison.yxx" { CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_int, - CPPSimpleType::F_unsigned)); - (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[-1].u.expr))); + CPPSimpleType::F_long)); + (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[(3) - (4)].u.expr))); } break; case 440: -#line 2332 "cppBison.yxx" + +/* Line 1455 of yacc.c */ +#line 2329 "cppBison.yxx" { CPPType *type = CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_int, - CPPSimpleType::F_signed)); - (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[-1].u.expr))); + CPPSimpleType::F_unsigned)); + (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[(3) - (4)].u.expr))); } break; case 441: -#line 2339 "cppBison.yxx" + +/* Line 1455 of yacc.c */ +#line 2336 "cppBison.yxx" { CPPType *type = - CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_float)); - (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[-1].u.expr))); + CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_int, + CPPSimpleType::F_signed)); + (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[(3) - (4)].u.expr))); } break; case 442: -#line 2345 "cppBison.yxx" + +/* Line 1455 of yacc.c */ +#line 2343 "cppBison.yxx" { CPPType *type = - CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_double)); - (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[-1].u.expr))); + CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_float)); + (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[(3) - (4)].u.expr))); } break; case 443: -#line 2351 "cppBison.yxx" + +/* Line 1455 of yacc.c */ +#line 2349 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(CPPExpression::sizeof_func((yyvsp[-1].u.type))); + CPPType *type = + CPPType::new_type(new CPPSimpleType(CPPSimpleType::T_double)); + (yyval.u.expr) = new CPPExpression(CPPExpression::construct_op(type, (yyvsp[(3) - (4)].u.expr))); } break; case 444: + +/* Line 1455 of yacc.c */ #line 2355 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(CPPExpression::new_op((yyvsp[0].u.type))); + (yyval.u.expr) = new CPPExpression(CPPExpression::sizeof_func((yyvsp[(3) - (4)].u.type))); } break; case 445: + +/* Line 1455 of yacc.c */ #line 2359 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(CPPExpression::new_op((yyvsp[-3].u.type), (yyvsp[-1].u.expr))); + (yyval.u.expr) = new CPPExpression(CPPExpression::new_op((yyvsp[(2) - (2)].u.type))); } break; case 446: + +/* Line 1455 of yacc.c */ #line 2363 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(UNARY_NOT, (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(CPPExpression::new_op((yyvsp[(2) - (5)].u.type), (yyvsp[(4) - (5)].u.expr))); } break; case 447: + +/* Line 1455 of yacc.c */ #line 2367 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(UNARY_NEGATE, (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(UNARY_NOT, (yyvsp[(2) - (2)].u.expr)); } break; case 448: + +/* Line 1455 of yacc.c */ #line 2371 "cppBison.yxx" { - if ((yyvsp[0].u.expr)->_type == CPPExpression::T_integer) { - (yyval.u.expr) = (yyvsp[0].u.expr); - (yyval.u.expr)->_u._integer = -(yyval.u.expr)->_u._integer; - } else if ((yyvsp[0].u.expr)->_type == CPPExpression::T_real) { - (yyval.u.expr) = (yyvsp[0].u.expr); - (yyval.u.expr)->_u._real = -(yyval.u.expr)->_u._real; - } else { - (yyval.u.expr) = new CPPExpression(UNARY_MINUS, (yyvsp[0].u.expr)); - } + (yyval.u.expr) = new CPPExpression(UNARY_NEGATE, (yyvsp[(2) - (2)].u.expr)); } break; case 449: -#line 2383 "cppBison.yxx" + +/* Line 1455 of yacc.c */ +#line 2375 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(UNARY_STAR, (yyvsp[0].u.expr)); + if ((yyvsp[(2) - (2)].u.expr)->_type == CPPExpression::T_integer) { + (yyval.u.expr) = (yyvsp[(2) - (2)].u.expr); + (yyval.u.expr)->_u._integer = -(yyval.u.expr)->_u._integer; + } else if ((yyvsp[(2) - (2)].u.expr)->_type == CPPExpression::T_real) { + (yyval.u.expr) = (yyvsp[(2) - (2)].u.expr); + (yyval.u.expr)->_u._real = -(yyval.u.expr)->_u._real; + } else { + (yyval.u.expr) = new CPPExpression(UNARY_MINUS, (yyvsp[(2) - (2)].u.expr)); + } } break; case 450: + +/* Line 1455 of yacc.c */ #line 2387 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(UNARY_REF, (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(UNARY_STAR, (yyvsp[(2) - (2)].u.expr)); } break; case 451: + +/* Line 1455 of yacc.c */ #line 2391 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression('*', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(UNARY_REF, (yyvsp[(2) - (2)].u.expr)); } break; case 452: + +/* Line 1455 of yacc.c */ #line 2395 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression('/', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('*', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 453: + +/* Line 1455 of yacc.c */ #line 2399 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression('%', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('/', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 454: + +/* Line 1455 of yacc.c */ #line 2403 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression('+', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('%', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 455: + +/* Line 1455 of yacc.c */ #line 2407 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression('-', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('+', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 456: + +/* Line 1455 of yacc.c */ #line 2411 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression('|', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('-', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 457: + +/* Line 1455 of yacc.c */ #line 2415 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression('&', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('|', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 458: + +/* Line 1455 of yacc.c */ #line 2419 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(OROR, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('^', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 459: + +/* Line 1455 of yacc.c */ #line 2423 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(ANDAND, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('&', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 460: + +/* Line 1455 of yacc.c */ #line 2427 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(EQCOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(OROR, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 461: + +/* Line 1455 of yacc.c */ #line 2431 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(NECOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(ANDAND, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 462: + +/* Line 1455 of yacc.c */ #line 2435 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(LECOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(EQCOMPARE, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 463: + +/* Line 1455 of yacc.c */ #line 2439 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(GECOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(NECOMPARE, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 464: + +/* Line 1455 of yacc.c */ #line 2443 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression('<', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(LECOMPARE, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 465: + +/* Line 1455 of yacc.c */ #line 2447 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression('>', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(GECOMPARE, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 466: + +/* Line 1455 of yacc.c */ #line 2451 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(LSHIFT, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('<', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 467: + +/* Line 1455 of yacc.c */ #line 2455 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(RSHIFT, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('>', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 468: + +/* Line 1455 of yacc.c */ #line 2459 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression('?', (yyvsp[-4].u.expr), (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression(LSHIFT, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 469: + +/* Line 1455 of yacc.c */ #line 2463 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression('[', (yyvsp[-3].u.expr), (yyvsp[-1].u.expr)); + (yyval.u.expr) = new CPPExpression(RSHIFT, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 470: + +/* Line 1455 of yacc.c */ #line 2467 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression('f', (yyvsp[-3].u.expr), (yyvsp[-1].u.expr)); + (yyval.u.expr) = new CPPExpression('?', (yyvsp[(1) - (5)].u.expr), (yyvsp[(3) - (5)].u.expr), (yyvsp[(5) - (5)].u.expr)); } break; case 471: + +/* Line 1455 of yacc.c */ #line 2471 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression('f', (yyvsp[-2].u.expr)); + (yyval.u.expr) = new CPPExpression('[', (yyvsp[(1) - (4)].u.expr), (yyvsp[(3) - (4)].u.expr)); } break; case 472: + +/* Line 1455 of yacc.c */ #line 2475 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression('.', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('f', (yyvsp[(1) - (4)].u.expr), (yyvsp[(3) - (4)].u.expr)); } break; case 473: + +/* Line 1455 of yacc.c */ #line 2479 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(POINTSAT, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); + (yyval.u.expr) = new CPPExpression('f', (yyvsp[(1) - (3)].u.expr)); } break; case 474: + +/* Line 1455 of yacc.c */ #line 2483 "cppBison.yxx" { - (yyval.u.expr) = (yyvsp[-1].u.expr); + (yyval.u.expr) = new CPPExpression('.', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 475: -#line 2490 "cppBison.yxx" + +/* Line 1455 of yacc.c */ +#line 2487 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression((yyvsp[0].u.integer)); + (yyval.u.expr) = new CPPExpression(POINTSAT, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); } break; case 476: -#line 2494 "cppBison.yxx" + +/* Line 1455 of yacc.c */ +#line 2491 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(true); + (yyval.u.expr) = (yyvsp[(2) - (3)].u.expr); } break; case 477: + +/* Line 1455 of yacc.c */ #line 2498 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression(false); + (yyval.u.expr) = new CPPExpression((yyvsp[(1) - (1)].u.integer)); } break; case 478: + +/* Line 1455 of yacc.c */ #line 2502 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression((yyvsp[0].u.integer)); -} - break; - - case 479: -#line 2506 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression((yyvsp[0].u.real)); -} - break; - - case 480: -#line 2510 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression((yyvsp[0].str)); -} - break; - - case 481: -#line 2514 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression((yyvsp[0].u.identifier), current_scope, global_scope, current_lexer); -} - break; - - case 482: -#line 2528 "cppBison.yxx" - { - (yyval.u.expr) = (yyvsp[0].u.expr); -} - break; - - case 483: -#line 2532 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-2].u.type), (yyvsp[0].u.expr))); -} - break; - - case 484: -#line 2536 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-4].u.type), (yyvsp[-1].u.expr))); -} - break; - - case 485: -#line 2540 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[-4].u.type), (yyvsp[-1].u.expr))); -} - break; - - case 486: -#line 2544 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(CPPExpression::sizeof_func((yyvsp[-1].u.type))); -} - break; - - case 487: -#line 2548 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(CPPExpression::new_op((yyvsp[0].u.type))); -} - break; - - case 488: -#line 2552 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(CPPExpression::new_op((yyvsp[-3].u.type), (yyvsp[-1].u.expr))); -} - break; - - case 489: -#line 2556 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(UNARY_NOT, (yyvsp[0].u.expr)); -} - break; - - case 490: -#line 2560 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(UNARY_NEGATE, (yyvsp[0].u.expr)); -} - break; - - case 491: -#line 2564 "cppBison.yxx" - { - if ((yyvsp[0].u.expr)->_type == CPPExpression::T_integer) { - (yyval.u.expr) = (yyvsp[0].u.expr); - (yyval.u.expr)->_u._integer = -(yyval.u.expr)->_u._integer; - } else if ((yyvsp[0].u.expr)->_type == CPPExpression::T_real) { - (yyval.u.expr) = (yyvsp[0].u.expr); - (yyval.u.expr)->_u._real = -(yyval.u.expr)->_u._real; - } else { - (yyval.u.expr) = new CPPExpression(UNARY_MINUS, (yyvsp[0].u.expr)); - } -} - break; - - case 492: -#line 2576 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(UNARY_REF, (yyvsp[0].u.expr)); -} - break; - - case 493: -#line 2580 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression('*', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); -} - break; - - case 494: -#line 2584 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression('/', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); -} - break; - - case 495: -#line 2588 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression('%', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); -} - break; - - case 496: -#line 2592 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression('+', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); -} - break; - - case 497: -#line 2596 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression('-', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); -} - break; - - case 498: -#line 2600 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression('|', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); -} - break; - - case 499: -#line 2604 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression('&', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); -} - break; - - case 500: -#line 2608 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(OROR, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); -} - break; - - case 501: -#line 2612 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(ANDAND, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); -} - break; - - case 502: -#line 2616 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(EQCOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); -} - break; - - case 503: -#line 2620 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(NECOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); -} - break; - - case 504: -#line 2624 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(LECOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); -} - break; - - case 505: -#line 2628 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(GECOMPARE, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); -} - break; - - case 506: -#line 2632 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression('<', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); -} - break; - - case 507: -#line 2636 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression('>', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); -} - break; - - case 508: -#line 2640 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(LSHIFT, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); -} - break; - - case 509: -#line 2644 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(RSHIFT, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); -} - break; - - case 510: -#line 2648 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression('?', (yyvsp[-4].u.expr), (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); -} - break; - - case 511: -#line 2652 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression('[', (yyvsp[-3].u.expr), (yyvsp[-1].u.expr)); -} - break; - - case 512: -#line 2656 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression('f', (yyvsp[-3].u.expr), (yyvsp[-1].u.expr)); -} - break; - - case 513: -#line 2660 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression('f', (yyvsp[-2].u.expr)); -} - break; - - case 514: -#line 2664 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression('.', (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); -} - break; - - case 515: -#line 2668 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression(POINTSAT, (yyvsp[-2].u.expr), (yyvsp[0].u.expr)); -} - break; - - case 516: -#line 2672 "cppBison.yxx" - { - (yyval.u.expr) = (yyvsp[-1].u.expr); -} - break; - - case 517: -#line 2679 "cppBison.yxx" - { - (yyval.u.expr) = new CPPExpression((yyvsp[0].u.integer)); -} - break; - - case 518: -#line 2683 "cppBison.yxx" - { (yyval.u.expr) = new CPPExpression(true); } break; - case 519: -#line 2687 "cppBison.yxx" + case 479: + +/* Line 1455 of yacc.c */ +#line 2506 "cppBison.yxx" { (yyval.u.expr) = new CPPExpression(false); } break; + case 480: + +/* Line 1455 of yacc.c */ +#line 2510 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression((yyvsp[(1) - (1)].u.integer)); +} + break; + + case 481: + +/* Line 1455 of yacc.c */ +#line 2514 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression((yyvsp[(1) - (1)].u.real)); +} + break; + + case 482: + +/* Line 1455 of yacc.c */ +#line 2518 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression((yyvsp[(1) - (1)].str)); +} + break; + + case 483: + +/* Line 1455 of yacc.c */ +#line 2522 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression((yyvsp[(1) - (1)].u.identifier), current_scope, global_scope, current_lexer); +} + break; + + case 484: + +/* Line 1455 of yacc.c */ +#line 2536 "cppBison.yxx" + { + (yyval.u.expr) = (yyvsp[(1) - (1)].u.expr); +} + break; + + case 485: + +/* Line 1455 of yacc.c */ +#line 2540 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[(2) - (4)].u.type), (yyvsp[(4) - (4)].u.expr))); +} + break; + + case 486: + +/* Line 1455 of yacc.c */ +#line 2544 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[(3) - (7)].u.type), (yyvsp[(6) - (7)].u.expr))); +} + break; + + case 487: + +/* Line 1455 of yacc.c */ +#line 2548 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(CPPExpression::typecast_op((yyvsp[(3) - (7)].u.type), (yyvsp[(6) - (7)].u.expr))); +} + break; + + case 488: + +/* Line 1455 of yacc.c */ +#line 2552 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(CPPExpression::sizeof_func((yyvsp[(3) - (4)].u.type))); +} + break; + + case 489: + +/* Line 1455 of yacc.c */ +#line 2556 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(CPPExpression::new_op((yyvsp[(2) - (2)].u.type))); +} + break; + + case 490: + +/* Line 1455 of yacc.c */ +#line 2560 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(CPPExpression::new_op((yyvsp[(2) - (5)].u.type), (yyvsp[(4) - (5)].u.expr))); +} + break; + + case 491: + +/* Line 1455 of yacc.c */ +#line 2564 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(UNARY_NOT, (yyvsp[(2) - (2)].u.expr)); +} + break; + + case 492: + +/* Line 1455 of yacc.c */ +#line 2568 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(UNARY_NEGATE, (yyvsp[(2) - (2)].u.expr)); +} + break; + + case 493: + +/* Line 1455 of yacc.c */ +#line 2572 "cppBison.yxx" + { + if ((yyvsp[(2) - (2)].u.expr)->_type == CPPExpression::T_integer) { + (yyval.u.expr) = (yyvsp[(2) - (2)].u.expr); + (yyval.u.expr)->_u._integer = -(yyval.u.expr)->_u._integer; + } else if ((yyvsp[(2) - (2)].u.expr)->_type == CPPExpression::T_real) { + (yyval.u.expr) = (yyvsp[(2) - (2)].u.expr); + (yyval.u.expr)->_u._real = -(yyval.u.expr)->_u._real; + } else { + (yyval.u.expr) = new CPPExpression(UNARY_MINUS, (yyvsp[(2) - (2)].u.expr)); + } +} + break; + + case 494: + +/* Line 1455 of yacc.c */ +#line 2584 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(UNARY_REF, (yyvsp[(2) - (2)].u.expr)); +} + break; + + case 495: + +/* Line 1455 of yacc.c */ +#line 2588 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression('*', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 496: + +/* Line 1455 of yacc.c */ +#line 2592 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression('/', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 497: + +/* Line 1455 of yacc.c */ +#line 2596 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression('%', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 498: + +/* Line 1455 of yacc.c */ +#line 2600 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression('+', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 499: + +/* Line 1455 of yacc.c */ +#line 2604 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression('-', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 500: + +/* Line 1455 of yacc.c */ +#line 2608 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression('|', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 501: + +/* Line 1455 of yacc.c */ +#line 2612 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression('^', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 502: + +/* Line 1455 of yacc.c */ +#line 2616 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression('&', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 503: + +/* Line 1455 of yacc.c */ +#line 2620 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(OROR, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 504: + +/* Line 1455 of yacc.c */ +#line 2624 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(ANDAND, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 505: + +/* Line 1455 of yacc.c */ +#line 2628 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(EQCOMPARE, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 506: + +/* Line 1455 of yacc.c */ +#line 2632 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(NECOMPARE, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 507: + +/* Line 1455 of yacc.c */ +#line 2636 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(LECOMPARE, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 508: + +/* Line 1455 of yacc.c */ +#line 2640 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(GECOMPARE, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 509: + +/* Line 1455 of yacc.c */ +#line 2644 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression('<', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 510: + +/* Line 1455 of yacc.c */ +#line 2648 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression('>', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 511: + +/* Line 1455 of yacc.c */ +#line 2652 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(LSHIFT, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 512: + +/* Line 1455 of yacc.c */ +#line 2656 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(RSHIFT, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 513: + +/* Line 1455 of yacc.c */ +#line 2660 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression('?', (yyvsp[(1) - (5)].u.expr), (yyvsp[(3) - (5)].u.expr), (yyvsp[(5) - (5)].u.expr)); +} + break; + + case 514: + +/* Line 1455 of yacc.c */ +#line 2664 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression('[', (yyvsp[(1) - (4)].u.expr), (yyvsp[(3) - (4)].u.expr)); +} + break; + + case 515: + +/* Line 1455 of yacc.c */ +#line 2668 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression('f', (yyvsp[(1) - (4)].u.expr), (yyvsp[(3) - (4)].u.expr)); +} + break; + + case 516: + +/* Line 1455 of yacc.c */ +#line 2672 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression('f', (yyvsp[(1) - (3)].u.expr)); +} + break; + + case 517: + +/* Line 1455 of yacc.c */ +#line 2676 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression('.', (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 518: + +/* Line 1455 of yacc.c */ +#line 2680 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression(POINTSAT, (yyvsp[(1) - (3)].u.expr), (yyvsp[(3) - (3)].u.expr)); +} + break; + + case 519: + +/* Line 1455 of yacc.c */ +#line 2684 "cppBison.yxx" + { + (yyval.u.expr) = (yyvsp[(2) - (3)].u.expr); +} + break; + case 520: + +/* Line 1455 of yacc.c */ #line 2691 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression((yyvsp[0].u.integer)); + (yyval.u.expr) = new CPPExpression((yyvsp[(1) - (1)].u.integer)); } break; case 521: + +/* Line 1455 of yacc.c */ #line 2695 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression((yyvsp[0].u.real)); + (yyval.u.expr) = new CPPExpression(true); } break; case 522: + +/* Line 1455 of yacc.c */ #line 2699 "cppBison.yxx" { - (yyval.u.expr) = new CPPExpression((yyvsp[0].str)); + (yyval.u.expr) = new CPPExpression(false); } break; case 523: -#line 2706 "cppBison.yxx" + +/* Line 1455 of yacc.c */ +#line 2703 "cppBison.yxx" { - CPPType *type = (yyvsp[0].u.identifier)->find_type(current_scope, global_scope, true); - if (type == NULL) { - type = CPPType::new_type(new CPPTBDType((yyvsp[0].u.identifier))); - } - (yyval.u.type) = type; + (yyval.u.expr) = new CPPExpression((yyvsp[(1) - (1)].u.integer)); } break; case 524: -#line 2714 "cppBison.yxx" + +/* Line 1455 of yacc.c */ +#line 2707 "cppBison.yxx" { - CPPType *type = (yyvsp[0].u.identifier)->find_type(current_scope, global_scope, true, current_lexer); + (yyval.u.expr) = new CPPExpression((yyvsp[(1) - (1)].u.real)); +} + break; + + case 525: + +/* Line 1455 of yacc.c */ +#line 2711 "cppBison.yxx" + { + (yyval.u.expr) = new CPPExpression((yyvsp[(1) - (1)].str)); +} + break; + + case 526: + +/* Line 1455 of yacc.c */ +#line 2718 "cppBison.yxx" + { + CPPType *type = (yyvsp[(1) - (1)].u.identifier)->find_type(current_scope, global_scope, true); if (type == NULL) { - type = CPPType::new_type(new CPPTBDType((yyvsp[0].u.identifier))); + type = CPPType::new_type(new CPPTBDType((yyvsp[(1) - (1)].u.identifier))); } (yyval.u.type) = type; } break; - case 525: -#line 2722 "cppBison.yxx" - { - (yyval.u.type) = CPPType::new_type(new CPPTBDType((yyvsp[0].u.identifier))); -} - break; - - case 526: -#line 2745 "cppBison.yxx" - { - (yyval.u.identifier) = (yyvsp[0].u.identifier); -} - break; - case 527: -#line 2749 "cppBison.yxx" + +/* Line 1455 of yacc.c */ +#line 2726 "cppBison.yxx" { - (yyval.u.identifier) = (yyvsp[0].u.identifier); + CPPType *type = (yyvsp[(2) - (2)].u.identifier)->find_type(current_scope, global_scope, true, current_lexer); + if (type == NULL) { + type = CPPType::new_type(new CPPTBDType((yyvsp[(2) - (2)].u.identifier))); + } + (yyval.u.type) = type; } break; case 528: -#line 2756 "cppBison.yxx" + +/* Line 1455 of yacc.c */ +#line 2734 "cppBison.yxx" { - (yyval.str) = (yyvsp[0].str); + (yyval.u.type) = CPPType::new_type(new CPPTBDType((yyvsp[(2) - (2)].u.identifier))); } break; case 529: -#line 2760 "cppBison.yxx" + +/* Line 1455 of yacc.c */ +#line 2757 "cppBison.yxx" { - (yyval.str) = (yyvsp[-1].str) + (yyvsp[0].str); + (yyval.u.identifier) = (yyvsp[(1) - (1)].u.identifier); +} + break; + + case 530: + +/* Line 1455 of yacc.c */ +#line 2761 "cppBison.yxx" + { + (yyval.u.identifier) = (yyvsp[(1) - (1)].u.identifier); +} + break; + + case 531: + +/* Line 1455 of yacc.c */ +#line 2768 "cppBison.yxx" + { + (yyval.str) = (yyvsp[(1) - (1)].str); +} + break; + + case 532: + +/* Line 1455 of yacc.c */ +#line 2772 "cppBison.yxx" + { + (yyval.str) = (yyvsp[(1) - (2)].str) + (yyvsp[(2) - (2)].str); } break; + +/* Line 1455 of yacc.c */ +#line 7258 "y.tab.c" + default: break; } + YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); -/* Line 1037 of yacc.c. */ -#line 6091 "y.tab.c" - - yyvsp -= yylen; - yyssp -= yylen; - yylsp -= yylen; - + YYPOPSTACK (yylen); + yylen = 0; YY_STACK_PRINT (yyss, yyssp); *++yyvsp = yyval; @@ -6121,98 +7289,65 @@ yyerrlab: if (!yyerrstatus) { ++yynerrs; -#if YYERROR_VERBOSE - yyn = yypact[yystate]; - - if (YYPACT_NINF < yyn && yyn < YYLAST) - { - YYSIZE_T yysize = 0; - int yytype = YYTRANSLATE (yychar); - const char* yyprefix; - char *yymsg; - int yyx; - - /* Start YYX at -YYN if negative to avoid negative indexes in - YYCHECK. */ - int yyxbegin = yyn < 0 ? -yyn : 0; - - /* Stay within bounds of both yycheck and yytname. */ - int yychecklim = YYLAST - yyn; - int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; - int yycount = 0; - - yyprefix = ", expecting "; - for (yyx = yyxbegin; yyx < yyxend; ++yyx) - if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR) - { - yysize += yystrlen (yyprefix) + yystrlen (yytname [yyx]); - yycount += 1; - if (yycount == 5) - { - yysize = 0; - break; - } - } - yysize += (sizeof ("syntax error, unexpected ") - + yystrlen (yytname[yytype])); - yymsg = (char *) YYSTACK_ALLOC (yysize); - if (yymsg != 0) - { - char *yyp = yystpcpy (yymsg, "syntax error, unexpected "); - yyp = yystpcpy (yyp, yytname[yytype]); - - if (yycount < 5) - { - yyprefix = ", expecting "; - for (yyx = yyxbegin; yyx < yyxend; ++yyx) - if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR) - { - yyp = yystpcpy (yyp, yyprefix); - yyp = yystpcpy (yyp, yytname[yyx]); - yyprefix = " or "; - } - } - yyerror (yymsg); +#if ! YYERROR_VERBOSE + yyerror (YY_("syntax error")); +#else + { + YYSIZE_T yysize = yysyntax_error (0, yystate, yychar); + if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM) + { + YYSIZE_T yyalloc = 2 * yysize; + if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM)) + yyalloc = YYSTACK_ALLOC_MAXIMUM; + if (yymsg != yymsgbuf) YYSTACK_FREE (yymsg); - } - else - yyerror ("syntax error; also virtual memory exhausted"); - } - else -#endif /* YYERROR_VERBOSE */ - yyerror ("syntax error"); + yymsg = (char *) YYSTACK_ALLOC (yyalloc); + if (yymsg) + yymsg_alloc = yyalloc; + else + { + yymsg = yymsgbuf; + yymsg_alloc = sizeof yymsgbuf; + } + } + + if (0 < yysize && yysize <= yymsg_alloc) + { + (void) yysyntax_error (yymsg, yystate, yychar); + yyerror (yymsg); + } + else + { + yyerror (YY_("syntax error")); + if (yysize != 0) + goto yyexhaustedlab; + } + } +#endif } yyerror_range[0] = yylloc; if (yyerrstatus == 3) { - /* If just tried and failed to reuse look-ahead token after an + /* If just tried and failed to reuse lookahead token after an error, discard it. */ if (yychar <= YYEOF) - { - /* If at end of input, pop the error token, - then the rest of the stack, then return failure. */ + { + /* Return failure if at end of input. */ if (yychar == YYEOF) - for (;;) - { - yyerror_range[0] = *yylsp; - YYPOPSTACK; - if (yyssp == yyss) - YYABORT; - yydestruct ("Error: popping", - yystos[*yyssp], yyvsp, yylsp); - } - } + YYABORT; + } else { - yydestruct ("Error: discarding", yytoken, &yylval, &yylloc); + yydestruct ("Error: discarding", + yytoken, &yylval, &yylloc); yychar = YYEMPTY; } } - /* Else will try to reuse look-ahead token after shifting the error + /* Else will try to reuse lookahead token after shifting the error token. */ goto yyerrlab1; @@ -6222,17 +7357,18 @@ yyerrlab: `---------------------------------------------------*/ yyerrorlab: -#ifdef __GNUC__ - /* Pacify GCC when the user code never invokes YYERROR and the label - yyerrorlab therefore never appears in user code. */ - if (0) + /* Pacify compilers like GCC when the user code never invokes + YYERROR and the label yyerrorlab therefore never appears in user + code. */ + if (/*CONSTCOND*/ 0) goto yyerrorlab; -#endif yyerror_range[0] = yylsp[1-yylen]; - yylsp -= yylen; - yyvsp -= yylen; - yyssp -= yylen; + /* Do not reclaim the symbols of the rule which action triggered + this YYERROR. */ + YYPOPSTACK (yylen); + yylen = 0; + YY_STACK_PRINT (yyss, yyssp); yystate = *yyssp; goto yyerrlab1; @@ -6262,24 +7398,22 @@ yyerrlab1: YYABORT; yyerror_range[0] = *yylsp; - yydestruct ("Error: popping", yystos[yystate], yyvsp, yylsp); - YYPOPSTACK; + yydestruct ("Error: popping", + yystos[yystate], yyvsp, yylsp); + YYPOPSTACK (1); yystate = *yyssp; YY_STACK_PRINT (yyss, yyssp); } - if (yyn == YYFINAL) - YYACCEPT; - *++yyvsp = yylval; yyerror_range[1] = yylloc; /* Using YYLLOC is tempting, but would change the location of - the look-ahead. YYLOC is available though. */ - YYLLOC_DEFAULT (yyloc, yyerror_range - 1, 2); + the lookahead. YYLOC is available though. */ + YYLLOC_DEFAULT (yyloc, (yyerror_range - 1), 2); *++yylsp = yyloc; - /* Shift the error token. */ + /* Shift the error token. */ YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp); yystate = yyn; @@ -6297,28 +7431,43 @@ yyacceptlab: | yyabortlab -- YYABORT comes here. | `-----------------------------------*/ yyabortlab: - yydestruct ("Error: discarding lookahead", - yytoken, &yylval, &yylloc); - yychar = YYEMPTY; yyresult = 1; goto yyreturn; -#ifndef yyoverflow -/*----------------------------------------------. -| yyoverflowlab -- parser overflow comes here. | -`----------------------------------------------*/ -yyoverflowlab: - yyerror ("parser stack overflow"); +#if !defined(yyoverflow) || YYERROR_VERBOSE +/*-------------------------------------------------. +| yyexhaustedlab -- memory exhaustion comes here. | +`-------------------------------------------------*/ +yyexhaustedlab: + yyerror (YY_("memory exhausted")); yyresult = 2; /* Fall through. */ #endif yyreturn: + if (yychar != YYEMPTY) + yydestruct ("Cleanup: discarding lookahead", + yytoken, &yylval, &yylloc); + /* Do not reclaim the symbols of the rule which action triggered + this YYABORT or YYACCEPT. */ + YYPOPSTACK (yylen); + YY_STACK_PRINT (yyss, yyssp); + while (yyssp != yyss) + { + yydestruct ("Cleanup: popping", + yystos[*yyssp], yyvsp, yylsp); + YYPOPSTACK (1); + } #ifndef yyoverflow if (yyss != yyssa) YYSTACK_FREE (yyss); #endif - return yyresult; +#if YYERROR_VERBOSE + if (yymsg != yymsgbuf) + YYSTACK_FREE (yymsg); +#endif + /* Make sure YYID is used. */ + return YYID (yyresult); } diff --git a/dtool/src/cppparser/cppBison.h.prebuilt b/dtool/src/cppparser/cppBison.h.prebuilt index 5d09e7a736..b9e6ac68c4 100644 --- a/dtool/src/cppparser/cppBison.h.prebuilt +++ b/dtool/src/cppparser/cppBison.h.prebuilt @@ -1,27 +1,37 @@ -/* A Bison parser, made by GNU Bison 2.0. */ -/* Skeleton parser for Yacc-like parsing with Bison, - Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004 Free Software Foundation, Inc. +/* A Bison parser, made by GNU Bison 2.4.1. */ - This program is free software; you can redistribute it and/or modify +/* Skeleton interface for Bison's Yacc-like parsers in C + + Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 + Free Software Foundation, Inc. + + This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. - + You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place - Suite 330, - Boston, MA 02111-1307, USA. */ + along with this program. If not, see . */ + +/* As a special exception, you may create a larger work that contains + part or all of the Bison parser skeleton and distribute that work + under terms of your choice, so long as that work isn't itself a + parser generator using the skeleton or a modified version thereof + as a parser skeleton. Alternatively, if you modify or redistribute + the parser skeleton itself, you may (at your option) remove this + special exception, which will cause the skeleton and the resulting + Bison output files to be licensed under the GNU General Public + License without this special exception. + + This special exception was added by the Free Software Foundation in + version 2.2 of Bison. */ -/* As a special exception, when this file is copied by Bison into a - Bison output file, you may use that output file without restriction. - This special exception was added by the Free Software Foundation - in version 1.24 of Bison. */ /* Tokens. */ #ifndef YYTOKENTYPE @@ -131,6 +141,7 @@ START_TYPE = 357 }; #endif +/* Tokens. */ #define REAL 258 #define INTEGER 259 #define CHAR_TOK 260 @@ -235,16 +246,15 @@ -#if ! defined (YYSTYPE) && ! defined (YYSTYPE_IS_DECLARED) -typedef int YYSTYPE; +#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED + # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 -# define YYSTYPE_IS_TRIVIAL 1 #endif -#if ! defined (YYLTYPE) && ! defined (YYLTYPE_IS_DECLARED) +#if ! defined YYLTYPE && ! defined YYLTYPE_IS_DECLARED typedef struct YYLTYPE { int first_line; @@ -259,4 +269,3 @@ typedef struct YYLTYPE - diff --git a/dtool/src/cppparser/cppBison.yxx b/dtool/src/cppparser/cppBison.yxx index be09b4e642..28e3577990 100644 --- a/dtool/src/cppparser/cppBison.yxx +++ b/dtool/src/cppparser/cppBison.yxx @@ -2191,6 +2191,10 @@ no_angle_bracket_const_expr: | no_angle_bracket_const_expr '|' no_angle_bracket_const_expr { $$ = new CPPExpression('|', $1, $3); +} + | no_angle_bracket_const_expr '^' no_angle_bracket_const_expr +{ + $$ = new CPPExpression('^', $1, $3); } | no_angle_bracket_const_expr '&' no_angle_bracket_const_expr { @@ -2410,6 +2414,10 @@ const_expr: | const_expr '|' const_expr { $$ = new CPPExpression('|', $1, $3); +} + | const_expr '^' const_expr +{ + $$ = new CPPExpression('^', $1, $3); } | const_expr '&' const_expr { @@ -2599,6 +2607,10 @@ formal_const_expr: | formal_const_expr '|' const_expr { $$ = new CPPExpression('|', $1, $3); +} + | formal_const_expr '^' const_expr +{ + $$ = new CPPExpression('^', $1, $3); } | formal_const_expr '&' const_expr {