[BACK]Return to ytab.c CVS log [TXT][DIR] Up to [local] / OpenXM_contrib2 / asir2018 / parse

Annotation of OpenXM_contrib2/asir2018/parse/ytab.c, Revision 1.1

1.1     ! noro        1:
        !             2: /* A Bison parser, made by GNU Bison 2.4.1.  */
        !             3:
        !             4: /* Skeleton implementation for Bison's Yacc-like parsers in C
        !             5:
        !             6:       Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
        !             7:    Free Software Foundation, Inc.
        !             8:
        !             9:    This program is free software: you can redistribute it and/or modify
        !            10:    it under the terms of the GNU General Public License as published by
        !            11:    the Free Software Foundation, either version 3 of the License, or
        !            12:    (at your option) any later version.
        !            13:
        !            14:    This program is distributed in the hope that it will be useful,
        !            15:    but WITHOUT ANY WARRANTY; without even the implied warranty of
        !            16:    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
        !            17:    GNU General Public License for more details.
        !            18:
        !            19:    You should have received a copy of the GNU General Public License
        !            20:    along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
        !            21:
        !            22: /* As a special exception, you may create a larger work that contains
        !            23:    part or all of the Bison parser skeleton and distribute that work
        !            24:    under terms of your choice, so long as that work isn't itself a
        !            25:    parser generator using the skeleton or a modified version thereof
        !            26:    as a parser skeleton.  Alternatively, if you modify or redistribute
        !            27:    the parser skeleton itself, you may (at your option) remove this
        !            28:    special exception, which will cause the skeleton and the resulting
        !            29:    Bison output files to be licensed under the GNU General Public
        !            30:    License without this special exception.
        !            31:
        !            32:    This special exception was added by the Free Software Foundation in
        !            33:    version 2.2 of Bison.  */
        !            34:
        !            35: /* C LALR(1) parser skeleton written by Richard Stallman, by
        !            36:    simplifying the original so-called "semantic" parser.  */
        !            37:
        !            38: /* All symbols defined below should begin with yy or YY, to avoid
        !            39:    infringing on user name space.  This should be done even for local
        !            40:    variables, as they might otherwise be expanded by user macros.
        !            41:    There are some unavoidable exceptions within include files to
        !            42:    define necessary library symbols; they are noted "INFRINGES ON
        !            43:    USER NAME SPACE" below.  */
        !            44:
        !            45: /* Identify Bison output.  */
        !            46: #define YYBISON 1
        !            47:
        !            48: /* Bison version.  */
        !            49: #define YYBISON_VERSION "2.4.1"
        !            50:
        !            51: /* Skeleton name.  */
        !            52: #define YYSKELETON_NAME "yacc.c"
        !            53:
        !            54: /* Pure parsers.  */
        !            55: #define YYPURE 0
        !            56:
        !            57: /* Push parsers.  */
        !            58: #define YYPUSH 0
        !            59:
        !            60: /* Pull parsers.  */
        !            61: #define YYPULL 1
        !            62:
        !            63: /* Using locations.  */
        !            64: #define YYLSP_NEEDED 0
        !            65:
        !            66:
        !            67:
        !            68: /* Copy the first part of user declarations.  */
        !            69:
        !            70: /* Line 189 of yacc.c  */
        !            71: #line 50 "parse.y"
        !            72:
        !            73: #define malloc(x) Risa_GC_malloc(x)
        !            74: #define realloc(x,y) Risa_GC_realloc(x,y)
        !            75: #define free(x) Risa_GC_free(x)
        !            76:
        !            77: #if defined(TOWNS)
        !            78: #include <alloca.h>
        !            79: #endif
        !            80: #include <ctype.h>
        !            81: #include "ca.h"
        !            82: #include <sys/types.h>
        !            83: #include <sys/stat.h>
        !            84: #include "parse.h"
        !            85:
        !            86: #define NOPR (prresult=0)
        !            87:
        !            88: extern int gdef,mgdef,ldef;
        !            89: extern SNODE parse_snode;
        !            90: extern int main_parser, allow_create_var;
        !            91:
        !            92: int prresult,saveresult;
        !            93:
        !            94: static int ind;
        !            95: static FNODE t;
        !            96: static NODE a,b;
        !            97: static NODE2 a2;
        !            98: static pointer val;
        !            99: static QUOTE quote;
        !           100: extern jmp_buf env;
        !           101:
        !           102:
        !           103: /* Line 189 of yacc.c  */
        !           104: #line 105 "y.tab.c"
        !           105:
        !           106: /* Enabling traces.  */
        !           107: #ifndef YYDEBUG
        !           108: # define YYDEBUG 0
        !           109: #endif
        !           110:
        !           111: /* Enabling verbose error messages.  */
        !           112: #ifdef YYERROR_VERBOSE
        !           113: # undef YYERROR_VERBOSE
        !           114: # define YYERROR_VERBOSE 1
        !           115: #else
        !           116: # define YYERROR_VERBOSE 0
        !           117: #endif
        !           118:
        !           119: /* Enabling the token table.  */
        !           120: #ifndef YYTOKEN_TABLE
        !           121: # define YYTOKEN_TABLE 0
        !           122: #endif
        !           123:
        !           124:
        !           125: /* Tokens.  */
        !           126: #ifndef YYTOKENTYPE
        !           127: # define YYTOKENTYPE
        !           128:    /* Put the tokens into the symbol table, so that GDB and other debuggers
        !           129:       know about them.  */
        !           130:    enum yytokentype {
        !           131:      STRUCT = 258,
        !           132:      POINT = 259,
        !           133:      NEWSTRUCT = 260,
        !           134:      ANS = 261,
        !           135:      FDEF = 262,
        !           136:      PFDEF = 263,
        !           137:      MODDEF = 264,
        !           138:      MODEND = 265,
        !           139:      GLOBAL = 266,
        !           140:      MGLOBAL = 267,
        !           141:      LOCAL = 268,
        !           142:      LOCALF = 269,
        !           143:      CMP = 270,
        !           144:      OR = 271,
        !           145:      AND = 272,
        !           146:      CAR = 273,
        !           147:      CDR = 274,
        !           148:      QUOTED = 275,
        !           149:      COLONCOLON = 276,
        !           150:      DO = 277,
        !           151:      WHILE = 278,
        !           152:      FOR = 279,
        !           153:      IF = 280,
        !           154:      ELSE = 281,
        !           155:      BREAK = 282,
        !           156:      RETURN = 283,
        !           157:      CONTINUE = 284,
        !           158:      PARIF = 285,
        !           159:      MAP = 286,
        !           160:      RECMAP = 287,
        !           161:      TIMER = 288,
        !           162:      GF2NGEN = 289,
        !           163:      GFPNGEN = 290,
        !           164:      GFSNGEN = 291,
        !           165:      GETOPT = 292,
        !           166:      FOP_AND = 293,
        !           167:      FOP_OR = 294,
        !           168:      FOP_IMPL = 295,
        !           169:      FOP_REPL = 296,
        !           170:      FOP_EQUIV = 297,
        !           171:      FOP_NOT = 298,
        !           172:      LOP = 299,
        !           173:      FORMULA = 300,
        !           174:      UCASE = 301,
        !           175:      LCASE = 302,
        !           176:      STR = 303,
        !           177:      SELF = 304,
        !           178:      BOPASS = 305,
        !           179:      PLUS = 306,
        !           180:      MINUS = 307
        !           181:    };
        !           182: #endif
        !           183: /* Tokens.  */
        !           184: #define STRUCT 258
        !           185: #define POINT 259
        !           186: #define NEWSTRUCT 260
        !           187: #define ANS 261
        !           188: #define FDEF 262
        !           189: #define PFDEF 263
        !           190: #define MODDEF 264
        !           191: #define MODEND 265
        !           192: #define GLOBAL 266
        !           193: #define MGLOBAL 267
        !           194: #define LOCAL 268
        !           195: #define LOCALF 269
        !           196: #define CMP 270
        !           197: #define OR 271
        !           198: #define AND 272
        !           199: #define CAR 273
        !           200: #define CDR 274
        !           201: #define QUOTED 275
        !           202: #define COLONCOLON 276
        !           203: #define DO 277
        !           204: #define WHILE 278
        !           205: #define FOR 279
        !           206: #define IF 280
        !           207: #define ELSE 281
        !           208: #define BREAK 282
        !           209: #define RETURN 283
        !           210: #define CONTINUE 284
        !           211: #define PARIF 285
        !           212: #define MAP 286
        !           213: #define RECMAP 287
        !           214: #define TIMER 288
        !           215: #define GF2NGEN 289
        !           216: #define GFPNGEN 290
        !           217: #define GFSNGEN 291
        !           218: #define GETOPT 292
        !           219: #define FOP_AND 293
        !           220: #define FOP_OR 294
        !           221: #define FOP_IMPL 295
        !           222: #define FOP_REPL 296
        !           223: #define FOP_EQUIV 297
        !           224: #define FOP_NOT 298
        !           225: #define LOP 299
        !           226: #define FORMULA 300
        !           227: #define UCASE 301
        !           228: #define LCASE 302
        !           229: #define STR 303
        !           230: #define SELF 304
        !           231: #define BOPASS 305
        !           232: #define PLUS 306
        !           233: #define MINUS 307
        !           234:
        !           235:
        !           236:
        !           237:
        !           238: #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
        !           239: typedef union YYSTYPE
        !           240: {
        !           241:
        !           242: /* Line 214 of yacc.c  */
        !           243: #line 83 "parse.y"
        !           244:
        !           245:   FNODE f;
        !           246:   SNODE s;
        !           247:   NODE n;
        !           248:   NODE2 n2;
        !           249:   int i;
        !           250:   pointer p;
        !           251:
        !           252:
        !           253:
        !           254: /* Line 214 of yacc.c  */
        !           255: #line 256 "y.tab.c"
        !           256: } YYSTYPE;
        !           257: # define YYSTYPE_IS_TRIVIAL 1
        !           258: # define yystype YYSTYPE /* obsolescent; will be withdrawn */
        !           259: # define YYSTYPE_IS_DECLARED 1
        !           260: #endif
        !           261:
        !           262:
        !           263: /* Copy the second part of user declarations.  */
        !           264:
        !           265:
        !           266: /* Line 264 of yacc.c  */
        !           267: #line 268 "y.tab.c"
        !           268:
        !           269: #ifdef short
        !           270: # undef short
        !           271: #endif
        !           272:
        !           273: #ifdef YYTYPE_UINT8
        !           274: typedef YYTYPE_UINT8 yytype_uint8;
        !           275: #else
        !           276: typedef unsigned char yytype_uint8;
        !           277: #endif
        !           278:
        !           279: #ifdef YYTYPE_INT8
        !           280: typedef YYTYPE_INT8 yytype_int8;
        !           281: #elif (defined __STDC__ || defined __C99__FUNC__ \
        !           282:      || defined __cplusplus || defined _MSC_VER)
        !           283: typedef signed char yytype_int8;
        !           284: #else
        !           285: typedef short int yytype_int8;
        !           286: #endif
        !           287:
        !           288: #ifdef YYTYPE_UINT16
        !           289: typedef YYTYPE_UINT16 yytype_uint16;
        !           290: #else
        !           291: typedef unsigned short int yytype_uint16;
        !           292: #endif
        !           293:
        !           294: #ifdef YYTYPE_INT16
        !           295: typedef YYTYPE_INT16 yytype_int16;
        !           296: #else
        !           297: typedef short int yytype_int16;
        !           298: #endif
        !           299:
        !           300: #ifndef YYSIZE_T
        !           301: # ifdef __SIZE_TYPE__
        !           302: #  define YYSIZE_T __SIZE_TYPE__
        !           303: # elif defined size_t
        !           304: #  define YYSIZE_T size_t
        !           305: # elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
        !           306:      || defined __cplusplus || defined _MSC_VER)
        !           307: #  include <stddef.h> /* INFRINGES ON USER NAME SPACE */
        !           308: #  define YYSIZE_T size_t
        !           309: # else
        !           310: #  define YYSIZE_T unsigned int
        !           311: # endif
        !           312: #endif
        !           313:
        !           314: #define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
        !           315:
        !           316: #ifndef YY_
        !           317: # if YYENABLE_NLS
        !           318: #  if ENABLE_NLS
        !           319: #   include <libintl.h> /* INFRINGES ON USER NAME SPACE */
        !           320: #   define YY_(msgid) dgettext ("bison-runtime", msgid)
        !           321: #  endif
        !           322: # endif
        !           323: # ifndef YY_
        !           324: #  define YY_(msgid) msgid
        !           325: # endif
        !           326: #endif
        !           327:
        !           328: /* Suppress unused-variable warnings by "using" E.  */
        !           329: #if ! defined lint || defined __GNUC__
        !           330: # define YYUSE(e) ((void) (e))
        !           331: #else
        !           332: # define YYUSE(e) /* empty */
        !           333: #endif
        !           334:
        !           335: /* Identity function, used to suppress warnings about constant conditions.  */
        !           336: #ifndef lint
        !           337: # define YYID(n) (n)
        !           338: #else
        !           339: #if (defined __STDC__ || defined __C99__FUNC__ \
        !           340:      || defined __cplusplus || defined _MSC_VER)
        !           341: static int
        !           342: YYID (int yyi)
        !           343: #else
        !           344: static int
        !           345: YYID (yyi)
        !           346:     int yyi;
        !           347: #endif
        !           348: {
        !           349:   return yyi;
        !           350: }
        !           351: #endif
        !           352:
        !           353: #if ! defined yyoverflow || YYERROR_VERBOSE
        !           354:
        !           355: /* The parser invokes alloca or malloc; define the necessary symbols.  */
        !           356:
        !           357: # ifdef YYSTACK_USE_ALLOCA
        !           358: #  if YYSTACK_USE_ALLOCA
        !           359: #   ifdef __GNUC__
        !           360: #    define YYSTACK_ALLOC __builtin_alloca
        !           361: #   elif defined __BUILTIN_VA_ARG_INCR
        !           362: #    include <alloca.h> /* INFRINGES ON USER NAME SPACE */
        !           363: #   elif defined _AIX
        !           364: #    define YYSTACK_ALLOC __alloca
        !           365: #   elif defined _MSC_VER
        !           366: #    include <malloc.h> /* INFRINGES ON USER NAME SPACE */
        !           367: #    define alloca _alloca
        !           368: #   else
        !           369: #    define YYSTACK_ALLOC alloca
        !           370: #    if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
        !           371:      || defined __cplusplus || defined _MSC_VER)
        !           372: #     include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
        !           373: #     ifndef _STDLIB_H
        !           374: #      define _STDLIB_H 1
        !           375: #     endif
        !           376: #    endif
        !           377: #   endif
        !           378: #  endif
        !           379: # endif
        !           380:
        !           381: # ifdef YYSTACK_ALLOC
        !           382:    /* Pacify GCC's `empty if-body' warning.  */
        !           383: #  define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0))
        !           384: #  ifndef YYSTACK_ALLOC_MAXIMUM
        !           385:     /* The OS might guarantee only one guard page at the bottom of the stack,
        !           386:        and a page size can be as small as 4096 bytes.  So we cannot safely
        !           387:        invoke alloca (N) if N exceeds 4096.  Use a slightly smaller number
        !           388:        to allow for a few compiler-allocated temporary stack slots.  */
        !           389: #   define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
        !           390: #  endif
        !           391: # else
        !           392: #  define YYSTACK_ALLOC YYMALLOC
        !           393: #  define YYSTACK_FREE YYFREE
        !           394: #  ifndef YYSTACK_ALLOC_MAXIMUM
        !           395: #   define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
        !           396: #  endif
        !           397: #  if (defined __cplusplus && ! defined _STDLIB_H \
        !           398:        && ! ((defined YYMALLOC || defined malloc) \
        !           399:        && (defined YYFREE || defined free)))
        !           400: #   include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
        !           401: #   ifndef _STDLIB_H
        !           402: #    define _STDLIB_H 1
        !           403: #   endif
        !           404: #  endif
        !           405: #  ifndef YYMALLOC
        !           406: #   define YYMALLOC malloc
        !           407: #   if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
        !           408:      || defined __cplusplus || defined _MSC_VER)
        !           409: void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
        !           410: #   endif
        !           411: #  endif
        !           412: #  ifndef YYFREE
        !           413: #   define YYFREE free
        !           414: #   if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
        !           415:      || defined __cplusplus || defined _MSC_VER)
        !           416: void free (void *); /* INFRINGES ON USER NAME SPACE */
        !           417: #   endif
        !           418: #  endif
        !           419: # endif
        !           420: #endif /* ! defined yyoverflow || YYERROR_VERBOSE */
        !           421:
        !           422:
        !           423: #if (! defined yyoverflow \
        !           424:      && (! defined __cplusplus \
        !           425:    || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
        !           426:
        !           427: /* A type that is properly aligned for any stack member.  */
        !           428: union yyalloc
        !           429: {
        !           430:   yytype_int16 yyss_alloc;
        !           431:   YYSTYPE yyvs_alloc;
        !           432: };
        !           433:
        !           434: /* The size of the maximum gap between one aligned stack and the next.  */
        !           435: # define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
        !           436:
        !           437: /* The size of an array large to enough to hold all stacks, each with
        !           438:    N elements.  */
        !           439: # define YYSTACK_BYTES(N) \
        !           440:      ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
        !           441:       + YYSTACK_GAP_MAXIMUM)
        !           442:
        !           443: /* Copy COUNT objects from FROM to TO.  The source and destination do
        !           444:    not overlap.  */
        !           445: # ifndef YYCOPY
        !           446: #  if defined __GNUC__ && 1 < __GNUC__
        !           447: #   define YYCOPY(To, From, Count) \
        !           448:       __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
        !           449: #  else
        !           450: #   define YYCOPY(To, From, Count)    \
        !           451:       do          \
        !           452:   {          \
        !           453:     YYSIZE_T yyi;        \
        !           454:     for (yyi = 0; yyi < (Count); yyi++)  \
        !           455:       (To)[yyi] = (From)[yyi];    \
        !           456:   }          \
        !           457:       while (YYID (0))
        !           458: #  endif
        !           459: # endif
        !           460:
        !           461: /* Relocate STACK from its old location to the new one.  The
        !           462:    local variables YYSIZE and YYSTACKSIZE give the old and new number of
        !           463:    elements in the stack, and YYPTR gives the new location of the
        !           464:    stack.  Advance YYPTR to a properly aligned location for the next
        !           465:    stack.  */
        !           466: # define YYSTACK_RELOCATE(Stack_alloc, Stack)        \
        !           467:     do                  \
        !           468:       {                  \
        !           469:   YYSIZE_T yynewbytes;            \
        !           470:   YYCOPY (&yyptr->Stack_alloc, Stack, yysize);      \
        !           471:   Stack = &yyptr->Stack_alloc;          \
        !           472:   yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
        !           473:   yyptr += yynewbytes / sizeof (*yyptr);        \
        !           474:       }                  \
        !           475:     while (YYID (0))
        !           476:
        !           477: #endif
        !           478:
        !           479: /* YYFINAL -- State number of the termination state.  */
        !           480: #define YYFINAL  101
        !           481: /* YYLAST -- Last index in YYTABLE.  */
        !           482: #define YYLAST   1284
        !           483:
        !           484: /* YYNTOKENS -- Number of terminals.  */
        !           485: #define YYNTOKENS  77
        !           486: /* YYNNTS -- Number of nonterminals.  */
        !           487: #define YYNNTS  26
        !           488: /* YYNRULES -- Number of rules.  */
        !           489: #define YYNRULES  114
        !           490: /* YYNRULES -- Number of states.  */
        !           491: #define YYNSTATES  283
        !           492:
        !           493: /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
        !           494: #define YYUNDEFTOK  2
        !           495: #define YYMAXUTOK   307
        !           496:
        !           497: #define YYTRANSLATE(YYX)            \
        !           498:   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
        !           499:
        !           500: /* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX.  */
        !           501: static const yytype_uint8 yytranslate[] =
        !           502: {
        !           503:        0,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        !           504:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        !           505:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        !           506:        2,     2,     2,    64,     2,     2,    70,    56,    61,     2,
        !           507:       67,    68,    53,    51,    71,    52,     2,    54,     2,     2,
        !           508:        2,     2,     2,     2,     2,     2,     2,     2,    59,    69,
        !           509:       75,    57,    76,    58,     2,     2,     2,     2,     2,     2,
        !           510:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        !           511:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        !           512:        2,    73,     2,    74,    55,     2,    60,     2,     2,     2,
        !           513:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        !           514:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        !           515:        2,     2,     2,    65,    72,    66,     2,     2,     2,     2,
        !           516:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        !           517:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        !           518:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        !           519:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        !           520:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        !           521:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        !           522:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        !           523:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        !           524:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        !           525:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        !           526:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        !           527:        2,     2,     2,     2,     2,     2,     2,     2,     2,     2,
        !           528:        2,     2,     2,     2,     2,     2,     1,     2,     3,     4,
        !           529:        5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
        !           530:       15,    16,    17,    18,    19,    20,    21,    22,    23,    24,
        !           531:       25,    26,    27,    28,    29,    30,    31,    32,    33,    34,
        !           532:       35,    36,    37,    38,    39,    40,    41,    42,    43,    44,
        !           533:       45,    46,    47,    48,    49,    50,    62,    63
        !           534: };
        !           535:
        !           536: #if YYDEBUG
        !           537: /* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
        !           538:    YYRHS.  */
        !           539: static const yytype_uint16 yyprhs[] =
        !           540: {
        !           541:        0,     0,     3,     5,     7,     8,     9,    15,    16,    17,
        !           542:       23,    24,    25,    31,    35,    42,    45,    47,    50,    53,
        !           543:       56,    60,    66,    74,    84,    90,    98,   107,   114,   115,
        !           544:      116,   117,   130,   134,   137,   140,   142,   144,   145,   147,
        !           545:      151,   153,   157,   159,   163,   165,   169,   170,   173,   174,
        !           546:      176,   178,   182,   184,   188,   190,   192,   196,   198,   200,
        !           547:      202,   204,   206,   208,   210,   215,   222,   229,   236,   244,
        !           548:      249,   253,   262,   267,   274,   282,   292,   297,   302,   307,
        !           549:      311,   313,   318,   322,   324,   330,   334,   338,   341,   344,
        !           550:      348,   351,   354,   358,   362,   366,   370,   374,   378,   382,
        !           551:      385,   389,   393,   396,   400,   404,   408,   412,   416,   420,
        !           552:      426,   430,   435,   440,   446
        !           553: };
        !           554:
        !           555: /* YYRHS -- A `-1'-separated list of the rules' RHS.  */
        !           556: static const yytype_int8 yyrhs[] =
        !           557: {
        !           558:       78,     0,    -1,    79,    -1,    89,    -1,    -1,    -1,    11,
        !           559:       80,    94,    81,    89,    -1,    -1,    -1,    12,    82,    94,
        !           560:       83,    89,    -1,    -1,    -1,    13,    84,    94,    85,    89,
        !           561:       -1,    14,    93,    89,    -1,     3,    99,    65,    92,    66,
        !           562:       89,    -1,   102,    89,    -1,    91,    -1,    27,    89,    -1,
        !           563:       29,    89,    -1,    28,    89,    -1,    28,   102,    89,    -1,
        !           564:       25,    67,    96,    68,    79,    -1,    25,    67,    96,    68,
        !           565:       79,    26,    79,    -1,    24,    67,    96,    69,    96,    69,
        !           566:       96,    68,    79,    -1,    23,    67,    96,    68,    79,    -1,
        !           567:       22,    79,    23,    67,    96,    68,    89,    -1,    47,    67,
        !           568:       96,    68,    59,    57,   102,    89,    -1,     8,    47,    67,
        !           569:       96,    68,    89,    -1,    -1,    -1,    -1,     7,    47,    86,
        !           570:       67,    87,    96,    88,    68,    90,    65,    95,    66,    -1,
        !           571:        9,    47,    89,    -1,    10,    89,    -1,     1,    89,    -1,
        !           572:       69,    -1,    70,    -1,    -1,    48,    -1,    65,    95,    66,
        !           573:       -1,    99,    -1,    92,    71,    99,    -1,    47,    -1,    93,
        !           574:       71,    47,    -1,    46,    -1,    94,    71,    46,    -1,    -1,
        !           575:       95,    79,    -1,    -1,    97,    -1,   102,    -1,    97,    71,
        !           576:      102,    -1,   100,    -1,    98,    71,   100,    -1,    46,    -1,
        !           577:       47,    -1,    99,    57,   102,    -1,    48,    -1,    45,    -1,
        !           578:        6,    -1,    34,    -1,    35,    -1,    36,    -1,    47,    -1,
        !           579:       47,    67,    96,    68,    -1,    47,    67,    96,    72,    98,
        !           580:       68,    -1,    31,    67,    47,    71,    96,    68,    -1,    32,
        !           581:       67,    47,    71,    96,    68,    -1,    47,    65,    96,    66,
        !           582:       67,    96,    68,    -1,    37,    67,    99,    68,    -1,    37,
        !           583:       67,    68,    -1,    33,    67,   102,    71,   102,    71,   102,
        !           584:       68,    -1,    30,    67,    47,    68,    -1,    30,    67,    47,
        !           585:       71,    96,    68,    -1,    67,    53,   102,    68,    67,    96,
        !           586:       68,    -1,    67,    53,   102,    68,    67,    96,    72,    98,
        !           587:       68,    -1,    46,    67,    96,    68,    -1,    18,    67,   102,
        !           588:       68,    -1,    19,    67,   102,    68,    -1,    67,   102,    68,
        !           589:       -1,    46,    -1,   101,    73,   102,    74,    -1,   101,     4,
        !           590:       99,    -1,   101,    -1,    67,     3,    99,    68,   101,    -1,
        !           591:      102,    57,   102,    -1,   102,    50,   102,    -1,   102,    49,
        !           592:       -1,    49,   102,    -1,    73,    96,    74,    -1,    51,   102,
        !           593:       -1,    52,   102,    -1,   102,    51,   102,    -1,   102,    52,
        !           594:      102,    -1,   102,    53,   102,    -1,   102,    54,   102,    -1,
        !           595:      102,    56,   102,    -1,   102,    55,   102,    -1,   102,    15,
        !           596:      102,    -1,    64,   102,    -1,   102,    16,   102,    -1,   102,
        !           597:       17,   102,    -1,    43,   102,    -1,   102,    38,   102,    -1,
        !           598:      102,    39,   102,    -1,   102,    40,   102,    -1,   102,    41,
        !           599:      102,    -1,   102,    42,   102,    -1,   102,    44,   102,    -1,
        !           600:      102,    58,   102,    59,   102,    -1,    75,    96,    76,    -1,
        !           601:        5,    67,    99,    68,    -1,    20,    67,   102,    68,    -1,
        !           602:       73,    96,    72,   102,    74,    -1,    60,   102,    -1
        !           603: };
        !           604:
        !           605: /* YYRLINE[YYN] -- source line where rule number YYN was defined.  */
        !           606: static const yytype_uint16 yyrline[] =
        !           607: {
        !           608:        0,   130,   130,   139,   141,   141,   141,   143,   143,   143,
        !           609:      145,   145,   145,   147,   149,   151,   153,   155,   157,   159,
        !           610:      161,   163,   165,   167,   169,   171,   173,   175,   177,   177,
        !           611:      177,   177,   183,   189,   191,   194,   196,   200,   201,   204,
        !           612:      207,   209,   212,   214,   217,   219,   223,   224,   228,   229,
        !           613:      232,   234,   237,   239,   242,   244,   247,   250,   252,   254,
        !           614:      256,   258,   260,   262,   283,   290,   297,   303,   309,   314,
        !           615:      318,   322,   326,   333,   340,   344,   349,   363,   365,   367,
        !           616:      369,   382,   392,   395,   397,   399,   401,   403,   405,   407,
        !           617:      409,   411,   413,   415,   417,   419,   421,   423,   425,   427,
        !           618:      429,   431,   433,   435,   437,   439,   441,   443,   445,   447,
        !           619:      449,   451,   453,   455,   457
        !           620: };
        !           621: #endif
        !           622:
        !           623: #if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
        !           624: /* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
        !           625:    First, the terminals, then, starting at YYNTOKENS, nonterminals.  */
        !           626: static const char *const yytname[] =
        !           627: {
        !           628:   "$end", "error", "$undefined", "STRUCT", "POINT", "NEWSTRUCT", "ANS",
        !           629:   "FDEF", "PFDEF", "MODDEF", "MODEND", "GLOBAL", "MGLOBAL", "LOCAL",
        !           630:   "LOCALF", "CMP", "OR", "AND", "CAR", "CDR", "QUOTED", "COLONCOLON", "DO",
        !           631:   "WHILE", "FOR", "IF", "ELSE", "BREAK", "RETURN", "CONTINUE", "PARIF",
        !           632:   "MAP", "RECMAP", "TIMER", "GF2NGEN", "GFPNGEN", "GFSNGEN", "GETOPT",
        !           633:   "FOP_AND", "FOP_OR", "FOP_IMPL", "FOP_REPL", "FOP_EQUIV", "FOP_NOT",
        !           634:   "LOP", "FORMULA", "UCASE", "LCASE", "STR", "SELF", "BOPASS", "'+'",
        !           635:   "'-'", "'*'", "'/'", "'^'", "'%'", "'='", "'?'", "':'", "'`'", "'&'",
        !           636:   "PLUS", "MINUS", "'!'", "'{'", "'}'", "'('", "')'", "';'", "'$'", "','",
        !           637:   "'|'", "'['", "']'", "'<'", "'>'", "$accept", "start", "stat", "$@1",
        !           638:   "$@2", "$@3", "$@4", "$@5", "$@6", "$@7", "$@8", "$@9", "tail", "desc",
        !           639:   "complex", "members", "vars", "pvars", "stats", "node", "_node",
        !           640:   "optlist", "rawstr", "opt", "pexpr", "expr", 0
        !           641: };
        !           642: #endif
        !           643:
        !           644: # ifdef YYPRINT
        !           645: /* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
        !           646:    token YYLEX-NUM.  */
        !           647: static const yytype_uint16 yytoknum[] =
        !           648: {
        !           649:        0,   256,   257,   258,   259,   260,   261,   262,   263,   264,
        !           650:      265,   266,   267,   268,   269,   270,   271,   272,   273,   274,
        !           651:      275,   276,   277,   278,   279,   280,   281,   282,   283,   284,
        !           652:      285,   286,   287,   288,   289,   290,   291,   292,   293,   294,
        !           653:      295,   296,   297,   298,   299,   300,   301,   302,   303,   304,
        !           654:      305,    43,    45,    42,    47,    94,    37,    61,    63,    58,
        !           655:       96,    38,   306,   307,    33,   123,   125,    40,    41,    59,
        !           656:       36,    44,   124,    91,    93,    60,    62
        !           657: };
        !           658: # endif
        !           659:
        !           660: /* YYR1[YYN] -- Symbol number of symbol that rule YYN derives.  */
        !           661: static const yytype_uint8 yyr1[] =
        !           662: {
        !           663:        0,    77,    78,    79,    80,    81,    79,    82,    83,    79,
        !           664:       84,    85,    79,    79,    79,    79,    79,    79,    79,    79,
        !           665:       79,    79,    79,    79,    79,    79,    79,    79,    86,    87,
        !           666:       88,    79,    79,    79,    79,    89,    89,    90,    90,    91,
        !           667:       92,    92,    93,    93,    94,    94,    95,    95,    96,    96,
        !           668:       97,    97,    98,    98,    99,    99,   100,   101,   101,   101,
        !           669:      101,   101,   101,   101,   101,   101,   101,   101,   101,   101,
        !           670:      101,   101,   101,   101,   101,   101,   101,   101,   101,   101,
        !           671:      101,   101,   101,   102,   102,   102,   102,   102,   102,   102,
        !           672:      102,   102,   102,   102,   102,   102,   102,   102,   102,   102,
        !           673:      102,   102,   102,   102,   102,   102,   102,   102,   102,   102,
        !           674:      102,   102,   102,   102,   102
        !           675: };
        !           676:
        !           677: /* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN.  */
        !           678: static const yytype_uint8 yyr2[] =
        !           679: {
        !           680:        0,     2,     1,     1,     0,     0,     5,     0,     0,     5,
        !           681:        0,     0,     5,     3,     6,     2,     1,     2,     2,     2,
        !           682:        3,     5,     7,     9,     5,     7,     8,     6,     0,     0,
        !           683:        0,    12,     3,     2,     2,     1,     1,     0,     1,     3,
        !           684:        1,     3,     1,     3,     1,     3,     0,     2,     0,     1,
        !           685:        1,     3,     1,     3,     1,     1,     3,     1,     1,     1,
        !           686:        1,     1,     1,     1,     4,     6,     6,     6,     7,     4,
        !           687:        3,     8,     4,     6,     7,     9,     4,     4,     4,     3,
        !           688:        1,     4,     3,     1,     5,     3,     3,     2,     2,     3,
        !           689:        2,     2,     3,     3,     3,     3,     3,     3,     3,     2,
        !           690:        3,     3,     2,     3,     3,     3,     3,     3,     3,     5,
        !           691:        3,     4,     4,     5,     2
        !           692: };
        !           693:
        !           694: /* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
        !           695:    STATE-NUM when YYTABLE doesn't specify something else to do.  Zero
        !           696:    means the default is an error.  */
        !           697: static const yytype_uint8 yydefact[] =
        !           698: {
        !           699:        0,     0,     0,     0,    59,     0,     0,     0,     0,     4,
        !           700:        7,    10,     0,     0,     0,     0,     0,     0,     0,     0,
        !           701:        0,     0,     0,     0,     0,     0,     0,    60,    61,    62,
        !           702:        0,     0,    58,    80,    63,    57,     0,     0,     0,     0,
        !           703:        0,    46,     0,    35,    36,    48,    48,     0,     2,     3,
        !           704:       16,    83,     0,    34,    54,    55,     0,     0,    28,     0,
        !           705:        0,    33,     0,     0,     0,    42,     0,     0,     0,     0,
        !           706:        0,    48,    48,    48,    17,    63,    19,     0,    18,     0,
        !           707:        0,     0,     0,     0,   102,    48,    48,    48,    88,    90,
        !           708:       91,   114,    99,     0,     0,     0,     0,     0,    49,    50,
        !           709:        0,     1,     0,     0,     0,     0,     0,     0,     0,     0,
        !           710:        0,     0,     0,    87,     0,     0,     0,     0,     0,     0,
        !           711:        0,     0,     0,    15,     0,     0,     0,    48,    32,    44,
        !           712:        5,     8,    11,     0,    13,     0,     0,     0,     0,     0,
        !           713:        0,     0,    48,    20,     0,     0,     0,     0,    70,     0,
        !           714:        0,     0,     0,    39,    47,     0,     0,    79,     0,    89,
        !           715:        0,   110,    82,     0,    98,   100,   101,   103,   104,   105,
        !           716:      106,   107,   108,    86,    92,    93,    94,    95,    97,    96,
        !           717:       85,     0,     0,    40,   111,    29,     0,     0,     0,     0,
        !           718:        0,    43,    77,    78,   112,    48,     0,    48,     0,     0,
        !           719:       72,    48,    48,    48,     0,    69,    76,     0,    64,     0,
        !           720:        0,     0,     0,    51,    81,     0,     0,     0,    48,     0,
        !           721:       45,     6,     9,    12,     0,    24,     0,    21,    64,     0,
        !           722:        0,     0,     0,    48,     0,     0,     0,    52,     0,    84,
        !           723:       48,   113,   109,    14,    41,    30,    27,     0,    48,     0,
        !           724:       73,    66,    67,     0,     0,     0,    65,     0,     0,     0,
        !           725:        0,    25,     0,    22,     0,    68,     0,    53,    56,    74,
        !           726:        0,    37,     0,    71,    26,     0,    38,     0,    23,    75,
        !           727:       46,     0,    31
        !           728: };
        !           729:
        !           730: /* YYDEFGOTO[NTERM-NUM].  */
        !           731: static const yytype_int16 yydefgoto[] =
        !           732: {
        !           733:       -1,    47,   154,    62,   188,    63,   189,    64,   190,   126,
        !           734:      218,   260,    49,   277,    50,   182,    66,   130,    93,    97,
        !           735:       98,   235,   236,   237,    51,    99
        !           736: };
        !           737:
        !           738: /* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
        !           739:    STATE-NUM.  */
        !           740: #define YYPACT_NINF -65
        !           741: static const yytype_int16 yypact[] =
        !           742: {
        !           743:      476,   -36,    83,   -64,   -65,   -27,     3,    18,   -36,   -65,
        !           744:      -65,   -65,    26,    13,    21,    24,   476,    35,    60,    64,
        !           745:      -36,   597,   -36,    68,    71,    72,    74,   -65,   -65,   -65,
        !           746:       75,   707,   -65,    76,    25,   -65,   707,   707,   707,   707,
        !           747:      707,   -65,   547,   -65,   -65,   707,   707,   137,   -65,   -65,
        !           748:      -65,    -2,   864,   -65,   -65,   -65,    79,    83,   -65,    78,
        !           749:      -36,   -65,   100,   100,   100,   -65,   -12,   707,   707,   707,
        !           750:      124,   707,   707,   707,   -65,    58,   -65,   864,   -65,   101,
        !           751:      102,   104,   707,   -33,  1184,   707,   707,   707,   106,   -26,
        !           752:      -26,  1184,   106,   334,    83,   707,   908,    54,    85,  1124,
        !           753:       81,   -65,    83,   707,   707,   707,   707,   707,   707,   707,
        !           754:      707,   707,   707,   -65,   707,   707,   707,   707,   707,   707,
        !           755:      707,   707,   707,   -65,    83,    91,   105,   707,   -65,   -65,
        !           756:      103,   103,   103,   126,   -65,   939,   970,  1001,   111,   115,
        !           757:      116,   127,   707,   -65,   -17,   129,   131,   776,   -65,   140,
        !           758:      141,   144,   -53,   -65,   -65,   143,  1032,   -65,   707,   -65,
        !           759:      707,   -65,   -65,   260,    23,   273,   135,  1228,   210,  1203,
        !           760:      190,    45,    -8,  1124,   -26,   -26,   -45,   -45,   -45,   -45,
        !           761:     1124,  1094,   -60,   -65,   -65,   -65,   145,   157,   -36,   -36,
        !           762:      -36,   -65,   -65,   -65,   -65,   707,   476,   707,   476,   -50,
        !           763:      -65,   707,   707,   707,   707,   -65,   -65,   147,   153,    83,
        !           764:      134,   149,   745,  1124,   -65,   707,   -36,    83,   707,   -36,
        !           765:      -65,   -65,   -65,   -65,   150,   -65,   152,   193,   -65,   154,
        !           766:      156,   163,   820,   707,   176,   -16,   178,   -65,   657,    -2,
        !           767:      707,   -65,  1154,   -65,   -65,   -65,   -65,   -36,   707,   476,
        !           768:      -65,   -65,   -65,   707,   168,   707,   -65,    83,   707,   -19,
        !           769:      169,   -65,   172,   -65,  1063,   -65,   864,   -65,  1124,   -65,
        !           770:       83,   204,   476,   -65,   -65,    -5,   -65,   191,   -65,   -65,
        !           771:      -65,   405,   -65
        !           772: };
        !           773:
        !           774: /* YYPGOTO[NTERM-NUM].  */
        !           775: static const yytype_int8 yypgoto[] =
        !           776: {
        !           777:      -65,   -65,     1,   -65,   -65,   -65,   -65,   -65,   -65,   -65,
        !           778:      -65,   -65,     4,   -65,   -65,   -65,   -65,    70,   -23,    90,
        !           779:      -65,   -10,    30,    10,    59,     0
        !           780: };
        !           781:
        !           782: /* YYTABLE[YYPACT[STATE-NUM]].  What to do in state STATE-NUM.  If
        !           783:    positive, shift that token.  If negative, reduce the rule which
        !           784:    number is the opposite.  If zero, do what YYDEFACT says.
        !           785:    If YYTABLE_NINF, syntax error.  */
        !           786: #define YYTABLE_NINF -1
        !           787: static const yytype_uint16 yytable[] =
        !           788: {
        !           789:       52,    48,   102,    57,   113,    53,   216,   104,   105,   106,
        !           790:      119,   217,    61,    54,    55,   208,    52,    70,   228,   209,
        !           791:       58,    77,   209,   113,    74,    76,    78,   117,   118,   119,
        !           792:      120,    84,    56,    43,    44,   148,    88,    89,    90,    91,
        !           793:       92,   113,    96,   115,   116,   117,   118,   119,   120,   269,
        !           794:       59,   200,   256,   270,   201,   257,   123,    43,    44,   133,
        !           795:      104,   105,   106,   279,   128,    60,   257,   135,   136,   137,
        !           796:      134,   103,   113,    65,   115,   116,   117,   118,   119,   120,
        !           797:       67,   143,   147,   107,   108,   109,   110,   125,    68,   112,
        !           798:       86,    69,    87,    52,   113,   156,   115,   116,   117,   118,
        !           799:      119,   120,    71,   163,   164,   165,   166,   167,   168,   169,
        !           800:      170,   171,   172,   149,   173,   174,   175,   176,   177,   178,
        !           801:      179,   180,   181,    86,   155,   142,   158,    72,   159,    54,
        !           802:       55,    73,   162,   131,   132,    79,   100,   101,    80,    81,
        !           803:        4,    82,    83,    85,   124,   127,   129,   138,   144,   145,
        !           804:      104,   146,    13,    14,   183,   113,   160,   161,   212,   184,
        !           805:      213,   139,   140,   141,    23,    24,    25,    26,    27,    28,
        !           806:       29,    30,   185,   191,   187,   150,   151,   152,   195,    32,
        !           807:       33,    75,    35,   196,   113,   197,   115,   116,   117,   118,
        !           808:      119,   120,   221,   222,   223,   198,    52,   225,    52,   227,
        !           809:      202,   238,   203,   220,   232,   104,   105,   106,   205,   206,
        !           810:      207,   210,   234,   219,   233,   242,   240,   186,   247,   249,
        !           811:      243,   248,   250,   246,   251,   104,   105,   106,   107,   108,
        !           812:      109,   252,   199,   255,   112,   258,   265,   271,    96,   113,
        !           813:      272,   115,   116,   117,   118,   119,   120,   244,   107,    52,
        !           814:      263,   261,   276,   264,   112,   266,   280,   281,   268,   113,
        !           815:      275,   115,   116,   117,   118,   119,   120,   267,     0,   239,
        !           816:      274,     0,    52,   278,     0,   104,   105,   106,     0,     0,
        !           817:        0,    52,     0,     0,     0,   224,     0,   226,   104,     0,
        !           818:      106,   229,   230,   231,     0,     0,     0,     0,   107,   108,
        !           819:      109,   110,   111,     0,   112,     0,     0,     0,   245,   113,
        !           820:      114,   115,   116,   117,   118,   119,   120,   121,   122,     0,
        !           821:        0,     0,   113,   254,   115,   116,   117,   118,   119,   120,
        !           822:      259,     0,     0,     0,   214,     1,     0,     2,   262,     3,
        !           823:        4,     5,     6,     7,     8,     9,    10,    11,    12,     0,
        !           824:        0,     0,    13,    14,    15,     0,    16,    17,    18,    19,
        !           825:        0,    20,    21,    22,    23,    24,    25,    26,    27,    28,
        !           826:       29,    30,     0,     0,     0,     0,     0,    31,     0,    32,
        !           827:       33,    34,    35,    36,     0,    37,    38,     0,     0,     0,
        !           828:        0,     0,     0,     0,    39,     0,     0,     0,    40,    41,
        !           829:      153,    42,     0,    43,    44,     0,     1,    45,     2,    46,
        !           830:        3,     4,     5,     6,     7,     8,     9,    10,    11,    12,
        !           831:        0,     0,     0,    13,    14,    15,     0,    16,    17,    18,
        !           832:       19,     0,    20,    21,    22,    23,    24,    25,    26,    27,
        !           833:       28,    29,    30,     0,     0,     0,     0,     0,    31,     0,
        !           834:       32,    33,    34,    35,    36,     0,    37,    38,     0,     0,
        !           835:        0,     0,     0,     0,     0,    39,     0,     0,     0,    40,
        !           836:       41,   282,    42,     0,    43,    44,     0,     1,    45,     2,
        !           837:       46,     3,     4,     5,     6,     7,     8,     9,    10,    11,
        !           838:       12,     0,     0,     0,    13,    14,    15,     0,    16,    17,
        !           839:       18,    19,     0,    20,    21,    22,    23,    24,    25,    26,
        !           840:       27,    28,    29,    30,     0,     0,     0,     0,     0,    31,
        !           841:        0,    32,    33,    34,    35,    36,     0,    37,    38,     0,
        !           842:        0,     0,     0,     0,     0,     0,    39,     0,     0,     0,
        !           843:       40,    41,     0,    42,     0,    43,    44,     0,     0,    45,
        !           844:       94,    46,     3,     4,     0,     0,     0,     0,     0,     0,
        !           845:        0,     0,     0,     0,     0,    13,    14,    15,     0,     0,
        !           846:        0,     0,     0,     0,     0,     0,     0,    23,    24,    25,
        !           847:       26,    27,    28,    29,    30,     0,     0,     0,     0,     0,
        !           848:       31,     0,    32,    33,    75,    35,    36,     0,    37,    38,
        !           849:       95,     0,     3,     4,     0,     0,     0,    39,     0,     0,
        !           850:        0,    40,     0,     0,    42,    13,    14,    15,     0,     0,
        !           851:       45,     0,    46,     0,     0,     0,     0,    23,    24,    25,
        !           852:       26,    27,    28,    29,    30,     0,     0,     0,     0,     0,
        !           853:       31,     0,    32,    33,    75,    35,    36,     0,    37,    38,
        !           854:        0,     0,     0,     0,     0,     0,     0,    39,     0,     0,
        !           855:        0,    40,     3,     4,    42,     0,    43,    44,     0,     0,
        !           856:       45,     0,    46,     0,     0,    13,    14,    15,     0,     0,
        !           857:        0,     0,     0,     0,     0,     0,     0,    23,    24,    25,
        !           858:       26,    27,    28,    29,    30,     0,     0,     0,     0,     0,
        !           859:       31,     0,    32,    33,    75,    35,    36,     0,    37,    38,
        !           860:       95,     0,     3,     4,     0,     0,     0,    39,     0,     0,
        !           861:        0,    40,     0,     0,    42,    13,    14,    15,     0,     0,
        !           862:       45,     0,    46,     0,     0,     0,     0,    23,    24,    25,
        !           863:       26,    27,    28,    29,    30,     0,     0,     0,     0,     0,
        !           864:       31,     0,    32,    33,    75,    35,    36,     0,    37,    38,
        !           865:      104,   105,   106,     0,     0,     0,     0,    39,     0,     0,
        !           866:        0,    40,     0,     0,    42,     0,     0,     0,     0,     0,
        !           867:       45,     0,    46,   107,   108,   109,   110,   111,     0,   112,
        !           868:        0,   104,   105,   106,   113,   114,   115,   116,   117,   118,
        !           869:      119,   120,   121,   122,     0,     0,     0,     0,     0,     0,
        !           870:        0,     0,     0,     0,   107,   108,   109,   110,   111,   241,
        !           871:      112,     0,     0,     0,     0,   113,   114,   115,   116,   117,
        !           872:      118,   119,   120,   121,   122,   104,   105,   106,     0,     0,
        !           873:        0,     0,     0,     0,     0,     0,     0,   204,     0,     0,
        !           874:        0,     0,     0,     0,     0,     0,     0,     0,   107,   108,
        !           875:      109,   110,   111,     0,   112,     0,     0,     0,     0,   113,
        !           876:      114,   115,   116,   117,   118,   119,   120,   121,   122,   104,
        !           877:      105,   106,     0,     0,     0,     0,     0,     0,     0,     0,
        !           878:        0,   253,     0,     0,     0,     0,     0,     0,     0,     0,
        !           879:        0,     0,   107,   108,   109,   110,   111,     0,   112,     0,
        !           880:        0,     0,     0,   113,   114,   115,   116,   117,   118,   119,
        !           881:      120,   121,   122,   104,   105,   106,     0,     0,     0,     0,
        !           882:        0,     0,     0,    43,    44,     0,     0,     0,     0,     0,
        !           883:        0,     0,     0,     0,     0,     0,   107,   108,   109,   110,
        !           884:      111,     0,   112,     0,   104,   105,   106,   113,   114,   115,
        !           885:      116,   117,   118,   119,   120,   121,   122,     0,     0,     0,
        !           886:        0,     0,     0,     0,     0,     0,   157,   107,   108,   109,
        !           887:      110,   111,     0,   112,     0,   104,   105,   106,   113,   114,
        !           888:      115,   116,   117,   118,   119,   120,   121,   122,     0,     0,
        !           889:        0,     0,     0,     0,     0,     0,     0,   192,   107,   108,
        !           890:      109,   110,   111,     0,   112,     0,   104,   105,   106,   113,
        !           891:      114,   115,   116,   117,   118,   119,   120,   121,   122,     0,
        !           892:        0,     0,     0,     0,     0,     0,     0,     0,   193,   107,
        !           893:      108,   109,   110,   111,     0,   112,     0,   104,   105,   106,
        !           894:      113,   114,   115,   116,   117,   118,   119,   120,   121,   122,
        !           895:        0,     0,     0,     0,     0,     0,     0,     0,     0,   194,
        !           896:      107,   108,   109,   110,   111,     0,   112,     0,   104,   105,
        !           897:      106,   113,   114,   115,   116,   117,   118,   119,   120,   121,
        !           898:      122,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        !           899:      211,   107,   108,   109,   110,   111,     0,   112,     0,   104,
        !           900:      105,   106,   113,   114,   115,   116,   117,   118,   119,   120,
        !           901:      121,   122,     0,     0,     0,     0,     0,     0,     0,     0,
        !           902:        0,   273,   107,   108,   109,   110,   111,     0,   112,   104,
        !           903:      105,   106,     0,   113,   114,   115,   116,   117,   118,   119,
        !           904:      120,   121,   122,   215,     0,     0,     0,     0,     0,     0,
        !           905:        0,     0,   107,   108,   109,   110,   111,     0,   112,   104,
        !           906:      105,   106,     0,   113,   114,   115,   116,   117,   118,   119,
        !           907:      120,   121,   122,     0,     0,     0,     0,     0,     0,     0,
        !           908:        0,     0,   107,   108,   109,   110,   111,     0,   112,   104,
        !           909:      105,   106,     0,   113,     0,   115,   116,   117,   118,   119,
        !           910:      120,     0,   122,     0,     0,     0,     0,     0,   104,   105,
        !           911:      106,     0,   107,   108,   109,   110,   111,     0,   112,     0,
        !           912:        0,     0,     0,   113,     0,   115,   116,   117,   118,   119,
        !           913:      120,   107,   108,   104,   105,   106,     0,   112,     0,     0,
        !           914:        0,     0,   113,     0,   115,   116,   117,   118,   119,   120,
        !           915:        0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
        !           916:        0,     0,   112,     0,     0,     0,     0,   113,     0,   115,
        !           917:      116,   117,   118,   119,   120
        !           918: };
        !           919:
        !           920: static const yytype_int16 yycheck[] =
        !           921: {
        !           922:        0,     0,     4,    67,    49,     1,    66,    15,    16,    17,
        !           923:       55,    71,     8,    46,    47,    68,    16,    16,    68,    72,
        !           924:       47,    21,    72,    49,    20,    21,    22,    53,    54,    55,
        !           925:       56,    31,     2,    69,    70,    68,    36,    37,    38,    39,
        !           926:       40,    49,    42,    51,    52,    53,    54,    55,    56,    68,
        !           927:       47,    68,    68,    72,    71,    71,    52,    69,    70,    71,
        !           928:       15,    16,    17,    68,    60,    47,    71,    67,    68,    69,
        !           929:       66,    73,    49,    47,    51,    52,    53,    54,    55,    56,
        !           930:       67,    77,    82,    38,    39,    40,    41,    57,    67,    44,
        !           931:       65,    67,    67,    93,    49,    95,    51,    52,    53,    54,
        !           932:       55,    56,    67,   103,   104,   105,   106,   107,   108,   109,
        !           933:      110,   111,   112,    83,   114,   115,   116,   117,   118,   119,
        !           934:      120,   121,   122,    65,    94,    67,    72,    67,    74,    46,
        !           935:       47,    67,   102,    63,    64,    67,    46,     0,    67,    67,
        !           936:        6,    67,    67,    67,    65,    67,    46,    23,    47,    47,
        !           937:       15,    47,    18,    19,   124,    49,    71,    76,   158,    68,
        !           938:      160,    71,    72,    73,    30,    31,    32,    33,    34,    35,
        !           939:       36,    37,    67,    47,    71,    85,    86,    87,    67,    45,
        !           940:       46,    47,    48,    68,    49,    69,    51,    52,    53,    54,
        !           941:       55,    56,   188,   189,   190,    68,   196,   196,   198,   198,
        !           942:       71,    67,    71,    46,   204,    15,    16,    17,    68,    68,
        !           943:       66,    68,    59,    68,    67,   215,    67,   127,    68,    26,
        !           944:      216,    69,    68,   219,    68,    15,    16,    17,    38,    39,
        !           945:       40,    68,   142,    57,    44,    57,    68,    68,   238,    49,
        !           946:       68,    51,    52,    53,    54,    55,    56,   217,    38,   249,
        !           947:      249,   247,    48,   253,    44,   255,    65,   280,   258,    49,
        !           948:      270,    51,    52,    53,    54,    55,    56,   257,    -1,   210,
        !           949:      266,    -1,   272,   272,    -1,    15,    16,    17,    -1,    -1,
        !           950:       -1,   281,    -1,    -1,    -1,   195,    -1,   197,    15,    -1,
        !           951:       17,   201,   202,   203,    -1,    -1,    -1,    -1,    38,    39,
        !           952:       40,    41,    42,    -1,    44,    -1,    -1,    -1,   218,    49,
        !           953:       50,    51,    52,    53,    54,    55,    56,    57,    58,    -1,
        !           954:       -1,    -1,    49,   233,    51,    52,    53,    54,    55,    56,
        !           955:      240,    -1,    -1,    -1,    74,     1,    -1,     3,   248,     5,
        !           956:        6,     7,     8,     9,    10,    11,    12,    13,    14,    -1,
        !           957:       -1,    -1,    18,    19,    20,    -1,    22,    23,    24,    25,
        !           958:       -1,    27,    28,    29,    30,    31,    32,    33,    34,    35,
        !           959:       36,    37,    -1,    -1,    -1,    -1,    -1,    43,    -1,    45,
        !           960:       46,    47,    48,    49,    -1,    51,    52,    -1,    -1,    -1,
        !           961:       -1,    -1,    -1,    -1,    60,    -1,    -1,    -1,    64,    65,
        !           962:       66,    67,    -1,    69,    70,    -1,     1,    73,     3,    75,
        !           963:        5,     6,     7,     8,     9,    10,    11,    12,    13,    14,
        !           964:       -1,    -1,    -1,    18,    19,    20,    -1,    22,    23,    24,
        !           965:       25,    -1,    27,    28,    29,    30,    31,    32,    33,    34,
        !           966:       35,    36,    37,    -1,    -1,    -1,    -1,    -1,    43,    -1,
        !           967:       45,    46,    47,    48,    49,    -1,    51,    52,    -1,    -1,
        !           968:       -1,    -1,    -1,    -1,    -1,    60,    -1,    -1,    -1,    64,
        !           969:       65,    66,    67,    -1,    69,    70,    -1,     1,    73,     3,
        !           970:       75,     5,     6,     7,     8,     9,    10,    11,    12,    13,
        !           971:       14,    -1,    -1,    -1,    18,    19,    20,    -1,    22,    23,
        !           972:       24,    25,    -1,    27,    28,    29,    30,    31,    32,    33,
        !           973:       34,    35,    36,    37,    -1,    -1,    -1,    -1,    -1,    43,
        !           974:       -1,    45,    46,    47,    48,    49,    -1,    51,    52,    -1,
        !           975:       -1,    -1,    -1,    -1,    -1,    -1,    60,    -1,    -1,    -1,
        !           976:       64,    65,    -1,    67,    -1,    69,    70,    -1,    -1,    73,
        !           977:        3,    75,     5,     6,    -1,    -1,    -1,    -1,    -1,    -1,
        !           978:       -1,    -1,    -1,    -1,    -1,    18,    19,    20,    -1,    -1,
        !           979:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    30,    31,    32,
        !           980:       33,    34,    35,    36,    37,    -1,    -1,    -1,    -1,    -1,
        !           981:       43,    -1,    45,    46,    47,    48,    49,    -1,    51,    52,
        !           982:       53,    -1,     5,     6,    -1,    -1,    -1,    60,    -1,    -1,
        !           983:       -1,    64,    -1,    -1,    67,    18,    19,    20,    -1,    -1,
        !           984:       73,    -1,    75,    -1,    -1,    -1,    -1,    30,    31,    32,
        !           985:       33,    34,    35,    36,    37,    -1,    -1,    -1,    -1,    -1,
        !           986:       43,    -1,    45,    46,    47,    48,    49,    -1,    51,    52,
        !           987:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    60,    -1,    -1,
        !           988:       -1,    64,     5,     6,    67,    -1,    69,    70,    -1,    -1,
        !           989:       73,    -1,    75,    -1,    -1,    18,    19,    20,    -1,    -1,
        !           990:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    30,    31,    32,
        !           991:       33,    34,    35,    36,    37,    -1,    -1,    -1,    -1,    -1,
        !           992:       43,    -1,    45,    46,    47,    48,    49,    -1,    51,    52,
        !           993:       53,    -1,     5,     6,    -1,    -1,    -1,    60,    -1,    -1,
        !           994:       -1,    64,    -1,    -1,    67,    18,    19,    20,    -1,    -1,
        !           995:       73,    -1,    75,    -1,    -1,    -1,    -1,    30,    31,    32,
        !           996:       33,    34,    35,    36,    37,    -1,    -1,    -1,    -1,    -1,
        !           997:       43,    -1,    45,    46,    47,    48,    49,    -1,    51,    52,
        !           998:       15,    16,    17,    -1,    -1,    -1,    -1,    60,    -1,    -1,
        !           999:       -1,    64,    -1,    -1,    67,    -1,    -1,    -1,    -1,    -1,
        !          1000:       73,    -1,    75,    38,    39,    40,    41,    42,    -1,    44,
        !          1001:       -1,    15,    16,    17,    49,    50,    51,    52,    53,    54,
        !          1002:       55,    56,    57,    58,    -1,    -1,    -1,    -1,    -1,    -1,
        !          1003:       -1,    -1,    -1,    -1,    38,    39,    40,    41,    42,    74,
        !          1004:       44,    -1,    -1,    -1,    -1,    49,    50,    51,    52,    53,
        !          1005:       54,    55,    56,    57,    58,    15,    16,    17,    -1,    -1,
        !          1006:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    71,    -1,    -1,
        !          1007:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    38,    39,
        !          1008:       40,    41,    42,    -1,    44,    -1,    -1,    -1,    -1,    49,
        !          1009:       50,    51,    52,    53,    54,    55,    56,    57,    58,    15,
        !          1010:       16,    17,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        !          1011:       -1,    71,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        !          1012:       -1,    -1,    38,    39,    40,    41,    42,    -1,    44,    -1,
        !          1013:       -1,    -1,    -1,    49,    50,    51,    52,    53,    54,    55,
        !          1014:       56,    57,    58,    15,    16,    17,    -1,    -1,    -1,    -1,
        !          1015:       -1,    -1,    -1,    69,    70,    -1,    -1,    -1,    -1,    -1,
        !          1016:       -1,    -1,    -1,    -1,    -1,    -1,    38,    39,    40,    41,
        !          1017:       42,    -1,    44,    -1,    15,    16,    17,    49,    50,    51,
        !          1018:       52,    53,    54,    55,    56,    57,    58,    -1,    -1,    -1,
        !          1019:       -1,    -1,    -1,    -1,    -1,    -1,    68,    38,    39,    40,
        !          1020:       41,    42,    -1,    44,    -1,    15,    16,    17,    49,    50,
        !          1021:       51,    52,    53,    54,    55,    56,    57,    58,    -1,    -1,
        !          1022:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    68,    38,    39,
        !          1023:       40,    41,    42,    -1,    44,    -1,    15,    16,    17,    49,
        !          1024:       50,    51,    52,    53,    54,    55,    56,    57,    58,    -1,
        !          1025:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    68,    38,
        !          1026:       39,    40,    41,    42,    -1,    44,    -1,    15,    16,    17,
        !          1027:       49,    50,    51,    52,    53,    54,    55,    56,    57,    58,
        !          1028:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    68,
        !          1029:       38,    39,    40,    41,    42,    -1,    44,    -1,    15,    16,
        !          1030:       17,    49,    50,    51,    52,    53,    54,    55,    56,    57,
        !          1031:       58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        !          1032:       68,    38,    39,    40,    41,    42,    -1,    44,    -1,    15,
        !          1033:       16,    17,    49,    50,    51,    52,    53,    54,    55,    56,
        !          1034:       57,    58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        !          1035:       -1,    68,    38,    39,    40,    41,    42,    -1,    44,    15,
        !          1036:       16,    17,    -1,    49,    50,    51,    52,    53,    54,    55,
        !          1037:       56,    57,    58,    59,    -1,    -1,    -1,    -1,    -1,    -1,
        !          1038:       -1,    -1,    38,    39,    40,    41,    42,    -1,    44,    15,
        !          1039:       16,    17,    -1,    49,    50,    51,    52,    53,    54,    55,
        !          1040:       56,    57,    58,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        !          1041:       -1,    -1,    38,    39,    40,    41,    42,    -1,    44,    15,
        !          1042:       16,    17,    -1,    49,    -1,    51,    52,    53,    54,    55,
        !          1043:       56,    -1,    58,    -1,    -1,    -1,    -1,    -1,    15,    16,
        !          1044:       17,    -1,    38,    39,    40,    41,    42,    -1,    44,    -1,
        !          1045:       -1,    -1,    -1,    49,    -1,    51,    52,    53,    54,    55,
        !          1046:       56,    38,    39,    15,    16,    17,    -1,    44,    -1,    -1,
        !          1047:       -1,    -1,    49,    -1,    51,    52,    53,    54,    55,    56,
        !          1048:       -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,    -1,
        !          1049:       -1,    -1,    44,    -1,    -1,    -1,    -1,    49,    -1,    51,
        !          1050:       52,    53,    54,    55,    56
        !          1051: };
        !          1052:
        !          1053: /* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
        !          1054:    symbol of state STATE-NUM.  */
        !          1055: static const yytype_uint8 yystos[] =
        !          1056: {
        !          1057:        0,     1,     3,     5,     6,     7,     8,     9,    10,    11,
        !          1058:       12,    13,    14,    18,    19,    20,    22,    23,    24,    25,
        !          1059:       27,    28,    29,    30,    31,    32,    33,    34,    35,    36,
        !          1060:       37,    43,    45,    46,    47,    48,    49,    51,    52,    60,
        !          1061:       64,    65,    67,    69,    70,    73,    75,    78,    79,    89,
        !          1062:       91,   101,   102,    89,    46,    47,    99,    67,    47,    47,
        !          1063:       47,    89,    80,    82,    84,    47,    93,    67,    67,    67,
        !          1064:       79,    67,    67,    67,    89,    47,    89,   102,    89,    67,
        !          1065:       67,    67,    67,    67,   102,    67,    65,    67,   102,   102,
        !          1066:      102,   102,   102,    95,     3,    53,   102,    96,    97,   102,
        !          1067:       96,     0,     4,    73,    15,    16,    17,    38,    39,    40,
        !          1068:       41,    42,    44,    49,    50,    51,    52,    53,    54,    55,
        !          1069:       56,    57,    58,    89,    65,    99,    86,    67,    89,    46,
        !          1070:       94,    94,    94,    71,    89,   102,   102,   102,    23,    96,
        !          1071:       96,    96,    67,    89,    47,    47,    47,   102,    68,    99,
        !          1072:       96,    96,    96,    66,    79,    99,   102,    68,    72,    74,
        !          1073:       71,    76,    99,   102,   102,   102,   102,   102,   102,   102,
        !          1074:      102,   102,   102,   102,   102,   102,   102,   102,   102,   102,
        !          1075:      102,   102,    92,    99,    68,    67,    96,    71,    81,    83,
        !          1076:       85,    47,    68,    68,    68,    67,    68,    69,    68,    96,
        !          1077:       68,    71,    71,    71,    71,    68,    68,    66,    68,    72,
        !          1078:       68,    68,   102,   102,    74,    59,    66,    71,    87,    68,
        !          1079:       46,    89,    89,    89,    96,    79,    96,    79,    68,    96,
        !          1080:       96,    96,   102,    67,    59,    98,    99,   100,    67,   101,
        !          1081:       67,    74,   102,    89,    99,    96,    89,    68,    69,    26,
        !          1082:       68,    68,    68,    71,    96,    57,    68,    71,    57,    96,
        !          1083:       88,    89,    96,    79,   102,    68,   102,   100,   102,    68,
        !          1084:       72,    68,    68,    68,    89,    98,    48,    90,    79,    68,
        !          1085:       65,    95,    66
        !          1086: };
        !          1087:
        !          1088: #define yyerrok    (yyerrstatus = 0)
        !          1089: #define yyclearin  (yychar = YYEMPTY)
        !          1090: #define YYEMPTY    (-2)
        !          1091: #define YYEOF    0
        !          1092:
        !          1093: #define YYACCEPT  goto yyacceptlab
        !          1094: #define YYABORT    goto yyabortlab
        !          1095: #define YYERROR    goto yyerrorlab
        !          1096:
        !          1097:
        !          1098: /* Like YYERROR except do call yyerror.  This remains here temporarily
        !          1099:    to ease the transition to the new meaning of YYERROR, for GCC.
        !          1100:    Once GCC version 2 has supplanted version 1, this can go.  */
        !          1101:
        !          1102: #define YYFAIL    goto yyerrlab
        !          1103:
        !          1104: #define YYRECOVERING()  (!!yyerrstatus)
        !          1105:
        !          1106: #define YYBACKUP(Token, Value)          \
        !          1107: do                \
        !          1108:   if (yychar == YYEMPTY && yylen == 1)        \
        !          1109:     {                \
        !          1110:       yychar = (Token);            \
        !          1111:       yylval = (Value);            \
        !          1112:       yytoken = YYTRANSLATE (yychar);        \
        !          1113:       YYPOPSTACK (1);            \
        !          1114:       goto yybackup;            \
        !          1115:     }                \
        !          1116:   else                \
        !          1117:     {                \
        !          1118:       yyerror (YY_("syntax error: cannot back up")); \
        !          1119:       YYERROR;              \
        !          1120:     }                \
        !          1121: while (YYID (0))
        !          1122:
        !          1123:
        !          1124: #define YYTERROR  1
        !          1125: #define YYERRCODE  256
        !          1126:
        !          1127:
        !          1128: /* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
        !          1129:    If N is 0, then set CURRENT to the empty location which ends
        !          1130:    the previous symbol: RHS[0] (always defined).  */
        !          1131:
        !          1132: #define YYRHSLOC(Rhs, K) ((Rhs)[K])
        !          1133: #ifndef YYLLOC_DEFAULT
        !          1134: # define YYLLOC_DEFAULT(Current, Rhs, N)        \
        !          1135:     do                  \
        !          1136:       if (YYID (N))                                                    \
        !          1137:   {                \
        !          1138:     (Current).first_line   = YYRHSLOC (Rhs, 1).first_line;  \
        !          1139:     (Current).first_column = YYRHSLOC (Rhs, 1).first_column;  \
        !          1140:     (Current).last_line    = YYRHSLOC (Rhs, N).last_line;    \
        !          1141:     (Current).last_column  = YYRHSLOC (Rhs, N).last_column;  \
        !          1142:   }                \
        !          1143:       else                \
        !          1144:   {                \
        !          1145:     (Current).first_line   = (Current).last_line   =    \
        !          1146:       YYRHSLOC (Rhs, 0).last_line;        \
        !          1147:     (Current).first_column = (Current).last_column =    \
        !          1148:       YYRHSLOC (Rhs, 0).last_column;        \
        !          1149:   }                \
        !          1150:     while (YYID (0))
        !          1151: #endif
        !          1152:
        !          1153:
        !          1154: /* YY_LOCATION_PRINT -- Print the location on the stream.
        !          1155:    This macro was not mandated originally: define only if we know
        !          1156:    we won't break user code: when these are the locations we know.  */
        !          1157:
        !          1158: #ifndef YY_LOCATION_PRINT
        !          1159: # if YYLTYPE_IS_TRIVIAL
        !          1160: #  define YY_LOCATION_PRINT(File, Loc)      \
        !          1161:      fprintf (File, "%d.%d-%d.%d",      \
        !          1162:         (Loc).first_line, (Loc).first_column,  \
        !          1163:         (Loc).last_line,  (Loc).last_column)
        !          1164: # else
        !          1165: #  define YY_LOCATION_PRINT(File, Loc) ((void) 0)
        !          1166: # endif
        !          1167: #endif
        !          1168:
        !          1169:
        !          1170: /* YYLEX -- calling `yylex' with the right arguments.  */
        !          1171:
        !          1172: #ifdef YYLEX_PARAM
        !          1173: # define YYLEX yylex (YYLEX_PARAM)
        !          1174: #else
        !          1175: # define YYLEX yylex ()
        !          1176: #endif
        !          1177:
        !          1178: /* Enable debugging if requested.  */
        !          1179: #if YYDEBUG
        !          1180:
        !          1181: # ifndef YYFPRINTF
        !          1182: #  include <stdio.h> /* INFRINGES ON USER NAME SPACE */
        !          1183: #  define YYFPRINTF fprintf
        !          1184: # endif
        !          1185:
        !          1186: # define YYDPRINTF(Args)      \
        !          1187: do {            \
        !          1188:   if (yydebug)          \
        !          1189:     YYFPRINTF Args;        \
        !          1190: } while (YYID (0))
        !          1191:
        !          1192: # define YY_SYMBOL_PRINT(Title, Type, Value, Location)        \
        !          1193: do {                    \
        !          1194:   if (yydebug)                  \
        !          1195:     {                    \
        !          1196:       YYFPRINTF (stderr, "%s ", Title);            \
        !          1197:       yy_symbol_print (stderr,              \
        !          1198:       Type, Value); \
        !          1199:       YYFPRINTF (stderr, "\n");              \
        !          1200:     }                    \
        !          1201: } while (YYID (0))
        !          1202:
        !          1203:
        !          1204: /*--------------------------------.
        !          1205: | Print this symbol on YYOUTPUT.  |
        !          1206: `--------------------------------*/
        !          1207:
        !          1208: /*ARGSUSED*/
        !          1209: #if (defined __STDC__ || defined __C99__FUNC__ \
        !          1210:      || defined __cplusplus || defined _MSC_VER)
        !          1211: static void
        !          1212: yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
        !          1213: #else
        !          1214: static void
        !          1215: yy_symbol_value_print (yyoutput, yytype, yyvaluep)
        !          1216:     FILE *yyoutput;
        !          1217:     int yytype;
        !          1218:     YYSTYPE const * const yyvaluep;
        !          1219: #endif
        !          1220: {
        !          1221:   if (!yyvaluep)
        !          1222:     return;
        !          1223: # ifdef YYPRINT
        !          1224:   if (yytype < YYNTOKENS)
        !          1225:     YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
        !          1226: # else
        !          1227:   YYUSE (yyoutput);
        !          1228: # endif
        !          1229:   switch (yytype)
        !          1230:     {
        !          1231:       default:
        !          1232:   break;
        !          1233:     }
        !          1234: }
        !          1235:
        !          1236:
        !          1237: /*--------------------------------.
        !          1238: | Print this symbol on YYOUTPUT.  |
        !          1239: `--------------------------------*/
        !          1240:
        !          1241: #if (defined __STDC__ || defined __C99__FUNC__ \
        !          1242:      || defined __cplusplus || defined _MSC_VER)
        !          1243: static void
        !          1244: yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
        !          1245: #else
        !          1246: static void
        !          1247: yy_symbol_print (yyoutput, yytype, yyvaluep)
        !          1248:     FILE *yyoutput;
        !          1249:     int yytype;
        !          1250:     YYSTYPE const * const yyvaluep;
        !          1251: #endif
        !          1252: {
        !          1253:   if (yytype < YYNTOKENS)
        !          1254:     YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
        !          1255:   else
        !          1256:     YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
        !          1257:
        !          1258:   yy_symbol_value_print (yyoutput, yytype, yyvaluep);
        !          1259:   YYFPRINTF (yyoutput, ")");
        !          1260: }
        !          1261:
        !          1262: /*------------------------------------------------------------------.
        !          1263: | yy_stack_print -- Print the state stack from its BOTTOM up to its |
        !          1264: | TOP (included).                                                   |
        !          1265: `------------------------------------------------------------------*/
        !          1266:
        !          1267: #if (defined __STDC__ || defined __C99__FUNC__ \
        !          1268:      || defined __cplusplus || defined _MSC_VER)
        !          1269: static void
        !          1270: yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
        !          1271: #else
        !          1272: static void
        !          1273: yy_stack_print (yybottom, yytop)
        !          1274:     yytype_int16 *yybottom;
        !          1275:     yytype_int16 *yytop;
        !          1276: #endif
        !          1277: {
        !          1278:   YYFPRINTF (stderr, "Stack now");
        !          1279:   for (; yybottom <= yytop; yybottom++)
        !          1280:     {
        !          1281:       int yybot = *yybottom;
        !          1282:       YYFPRINTF (stderr, " %d", yybot);
        !          1283:     }
        !          1284:   YYFPRINTF (stderr, "\n");
        !          1285: }
        !          1286:
        !          1287: # define YY_STACK_PRINT(Bottom, Top)        \
        !          1288: do {                \
        !          1289:   if (yydebug)              \
        !          1290:     yy_stack_print ((Bottom), (Top));        \
        !          1291: } while (YYID (0))
        !          1292:
        !          1293:
        !          1294: /*------------------------------------------------.
        !          1295: | Report that the YYRULE is going to be reduced.  |
        !          1296: `------------------------------------------------*/
        !          1297:
        !          1298: #if (defined __STDC__ || defined __C99__FUNC__ \
        !          1299:      || defined __cplusplus || defined _MSC_VER)
        !          1300: static void
        !          1301: yy_reduce_print (YYSTYPE *yyvsp, int yyrule)
        !          1302: #else
        !          1303: static void
        !          1304: yy_reduce_print (yyvsp, yyrule)
        !          1305:     YYSTYPE *yyvsp;
        !          1306:     int yyrule;
        !          1307: #endif
        !          1308: {
        !          1309:   int yynrhs = yyr2[yyrule];
        !          1310:   int yyi;
        !          1311:   unsigned long int yylno = yyrline[yyrule];
        !          1312:   YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
        !          1313:        yyrule - 1, yylno);
        !          1314:   /* The symbols being reduced.  */
        !          1315:   for (yyi = 0; yyi < yynrhs; yyi++)
        !          1316:     {
        !          1317:       YYFPRINTF (stderr, "   $%d = ", yyi + 1);
        !          1318:       yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
        !          1319:            &(yyvsp[(yyi + 1) - (yynrhs)])
        !          1320:                       );
        !          1321:       YYFPRINTF (stderr, "\n");
        !          1322:     }
        !          1323: }
        !          1324:
        !          1325: # define YY_REDUCE_PRINT(Rule)    \
        !          1326: do {          \
        !          1327:   if (yydebug)        \
        !          1328:     yy_reduce_print (yyvsp, Rule); \
        !          1329: } while (YYID (0))
        !          1330:
        !          1331: /* Nonzero means print parse trace.  It is left uninitialized so that
        !          1332:    multiple parsers can coexist.  */
        !          1333: int yydebug;
        !          1334: #else /* !YYDEBUG */
        !          1335: # define YYDPRINTF(Args)
        !          1336: # define YY_SYMBOL_PRINT(Title, Type, Value, Location)
        !          1337: # define YY_STACK_PRINT(Bottom, Top)
        !          1338: # define YY_REDUCE_PRINT(Rule)
        !          1339: #endif /* !YYDEBUG */
        !          1340:
        !          1341:
        !          1342: /* YYINITDEPTH -- initial size of the parser's stacks.  */
        !          1343: #ifndef  YYINITDEPTH
        !          1344: # define YYINITDEPTH 200
        !          1345: #endif
        !          1346:
        !          1347: /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
        !          1348:    if the built-in stack extension method is used).
        !          1349:
        !          1350:    Do not make this value too large; the results are undefined if
        !          1351:    YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
        !          1352:    evaluated with infinite-precision integer arithmetic.  */
        !          1353:
        !          1354: #ifndef YYMAXDEPTH
        !          1355: # define YYMAXDEPTH 10000
        !          1356: #endif
        !          1357:
        !          1358: 
        !          1359:
        !          1360: #if YYERROR_VERBOSE
        !          1361:
        !          1362: # ifndef yystrlen
        !          1363: #  if defined __GLIBC__ && defined _STRING_H
        !          1364: #   define yystrlen strlen
        !          1365: #  else
        !          1366: /* Return the length of YYSTR.  */
        !          1367: #if (defined __STDC__ || defined __C99__FUNC__ \
        !          1368:      || defined __cplusplus || defined _MSC_VER)
        !          1369: static YYSIZE_T
        !          1370: yystrlen (const char *yystr)
        !          1371: #else
        !          1372: static YYSIZE_T
        !          1373: yystrlen (yystr)
        !          1374:     const char *yystr;
        !          1375: #endif
        !          1376: {
        !          1377:   YYSIZE_T yylen;
        !          1378:   for (yylen = 0; yystr[yylen]; yylen++)
        !          1379:     continue;
        !          1380:   return yylen;
        !          1381: }
        !          1382: #  endif
        !          1383: # endif
        !          1384:
        !          1385: # ifndef yystpcpy
        !          1386: #  if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
        !          1387: #   define yystpcpy stpcpy
        !          1388: #  else
        !          1389: /* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
        !          1390:    YYDEST.  */
        !          1391: #if (defined __STDC__ || defined __C99__FUNC__ \
        !          1392:      || defined __cplusplus || defined _MSC_VER)
        !          1393: static char *
        !          1394: yystpcpy (char *yydest, const char *yysrc)
        !          1395: #else
        !          1396: static char *
        !          1397: yystpcpy (yydest, yysrc)
        !          1398:     char *yydest;
        !          1399:     const char *yysrc;
        !          1400: #endif
        !          1401: {
        !          1402:   char *yyd = yydest;
        !          1403:   const char *yys = yysrc;
        !          1404:
        !          1405:   while ((*yyd++ = *yys++) != '\0')
        !          1406:     continue;
        !          1407:
        !          1408:   return yyd - 1;
        !          1409: }
        !          1410: #  endif
        !          1411: # endif
        !          1412:
        !          1413: # ifndef yytnamerr
        !          1414: /* Copy to YYRES the contents of YYSTR after stripping away unnecessary
        !          1415:    quotes and backslashes, so that it's suitable for yyerror.  The
        !          1416:    heuristic is that double-quoting is unnecessary unless the string
        !          1417:    contains an apostrophe, a comma, or backslash (other than
        !          1418:    backslash-backslash).  YYSTR is taken from yytname.  If YYRES is
        !          1419:    null, do not copy; instead, return the length of what the result
        !          1420:    would have been.  */
        !          1421: static YYSIZE_T
        !          1422: yytnamerr (char *yyres, const char *yystr)
        !          1423: {
        !          1424:   if (*yystr == '"')
        !          1425:     {
        !          1426:       YYSIZE_T yyn = 0;
        !          1427:       char const *yyp = yystr;
        !          1428:
        !          1429:       for (;;)
        !          1430:   switch (*++yyp)
        !          1431:     {
        !          1432:     case '\'':
        !          1433:     case ',':
        !          1434:       goto do_not_strip_quotes;
        !          1435:
        !          1436:     case '\\':
        !          1437:       if (*++yyp != '\\')
        !          1438:         goto do_not_strip_quotes;
        !          1439:       /* Fall through.  */
        !          1440:     default:
        !          1441:       if (yyres)
        !          1442:         yyres[yyn] = *yyp;
        !          1443:       yyn++;
        !          1444:       break;
        !          1445:
        !          1446:     case '"':
        !          1447:       if (yyres)
        !          1448:         yyres[yyn] = '\0';
        !          1449:       return yyn;
        !          1450:     }
        !          1451:     do_not_strip_quotes: ;
        !          1452:     }
        !          1453:
        !          1454:   if (! yyres)
        !          1455:     return yystrlen (yystr);
        !          1456:
        !          1457:   return yystpcpy (yyres, yystr) - yyres;
        !          1458: }
        !          1459: # endif
        !          1460:
        !          1461: /* Copy into YYRESULT an error message about the unexpected token
        !          1462:    YYCHAR while in state YYSTATE.  Return the number of bytes copied,
        !          1463:    including the terminating null byte.  If YYRESULT is null, do not
        !          1464:    copy anything; just return the number of bytes that would be
        !          1465:    copied.  As a special case, return 0 if an ordinary "syntax error"
        !          1466:    message will do.  Return YYSIZE_MAXIMUM if overflow occurs during
        !          1467:    size calculation.  */
        !          1468: static YYSIZE_T
        !          1469: yysyntax_error (char *yyresult, int yystate, int yychar)
        !          1470: {
        !          1471:   int yyn = yypact[yystate];
        !          1472:
        !          1473:   if (! (YYPACT_NINF < yyn && yyn <= YYLAST))
        !          1474:     return 0;
        !          1475:   else
        !          1476:     {
        !          1477:       int yytype = YYTRANSLATE (yychar);
        !          1478:       YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
        !          1479:       YYSIZE_T yysize = yysize0;
        !          1480:       YYSIZE_T yysize1;
        !          1481:       int yysize_overflow = 0;
        !          1482:       enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
        !          1483:       char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
        !          1484:       int yyx;
        !          1485:
        !          1486: # if 0
        !          1487:       /* This is so xgettext sees the translatable formats that are
        !          1488:    constructed on the fly.  */
        !          1489:       YY_("syntax error, unexpected %s");
        !          1490:       YY_("syntax error, unexpected %s, expecting %s");
        !          1491:       YY_("syntax error, unexpected %s, expecting %s or %s");
        !          1492:       YY_("syntax error, unexpected %s, expecting %s or %s or %s");
        !          1493:       YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
        !          1494: # endif
        !          1495:       char *yyfmt;
        !          1496:       char const *yyf;
        !          1497:       static char const yyunexpected[] = "syntax error, unexpected %s";
        !          1498:       static char const yyexpecting[] = ", expecting %s";
        !          1499:       static char const yyor[] = " or %s";
        !          1500:       char yyformat[sizeof yyunexpected
        !          1501:         + sizeof yyexpecting - 1
        !          1502:         + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
        !          1503:            * (sizeof yyor - 1))];
        !          1504:       char const *yyprefix = yyexpecting;
        !          1505:
        !          1506:       /* Start YYX at -YYN if negative to avoid negative indexes in
        !          1507:    YYCHECK.  */
        !          1508:       int yyxbegin = yyn < 0 ? -yyn : 0;
        !          1509:
        !          1510:       /* Stay within bounds of both yycheck and yytname.  */
        !          1511:       int yychecklim = YYLAST - yyn + 1;
        !          1512:       int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
        !          1513:       int yycount = 1;
        !          1514:
        !          1515:       yyarg[0] = yytname[yytype];
        !          1516:       yyfmt = yystpcpy (yyformat, yyunexpected);
        !          1517:
        !          1518:       for (yyx = yyxbegin; yyx < yyxend; ++yyx)
        !          1519:   if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
        !          1520:     {
        !          1521:       if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
        !          1522:         {
        !          1523:     yycount = 1;
        !          1524:     yysize = yysize0;
        !          1525:     yyformat[sizeof yyunexpected - 1] = '\0';
        !          1526:     break;
        !          1527:         }
        !          1528:       yyarg[yycount++] = yytname[yyx];
        !          1529:       yysize1 = yysize + yytnamerr (0, yytname[yyx]);
        !          1530:       yysize_overflow |= (yysize1 < yysize);
        !          1531:       yysize = yysize1;
        !          1532:       yyfmt = yystpcpy (yyfmt, yyprefix);
        !          1533:       yyprefix = yyor;
        !          1534:     }
        !          1535:
        !          1536:       yyf = YY_(yyformat);
        !          1537:       yysize1 = yysize + yystrlen (yyf);
        !          1538:       yysize_overflow |= (yysize1 < yysize);
        !          1539:       yysize = yysize1;
        !          1540:
        !          1541:       if (yysize_overflow)
        !          1542:   return YYSIZE_MAXIMUM;
        !          1543:
        !          1544:       if (yyresult)
        !          1545:   {
        !          1546:     /* Avoid sprintf, as that infringes on the user's name space.
        !          1547:        Don't have undefined behavior even if the translation
        !          1548:        produced a string with the wrong number of "%s"s.  */
        !          1549:     char *yyp = yyresult;
        !          1550:     int yyi = 0;
        !          1551:     while ((*yyp = *yyf) != '\0')
        !          1552:       {
        !          1553:         if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
        !          1554:     {
        !          1555:       yyp += yytnamerr (yyp, yyarg[yyi++]);
        !          1556:       yyf += 2;
        !          1557:     }
        !          1558:         else
        !          1559:     {
        !          1560:       yyp++;
        !          1561:       yyf++;
        !          1562:     }
        !          1563:       }
        !          1564:   }
        !          1565:       return yysize;
        !          1566:     }
        !          1567: }
        !          1568: #endif /* YYERROR_VERBOSE */
        !          1569: 
        !          1570:
        !          1571: /*-----------------------------------------------.
        !          1572: | Release the memory associated to this symbol.  |
        !          1573: `-----------------------------------------------*/
        !          1574:
        !          1575: /*ARGSUSED*/
        !          1576: #if (defined __STDC__ || defined __C99__FUNC__ \
        !          1577:      || defined __cplusplus || defined _MSC_VER)
        !          1578: static void
        !          1579: yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
        !          1580: #else
        !          1581: static void
        !          1582: yydestruct (yymsg, yytype, yyvaluep)
        !          1583:     const char *yymsg;
        !          1584:     int yytype;
        !          1585:     YYSTYPE *yyvaluep;
        !          1586: #endif
        !          1587: {
        !          1588:   YYUSE (yyvaluep);
        !          1589:
        !          1590:   if (!yymsg)
        !          1591:     yymsg = "Deleting";
        !          1592:   YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
        !          1593:
        !          1594:   switch (yytype)
        !          1595:     {
        !          1596:
        !          1597:       default:
        !          1598:   break;
        !          1599:     }
        !          1600: }
        !          1601:
        !          1602: /* Prevent warnings from -Wmissing-prototypes.  */
        !          1603: #ifdef YYPARSE_PARAM
        !          1604: #if defined __STDC__ || defined __cplusplus
        !          1605: int yyparse (void *YYPARSE_PARAM);
        !          1606: #else
        !          1607: int yyparse ();
        !          1608: #endif
        !          1609: #else /* ! YYPARSE_PARAM */
        !          1610: #if defined __STDC__ || defined __cplusplus
        !          1611: int yyparse (void);
        !          1612: #else
        !          1613: int yyparse ();
        !          1614: #endif
        !          1615: #endif /* ! YYPARSE_PARAM */
        !          1616:
        !          1617:
        !          1618: /* The lookahead symbol.  */
        !          1619: int yychar;
        !          1620:
        !          1621: /* The semantic value of the lookahead symbol.  */
        !          1622: YYSTYPE yylval;
        !          1623:
        !          1624: /* Number of syntax errors so far.  */
        !          1625: int yynerrs;
        !          1626:
        !          1627:
        !          1628:
        !          1629: /*-------------------------.
        !          1630: | yyparse or yypush_parse.  |
        !          1631: `-------------------------*/
        !          1632:
        !          1633: #ifdef YYPARSE_PARAM
        !          1634: #if (defined __STDC__ || defined __C99__FUNC__ \
        !          1635:      || defined __cplusplus || defined _MSC_VER)
        !          1636: int
        !          1637: yyparse (void *YYPARSE_PARAM)
        !          1638: #else
        !          1639: int
        !          1640: yyparse (YYPARSE_PARAM)
        !          1641:     void *YYPARSE_PARAM;
        !          1642: #endif
        !          1643: #else /* ! YYPARSE_PARAM */
        !          1644: #if (defined __STDC__ || defined __C99__FUNC__ \
        !          1645:      || defined __cplusplus || defined _MSC_VER)
        !          1646: int
        !          1647: yyparse (void)
        !          1648: #else
        !          1649: int
        !          1650: yyparse ()
        !          1651:
        !          1652: #endif
        !          1653: #endif
        !          1654: {
        !          1655:
        !          1656:
        !          1657:     int yystate;
        !          1658:     /* Number of tokens to shift before error messages enabled.  */
        !          1659:     int yyerrstatus;
        !          1660:
        !          1661:     /* The stacks and their tools:
        !          1662:        `yyss': related to states.
        !          1663:        `yyvs': related to semantic values.
        !          1664:
        !          1665:        Refer to the stacks thru separate pointers, to allow yyoverflow
        !          1666:        to reallocate them elsewhere.  */
        !          1667:
        !          1668:     /* The state stack.  */
        !          1669:     yytype_int16 yyssa[YYINITDEPTH];
        !          1670:     yytype_int16 *yyss;
        !          1671:     yytype_int16 *yyssp;
        !          1672:
        !          1673:     /* The semantic value stack.  */
        !          1674:     YYSTYPE yyvsa[YYINITDEPTH];
        !          1675:     YYSTYPE *yyvs;
        !          1676:     YYSTYPE *yyvsp;
        !          1677:
        !          1678:     YYSIZE_T yystacksize;
        !          1679:
        !          1680:   int yyn;
        !          1681:   int yyresult;
        !          1682:   /* Lookahead token as an internal (translated) token number.  */
        !          1683:   int yytoken;
        !          1684:   /* The variables used to return semantic value and location from the
        !          1685:      action routines.  */
        !          1686:   YYSTYPE yyval;
        !          1687:
        !          1688: #if YYERROR_VERBOSE
        !          1689:   /* Buffer for error messages, and its allocated size.  */
        !          1690:   char yymsgbuf[128];
        !          1691:   char *yymsg = yymsgbuf;
        !          1692:   YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
        !          1693: #endif
        !          1694:
        !          1695: #define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N))
        !          1696:
        !          1697:   /* The number of symbols on the RHS of the reduced rule.
        !          1698:      Keep to zero when no symbol should be popped.  */
        !          1699:   int yylen = 0;
        !          1700:
        !          1701:   yytoken = 0;
        !          1702:   yyss = yyssa;
        !          1703:   yyvs = yyvsa;
        !          1704:   yystacksize = YYINITDEPTH;
        !          1705:
        !          1706:   YYDPRINTF ((stderr, "Starting parse\n"));
        !          1707:
        !          1708:   yystate = 0;
        !          1709:   yyerrstatus = 0;
        !          1710:   yynerrs = 0;
        !          1711:   yychar = YYEMPTY; /* Cause a token to be read.  */
        !          1712:
        !          1713:   /* Initialize stack pointers.
        !          1714:      Waste one element of value and location stack
        !          1715:      so that they stay on the same level as the state stack.
        !          1716:      The wasted elements are never initialized.  */
        !          1717:   yyssp = yyss;
        !          1718:   yyvsp = yyvs;
        !          1719:
        !          1720:   goto yysetstate;
        !          1721:
        !          1722: /*------------------------------------------------------------.
        !          1723: | yynewstate -- Push a new state, which is found in yystate.  |
        !          1724: `------------------------------------------------------------*/
        !          1725:  yynewstate:
        !          1726:   /* In all cases, when you get here, the value and location stacks
        !          1727:      have just been pushed.  So pushing a state here evens the stacks.  */
        !          1728:   yyssp++;
        !          1729:
        !          1730:  yysetstate:
        !          1731:   *yyssp = yystate;
        !          1732:
        !          1733:   if (yyss + yystacksize - 1 <= yyssp)
        !          1734:     {
        !          1735:       /* Get the current used size of the three stacks, in elements.  */
        !          1736:       YYSIZE_T yysize = yyssp - yyss + 1;
        !          1737:
        !          1738: #ifdef yyoverflow
        !          1739:       {
        !          1740:   /* Give user a chance to reallocate the stack.  Use copies of
        !          1741:      these so that the &'s don't force the real ones into
        !          1742:      memory.  */
        !          1743:   YYSTYPE *yyvs1 = yyvs;
        !          1744:   yytype_int16 *yyss1 = yyss;
        !          1745:
        !          1746:   /* Each stack pointer address is followed by the size of the
        !          1747:      data in use in that stack, in bytes.  This used to be a
        !          1748:      conditional around just the two extra args, but that might
        !          1749:      be undefined if yyoverflow is a macro.  */
        !          1750:   yyoverflow (YY_("memory exhausted"),
        !          1751:         &yyss1, yysize * sizeof (*yyssp),
        !          1752:         &yyvs1, yysize * sizeof (*yyvsp),
        !          1753:         &yystacksize);
        !          1754:
        !          1755:   yyss = yyss1;
        !          1756:   yyvs = yyvs1;
        !          1757:       }
        !          1758: #else /* no yyoverflow */
        !          1759: # ifndef YYSTACK_RELOCATE
        !          1760:       goto yyexhaustedlab;
        !          1761: # else
        !          1762:       /* Extend the stack our own way.  */
        !          1763:       if (YYMAXDEPTH <= yystacksize)
        !          1764:   goto yyexhaustedlab;
        !          1765:       yystacksize *= 2;
        !          1766:       if (YYMAXDEPTH < yystacksize)
        !          1767:   yystacksize = YYMAXDEPTH;
        !          1768:
        !          1769:       {
        !          1770:   yytype_int16 *yyss1 = yyss;
        !          1771:   union yyalloc *yyptr =
        !          1772:     (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
        !          1773:   if (! yyptr)
        !          1774:     goto yyexhaustedlab;
        !          1775:   YYSTACK_RELOCATE (yyss_alloc, yyss);
        !          1776:   YYSTACK_RELOCATE (yyvs_alloc, yyvs);
        !          1777: #  undef YYSTACK_RELOCATE
        !          1778:   if (yyss1 != yyssa)
        !          1779:     YYSTACK_FREE (yyss1);
        !          1780:       }
        !          1781: # endif
        !          1782: #endif /* no yyoverflow */
        !          1783:
        !          1784:       yyssp = yyss + yysize - 1;
        !          1785:       yyvsp = yyvs + yysize - 1;
        !          1786:
        !          1787:       YYDPRINTF ((stderr, "Stack size increased to %lu\n",
        !          1788:       (unsigned long int) yystacksize));
        !          1789:
        !          1790:       if (yyss + yystacksize - 1 <= yyssp)
        !          1791:   YYABORT;
        !          1792:     }
        !          1793:
        !          1794:   YYDPRINTF ((stderr, "Entering state %d\n", yystate));
        !          1795:
        !          1796:   if (yystate == YYFINAL)
        !          1797:     YYACCEPT;
        !          1798:
        !          1799:   goto yybackup;
        !          1800:
        !          1801: /*-----------.
        !          1802: | yybackup.  |
        !          1803: `-----------*/
        !          1804: yybackup:
        !          1805:
        !          1806:   /* Do appropriate processing given the current state.  Read a
        !          1807:      lookahead token if we need one and don't already have one.  */
        !          1808:
        !          1809:   /* First try to decide what to do without reference to lookahead token.  */
        !          1810:   yyn = yypact[yystate];
        !          1811:   if (yyn == YYPACT_NINF)
        !          1812:     goto yydefault;
        !          1813:
        !          1814:   /* Not known => get a lookahead token if don't already have one.  */
        !          1815:
        !          1816:   /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol.  */
        !          1817:   if (yychar == YYEMPTY)
        !          1818:     {
        !          1819:       YYDPRINTF ((stderr, "Reading a token: "));
        !          1820:       yychar = YYLEX;
        !          1821:     }
        !          1822:
        !          1823:   if (yychar <= YYEOF)
        !          1824:     {
        !          1825:       yychar = yytoken = YYEOF;
        !          1826:       YYDPRINTF ((stderr, "Now at end of input.\n"));
        !          1827:     }
        !          1828:   else
        !          1829:     {
        !          1830:       yytoken = YYTRANSLATE (yychar);
        !          1831:       YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
        !          1832:     }
        !          1833:
        !          1834:   /* If the proper action on seeing token YYTOKEN is to reduce or to
        !          1835:      detect an error, take that action.  */
        !          1836:   yyn += yytoken;
        !          1837:   if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
        !          1838:     goto yydefault;
        !          1839:   yyn = yytable[yyn];
        !          1840:   if (yyn <= 0)
        !          1841:     {
        !          1842:       if (yyn == 0 || yyn == YYTABLE_NINF)
        !          1843:   goto yyerrlab;
        !          1844:       yyn = -yyn;
        !          1845:       goto yyreduce;
        !          1846:     }
        !          1847:
        !          1848:   /* Count tokens shifted since error; after three, turn off error
        !          1849:      status.  */
        !          1850:   if (yyerrstatus)
        !          1851:     yyerrstatus--;
        !          1852:
        !          1853:   /* Shift the lookahead token.  */
        !          1854:   YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
        !          1855:
        !          1856:   /* Discard the shifted token.  */
        !          1857:   yychar = YYEMPTY;
        !          1858:
        !          1859:   yystate = yyn;
        !          1860:   *++yyvsp = yylval;
        !          1861:
        !          1862:   goto yynewstate;
        !          1863:
        !          1864:
        !          1865: /*-----------------------------------------------------------.
        !          1866: | yydefault -- do the default action for the current state.  |
        !          1867: `-----------------------------------------------------------*/
        !          1868: yydefault:
        !          1869:   yyn = yydefact[yystate];
        !          1870:   if (yyn == 0)
        !          1871:     goto yyerrlab;
        !          1872:   goto yyreduce;
        !          1873:
        !          1874:
        !          1875: /*-----------------------------.
        !          1876: | yyreduce -- Do a reduction.  |
        !          1877: `-----------------------------*/
        !          1878: yyreduce:
        !          1879:   /* yyn is the number of a rule to reduce with.  */
        !          1880:   yylen = yyr2[yyn];
        !          1881:
        !          1882:   /* If YYLEN is nonzero, implement the default value of the action:
        !          1883:      `$$ = $1'.
        !          1884:
        !          1885:      Otherwise, the following line sets YYVAL to garbage.
        !          1886:      This behavior is undocumented and Bison
        !          1887:      users should not rely upon it.  Assigning to YYVAL
        !          1888:      unconditionally makes the parser a bit smaller, and it avoids a
        !          1889:      GCC warning that YYVAL may be used uninitialized.  */
        !          1890:   yyval = yyvsp[1-yylen];
        !          1891:
        !          1892:
        !          1893:   YY_REDUCE_PRINT (yyn);
        !          1894:   switch (yyn)
        !          1895:     {
        !          1896:         case 2:
        !          1897:
        !          1898: /* Line 1455 of yacc.c  */
        !          1899: #line 131 "parse.y"
        !          1900:     {
        !          1901:         parse_snode = (yyvsp[(1) - (1)].s);
        !          1902:         if ( yychar >= 0 )
        !          1903:           fprintf(stderr,
        !          1904:             "Warning: a token was wasted after an 'if' statement without 'else'.\n");
        !          1905:         YYACCEPT;
        !          1906:       }
        !          1907:     break;
        !          1908:
        !          1909:   case 3:
        !          1910:
        !          1911: /* Line 1455 of yacc.c  */
        !          1912: #line 140 "parse.y"
        !          1913:     { (yyval.s) = 0; }
        !          1914:     break;
        !          1915:
        !          1916:   case 4:
        !          1917:
        !          1918: /* Line 1455 of yacc.c  */
        !          1919: #line 141 "parse.y"
        !          1920:     { gdef=1; }
        !          1921:     break;
        !          1922:
        !          1923:   case 5:
        !          1924:
        !          1925: /* Line 1455 of yacc.c  */
        !          1926: #line 141 "parse.y"
        !          1927:     { gdef=0; }
        !          1928:     break;
        !          1929:
        !          1930:   case 6:
        !          1931:
        !          1932: /* Line 1455 of yacc.c  */
        !          1933: #line 142 "parse.y"
        !          1934:     { (yyval.s) = 0; NOPR; }
        !          1935:     break;
        !          1936:
        !          1937:   case 7:
        !          1938:
        !          1939: /* Line 1455 of yacc.c  */
        !          1940: #line 143 "parse.y"
        !          1941:     { mgdef=1; }
        !          1942:     break;
        !          1943:
        !          1944:   case 8:
        !          1945:
        !          1946: /* Line 1455 of yacc.c  */
        !          1947: #line 143 "parse.y"
        !          1948:     { mgdef=0; }
        !          1949:     break;
        !          1950:
        !          1951:   case 9:
        !          1952:
        !          1953: /* Line 1455 of yacc.c  */
        !          1954: #line 144 "parse.y"
        !          1955:     { (yyval.s) = 0; NOPR; }
        !          1956:     break;
        !          1957:
        !          1958:   case 10:
        !          1959:
        !          1960: /* Line 1455 of yacc.c  */
        !          1961: #line 145 "parse.y"
        !          1962:     { ldef=1; }
        !          1963:     break;
        !          1964:
        !          1965:   case 11:
        !          1966:
        !          1967: /* Line 1455 of yacc.c  */
        !          1968: #line 145 "parse.y"
        !          1969:     { ldef=0; }
        !          1970:     break;
        !          1971:
        !          1972:   case 12:
        !          1973:
        !          1974: /* Line 1455 of yacc.c  */
        !          1975: #line 146 "parse.y"
        !          1976:     { (yyval.s) = 0; NOPR; }
        !          1977:     break;
        !          1978:
        !          1979:   case 13:
        !          1980:
        !          1981: /* Line 1455 of yacc.c  */
        !          1982: #line 148 "parse.y"
        !          1983:     { appenduflist((yyvsp[(2) - (3)].n)); (yyval.s) = 0; NOPR; }
        !          1984:     break;
        !          1985:
        !          1986:   case 14:
        !          1987:
        !          1988: /* Line 1455 of yacc.c  */
        !          1989: #line 150 "parse.y"
        !          1990:     { structdef((yyvsp[(2) - (6)].p),(yyvsp[(4) - (6)].n)); (yyval.s) = 0; NOPR; }
        !          1991:     break;
        !          1992:
        !          1993:   case 15:
        !          1994:
        !          1995: /* Line 1455 of yacc.c  */
        !          1996: #line 152 "parse.y"
        !          1997:     { (yyval.s) = mksnode(1,S_SINGLE,(yyvsp[(1) - (2)].f)); }
        !          1998:     break;
        !          1999:
        !          2000:   case 16:
        !          2001:
        !          2002: /* Line 1455 of yacc.c  */
        !          2003: #line 154 "parse.y"
        !          2004:     { (yyval.s) = (yyvsp[(1) - (1)].s); }
        !          2005:     break;
        !          2006:
        !          2007:   case 17:
        !          2008:
        !          2009: /* Line 1455 of yacc.c  */
        !          2010: #line 156 "parse.y"
        !          2011:     { (yyval.s) = mksnode(0,S_BREAK); }
        !          2012:     break;
        !          2013:
        !          2014:   case 18:
        !          2015:
        !          2016: /* Line 1455 of yacc.c  */
        !          2017: #line 158 "parse.y"
        !          2018:     { (yyval.s) = mksnode(0,S_CONTINUE); }
        !          2019:     break;
        !          2020:
        !          2021:   case 19:
        !          2022:
        !          2023: /* Line 1455 of yacc.c  */
        !          2024: #line 160 "parse.y"
        !          2025:     { (yyval.s) = mksnode(1,S_RETURN,NULLP); }
        !          2026:     break;
        !          2027:
        !          2028:   case 20:
        !          2029:
        !          2030: /* Line 1455 of yacc.c  */
        !          2031: #line 162 "parse.y"
        !          2032:     { (yyval.s) = mksnode(1,S_RETURN,(yyvsp[(2) - (3)].f)); }
        !          2033:     break;
        !          2034:
        !          2035:   case 21:
        !          2036:
        !          2037: /* Line 1455 of yacc.c  */
        !          2038: #line 164 "parse.y"
        !          2039:     { (yyval.s) = mksnode(4,S_IFELSE,(yyvsp[(1) - (5)].i),(yyvsp[(3) - (5)].n),(yyvsp[(5) - (5)].s),NULLP); (yyvsp[(5) - (5)].s)?(yyval.s)->ln=(yyvsp[(5) - (5)].s)->ln:0; NOPR; }
        !          2040:     break;
        !          2041:
        !          2042:   case 22:
        !          2043:
        !          2044: /* Line 1455 of yacc.c  */
        !          2045: #line 166 "parse.y"
        !          2046:     { (yyval.s) = mksnode(4,S_IFELSE,(yyvsp[(1) - (7)].i),(yyvsp[(3) - (7)].n),(yyvsp[(5) - (7)].s),(yyvsp[(7) - (7)].s)); (yyvsp[(7) - (7)].s)?(yyval.s)->ln=(yyvsp[(7) - (7)].s)->ln:0; NOPR; }
        !          2047:     break;
        !          2048:
        !          2049:   case 23:
        !          2050:
        !          2051: /* Line 1455 of yacc.c  */
        !          2052: #line 168 "parse.y"
        !          2053:     { (yyval.s) = mksnode(5,S_FOR,(yyvsp[(1) - (9)].i),(yyvsp[(3) - (9)].n),(yyvsp[(5) - (9)].n)?(yyvsp[(5) - (9)].n):ONENODE,(yyvsp[(7) - (9)].n),(yyvsp[(9) - (9)].s)); (yyvsp[(9) - (9)].s)?(yyval.s)->ln=(yyvsp[(9) - (9)].s)->ln:0; NOPR; }
        !          2054:     break;
        !          2055:
        !          2056:   case 24:
        !          2057:
        !          2058: /* Line 1455 of yacc.c  */
        !          2059: #line 170 "parse.y"
        !          2060:     { (yyval.s) = mksnode(5,S_FOR,(yyvsp[(1) - (5)].i),NULLP,(yyvsp[(3) - (5)].n),NULLP,(yyvsp[(5) - (5)].s)); (yyvsp[(5) - (5)].s)?(yyval.s)->ln=(yyvsp[(5) - (5)].s)->ln:0; NOPR; }
        !          2061:     break;
        !          2062:
        !          2063:   case 25:
        !          2064:
        !          2065: /* Line 1455 of yacc.c  */
        !          2066: #line 172 "parse.y"
        !          2067:     { (yyval.s) = mksnode(3,S_DO,(yyvsp[(1) - (7)].i),(yyvsp[(2) - (7)].s),(yyvsp[(5) - (7)].n)); NOPR; }
        !          2068:     break;
        !          2069:
        !          2070:   case 26:
        !          2071:
        !          2072: /* Line 1455 of yacc.c  */
        !          2073: #line 174 "parse.y"
        !          2074:     { (yyval.s) = mksnode(3,S_PFDEF,(yyvsp[(1) - (8)].p),(yyvsp[(3) - (8)].n),(yyvsp[(7) - (8)].f)); NOPR; }
        !          2075:     break;
        !          2076:
        !          2077:   case 27:
        !          2078:
        !          2079: /* Line 1455 of yacc.c  */
        !          2080: #line 176 "parse.y"
        !          2081:     { (yyval.s) = mksnode(3,S_PFDEF,(yyvsp[(2) - (6)].p),(yyvsp[(4) - (6)].n),NULLP); NOPR; }
        !          2082:     break;
        !          2083:
        !          2084:   case 28:
        !          2085:
        !          2086: /* Line 1455 of yacc.c  */
        !          2087: #line 177 "parse.y"
        !          2088:     { mkpvs((yyvsp[(2) - (2)].p)); }
        !          2089:     break;
        !          2090:
        !          2091:   case 29:
        !          2092:
        !          2093: /* Line 1455 of yacc.c  */
        !          2094: #line 177 "parse.y"
        !          2095:     { ldef = 1; }
        !          2096:     break;
        !          2097:
        !          2098:   case 30:
        !          2099:
        !          2100: /* Line 1455 of yacc.c  */
        !          2101: #line 177 "parse.y"
        !          2102:     { ldef = -1; }
        !          2103:     break;
        !          2104:
        !          2105:   case 31:
        !          2106:
        !          2107: /* Line 1455 of yacc.c  */
        !          2108: #line 178 "parse.y"
        !          2109:     {
        !          2110:         mkuf((yyvsp[(2) - (12)].p),asir_infile->name,(yyvsp[(6) - (12)].n),
        !          2111:           mksnode(1,S_CPLX,(yyvsp[(11) - (12)].n)),(yyvsp[(1) - (12)].i),asir_infile->ln,(yyvsp[(9) - (12)].p),CUR_MODULE);
        !          2112:         (yyval.s) = 0; NOPR;
        !          2113:       }
        !          2114:     break;
        !          2115:
        !          2116:   case 32:
        !          2117:
        !          2118: /* Line 1455 of yacc.c  */
        !          2119: #line 184 "parse.y"
        !          2120:     {
        !          2121:         CUR_MODULE = mkmodule((yyvsp[(2) - (3)].p));
        !          2122:         MPVS = CUR_MODULE->pvs;
        !          2123:         (yyval.s) = mksnode(1,S_MODULE,CUR_MODULE); NOPR;
        !          2124:       }
        !          2125:     break;
        !          2126:
        !          2127:   case 33:
        !          2128:
        !          2129: /* Line 1455 of yacc.c  */
        !          2130: #line 190 "parse.y"
        !          2131:     { CUR_MODULE = 0; MPVS = 0; (yyval.s) = mksnode(1,S_MODULE,NULLP); NOPR; }
        !          2132:     break;
        !          2133:
        !          2134:   case 34:
        !          2135:
        !          2136: /* Line 1455 of yacc.c  */
        !          2137: #line 192 "parse.y"
        !          2138:     { yyerrok; (yyval.s) = 0; }
        !          2139:     break;
        !          2140:
        !          2141:   case 35:
        !          2142:
        !          2143: /* Line 1455 of yacc.c  */
        !          2144: #line 195 "parse.y"
        !          2145:     { if ( main_parser ) prresult = 1; }
        !          2146:     break;
        !          2147:
        !          2148:   case 36:
        !          2149:
        !          2150: /* Line 1455 of yacc.c  */
        !          2151: #line 197 "parse.y"
        !          2152:     { if ( main_parser ) prresult = 0; }
        !          2153:     break;
        !          2154:
        !          2155:   case 37:
        !          2156:
        !          2157: /* Line 1455 of yacc.c  */
        !          2158: #line 200 "parse.y"
        !          2159:     { (yyval.p) = 0; }
        !          2160:     break;
        !          2161:
        !          2162:   case 38:
        !          2163:
        !          2164: /* Line 1455 of yacc.c  */
        !          2165: #line 202 "parse.y"
        !          2166:     { (yyval.p) = (yyvsp[(1) - (1)].p); }
        !          2167:     break;
        !          2168:
        !          2169:   case 39:
        !          2170:
        !          2171: /* Line 1455 of yacc.c  */
        !          2172: #line 205 "parse.y"
        !          2173:     { (yyval.s) = mksnode(1,S_CPLX,(yyvsp[(2) - (3)].n)); }
        !          2174:     break;
        !          2175:
        !          2176:   case 40:
        !          2177:
        !          2178: /* Line 1455 of yacc.c  */
        !          2179: #line 208 "parse.y"
        !          2180:     { MKNODE((yyval.n),(yyvsp[(1) - (1)].p),0); }
        !          2181:     break;
        !          2182:
        !          2183:   case 41:
        !          2184:
        !          2185: /* Line 1455 of yacc.c  */
        !          2186: #line 210 "parse.y"
        !          2187:     { appendtonode((yyvsp[(1) - (3)].n),(yyvsp[(3) - (3)].p),&(yyval.n)); }
        !          2188:     break;
        !          2189:
        !          2190:   case 42:
        !          2191:
        !          2192: /* Line 1455 of yacc.c  */
        !          2193: #line 213 "parse.y"
        !          2194:     { MKNODE((yyval.n),(yyvsp[(1) - (1)].p),0); }
        !          2195:     break;
        !          2196:
        !          2197:   case 43:
        !          2198:
        !          2199: /* Line 1455 of yacc.c  */
        !          2200: #line 215 "parse.y"
        !          2201:     { appendtonode((yyvsp[(1) - (3)].n),(yyvsp[(3) - (3)].p),&(yyval.n)); }
        !          2202:     break;
        !          2203:
        !          2204:   case 44:
        !          2205:
        !          2206: /* Line 1455 of yacc.c  */
        !          2207: #line 218 "parse.y"
        !          2208:     { val = (pointer)makepvar((yyvsp[(1) - (1)].p)); MKNODE((yyval.n),val,0); }
        !          2209:     break;
        !          2210:
        !          2211:   case 45:
        !          2212:
        !          2213: /* Line 1455 of yacc.c  */
        !          2214: #line 220 "parse.y"
        !          2215:     { appendtonode((yyvsp[(1) - (3)].n),(pointer)makepvar((yyvsp[(3) - (3)].p)),&(yyval.n)); }
        !          2216:     break;
        !          2217:
        !          2218:   case 46:
        !          2219:
        !          2220: /* Line 1455 of yacc.c  */
        !          2221: #line 223 "parse.y"
        !          2222:     { (yyval.n) = 0; }
        !          2223:     break;
        !          2224:
        !          2225:   case 47:
        !          2226:
        !          2227: /* Line 1455 of yacc.c  */
        !          2228: #line 225 "parse.y"
        !          2229:     { appendtonode((yyvsp[(1) - (2)].n),(pointer)(yyvsp[(2) - (2)].s),&(yyval.n)); }
        !          2230:     break;
        !          2231:
        !          2232:   case 48:
        !          2233:
        !          2234: /* Line 1455 of yacc.c  */
        !          2235: #line 228 "parse.y"
        !          2236:     { (yyval.n) = 0; }
        !          2237:     break;
        !          2238:
        !          2239:   case 49:
        !          2240:
        !          2241: /* Line 1455 of yacc.c  */
        !          2242: #line 230 "parse.y"
        !          2243:     { (yyval.n) = (yyvsp[(1) - (1)].n); }
        !          2244:     break;
        !          2245:
        !          2246:   case 50:
        !          2247:
        !          2248: /* Line 1455 of yacc.c  */
        !          2249: #line 233 "parse.y"
        !          2250:     { MKNODE((yyval.n),(yyvsp[(1) - (1)].f),0); }
        !          2251:     break;
        !          2252:
        !          2253:   case 51:
        !          2254:
        !          2255: /* Line 1455 of yacc.c  */
        !          2256: #line 235 "parse.y"
        !          2257:     { appendtonode((yyvsp[(1) - (3)].n),(pointer)(yyvsp[(3) - (3)].f),&(yyval.n)); }
        !          2258:     break;
        !          2259:
        !          2260:   case 52:
        !          2261:
        !          2262: /* Line 1455 of yacc.c  */
        !          2263: #line 238 "parse.y"
        !          2264:     { MKNODE((yyval.n),(yyvsp[(1) - (1)].f),0); }
        !          2265:     break;
        !          2266:
        !          2267:   case 53:
        !          2268:
        !          2269: /* Line 1455 of yacc.c  */
        !          2270: #line 240 "parse.y"
        !          2271:     { appendtonode((yyvsp[(1) - (3)].n),(pointer)(yyvsp[(3) - (3)].f),&(yyval.n)); }
        !          2272:     break;
        !          2273:
        !          2274:   case 54:
        !          2275:
        !          2276: /* Line 1455 of yacc.c  */
        !          2277: #line 243 "parse.y"
        !          2278:     { (yyval.p) = (yyvsp[(1) - (1)].p); }
        !          2279:     break;
        !          2280:
        !          2281:   case 55:
        !          2282:
        !          2283: /* Line 1455 of yacc.c  */
        !          2284: #line 245 "parse.y"
        !          2285:     { (yyval.p) = (yyvsp[(1) - (1)].p); }
        !          2286:     break;
        !          2287:
        !          2288:   case 56:
        !          2289:
        !          2290: /* Line 1455 of yacc.c  */
        !          2291: #line 248 "parse.y"
        !          2292:     { (yyval.f) = mkfnode(2,I_OPT,(yyvsp[(1) - (3)].p),(yyvsp[(3) - (3)].f)); }
        !          2293:     break;
        !          2294:
        !          2295:   case 57:
        !          2296:
        !          2297: /* Line 1455 of yacc.c  */
        !          2298: #line 251 "parse.y"
        !          2299:     { (yyval.f) = mkfnode(1,I_STR,(yyvsp[(1) - (1)].p)); }
        !          2300:     break;
        !          2301:
        !          2302:   case 58:
        !          2303:
        !          2304: /* Line 1455 of yacc.c  */
        !          2305: #line 253 "parse.y"
        !          2306:     { (yyval.f) = mkfnode(1,I_FORMULA,(yyvsp[(1) - (1)].p)); }
        !          2307:     break;
        !          2308:
        !          2309:   case 59:
        !          2310:
        !          2311: /* Line 1455 of yacc.c  */
        !          2312: #line 255 "parse.y"
        !          2313:     { (yyval.f) = mkfnode(1,I_ANS,(yyvsp[(1) - (1)].i)); }
        !          2314:     break;
        !          2315:
        !          2316:   case 60:
        !          2317:
        !          2318: /* Line 1455 of yacc.c  */
        !          2319: #line 257 "parse.y"
        !          2320:     { (yyval.f) = mkfnode(0,I_GF2NGEN); }
        !          2321:     break;
        !          2322:
        !          2323:   case 61:
        !          2324:
        !          2325: /* Line 1455 of yacc.c  */
        !          2326: #line 259 "parse.y"
        !          2327:     { (yyval.f) = mkfnode(0,I_GFPNGEN); }
        !          2328:     break;
        !          2329:
        !          2330:   case 62:
        !          2331:
        !          2332: /* Line 1455 of yacc.c  */
        !          2333: #line 261 "parse.y"
        !          2334:     { (yyval.f) = mkfnode(0,I_GFSNGEN); }
        !          2335:     break;
        !          2336:
        !          2337:   case 63:
        !          2338:
        !          2339: /* Line 1455 of yacc.c  */
        !          2340: #line 263 "parse.y"
        !          2341:     {
        !          2342:         FUNC f;
        !          2343:
        !          2344:         searchf(noargsysf,(yyvsp[(1) - (1)].p),&f);
        !          2345:         if ( f )
        !          2346:            (yyval.f) = mkfnode(2,I_FUNC,f,NULLP);
        !          2347:         else {
        !          2348:           searchc((yyvsp[(1) - (1)].p),&f);
        !          2349:           if ( f )
        !          2350:             (yyval.f) = mkfnode(2,I_FUNC,f,mkfnode(1,I_LIST,NULLP));
        !          2351:           else {
        !          2352:             gen_searchf_searchonly((yyvsp[(1) - (1)].p),(FUNC *)&f);
        !          2353:             if ( f )
        !          2354:               makesrvar(f,(P *)&val);
        !          2355:             else
        !          2356:               makevar((yyvsp[(1) - (1)].p),(P *)&val);
        !          2357:             (yyval.f) = mkfnode(1,I_FORMULA,val);
        !          2358:           }
        !          2359:         }
        !          2360:       }
        !          2361:     break;
        !          2362:
        !          2363:   case 64:
        !          2364:
        !          2365: /* Line 1455 of yacc.c  */
        !          2366: #line 284 "parse.y"
        !          2367:     {
        !          2368:         gen_searchf((yyvsp[(1) - (4)].p),(FUNC *)&val);
        !          2369:         print_crossref(val);
        !          2370:         (yyval.f) = mkfnode(2,I_FUNC,val,mkfnode(1,I_LIST,(yyvsp[(3) - (4)].n)));
        !          2371:       }
        !          2372:     break;
        !          2373:
        !          2374:   case 65:
        !          2375:
        !          2376: /* Line 1455 of yacc.c  */
        !          2377: #line 291 "parse.y"
        !          2378:     {
        !          2379:         gen_searchf((yyvsp[(1) - (6)].p),(FUNC *)&val);
        !          2380:         print_crossref(val);
        !          2381:         (yyval.f) = mkfnode(3,I_FUNC_OPT,val,
        !          2382:           mkfnode(1,I_LIST,(yyvsp[(3) - (6)].n)),mkfnode(1,I_LIST,(yyvsp[(5) - (6)].n)));
        !          2383:       }
        !          2384:     break;
        !          2385:
        !          2386:   case 66:
        !          2387:
        !          2388: /* Line 1455 of yacc.c  */
        !          2389: #line 298 "parse.y"
        !          2390:     {
        !          2391:         gen_searchf((yyvsp[(3) - (6)].p),(FUNC *)&val);
        !          2392:         print_crossref(val);
        !          2393:         (yyval.f) = mkfnode(2,I_MAP,val,mkfnode(1,I_LIST,(yyvsp[(5) - (6)].n)));
        !          2394:       }
        !          2395:     break;
        !          2396:
        !          2397:   case 67:
        !          2398:
        !          2399: /* Line 1455 of yacc.c  */
        !          2400: #line 304 "parse.y"
        !          2401:     {
        !          2402:         gen_searchf((yyvsp[(3) - (6)].p),(FUNC *)&val);
        !          2403:         print_crossref(val);
        !          2404:         (yyval.f) = mkfnode(2,I_RECMAP,val,mkfnode(1,I_LIST,(yyvsp[(5) - (6)].n)));
        !          2405:       }
        !          2406:     break;
        !          2407:
        !          2408:   case 68:
        !          2409:
        !          2410: /* Line 1455 of yacc.c  */
        !          2411: #line 310 "parse.y"
        !          2412:     {
        !          2413:         searchpf((yyvsp[(1) - (7)].p),(FUNC *)&val);
        !          2414:         (yyval.f) = mkfnode(3,I_PFDERIV,val,mkfnode(1,I_LIST,(yyvsp[(6) - (7)].n)),mkfnode(1,I_LIST,(yyvsp[(3) - (7)].n)));
        !          2415:       }
        !          2416:     break;
        !          2417:
        !          2418:   case 69:
        !          2419:
        !          2420: /* Line 1455 of yacc.c  */
        !          2421: #line 315 "parse.y"
        !          2422:     {
        !          2423:         (yyval.f) = mkfnode(2,I_GETOPT,(yyvsp[(3) - (4)].p));
        !          2424:       }
        !          2425:     break;
        !          2426:
        !          2427:   case 70:
        !          2428:
        !          2429: /* Line 1455 of yacc.c  */
        !          2430: #line 319 "parse.y"
        !          2431:     {
        !          2432:         (yyval.f) = mkfnode(2,I_GETOPT,NULLP);
        !          2433:       }
        !          2434:     break;
        !          2435:
        !          2436:   case 71:
        !          2437:
        !          2438: /* Line 1455 of yacc.c  */
        !          2439: #line 323 "parse.y"
        !          2440:     {
        !          2441:         (yyval.f) = mkfnode(3,I_TIMER,(yyvsp[(3) - (8)].f),(yyvsp[(5) - (8)].f),(yyvsp[(7) - (8)].f));
        !          2442:       }
        !          2443:     break;
        !          2444:
        !          2445:   case 72:
        !          2446:
        !          2447: /* Line 1455 of yacc.c  */
        !          2448: #line 327 "parse.y"
        !          2449:     {
        !          2450:         searchf(parif,(yyvsp[(3) - (4)].p),(FUNC *)&val);
        !          2451:         if ( !val )
        !          2452:           mkparif((yyvsp[(3) - (4)].p),(FUNC *)&val);
        !          2453:         (yyval.f) = mkfnode(2,I_FUNC,val,NULLP);
        !          2454:       }
        !          2455:     break;
        !          2456:
        !          2457:   case 73:
        !          2458:
        !          2459: /* Line 1455 of yacc.c  */
        !          2460: #line 334 "parse.y"
        !          2461:     {
        !          2462:         searchf(parif,(yyvsp[(3) - (6)].p),(FUNC *)&val);
        !          2463:         if ( !val )
        !          2464:           mkparif((yyvsp[(3) - (6)].p),(FUNC *)&val);
        !          2465:         (yyval.f) = mkfnode(2,I_FUNC,val,mkfnode(1,I_LIST,(yyvsp[(5) - (6)].n)));
        !          2466:       }
        !          2467:     break;
        !          2468:
        !          2469:   case 74:
        !          2470:
        !          2471: /* Line 1455 of yacc.c  */
        !          2472: #line 341 "parse.y"
        !          2473:     {
        !          2474:         (yyval.f) = mkfnode(2,I_IFUNC,(yyvsp[(3) - (7)].f),mkfnode(1,I_LIST,(yyvsp[(6) - (7)].n)),NULLP);
        !          2475:       }
        !          2476:     break;
        !          2477:
        !          2478:   case 75:
        !          2479:
        !          2480: /* Line 1455 of yacc.c  */
        !          2481: #line 345 "parse.y"
        !          2482:     {
        !          2483:         (yyval.f) = mkfnode(3,I_IFUNC,(yyvsp[(3) - (9)].f),mkfnode(1,I_LIST,(yyvsp[(6) - (9)].n)),
        !          2484:           mkfnode(1,I_LIST,(yyvsp[(8) - (9)].n)));
        !          2485:       }
        !          2486:     break;
        !          2487:
        !          2488:   case 76:
        !          2489:
        !          2490: /* Line 1455 of yacc.c  */
        !          2491: #line 350 "parse.y"
        !          2492:     {
        !          2493:         if ( main_parser || allow_create_var )
        !          2494:           t = mkfnode(2,I_PVAR,makepvar((yyvsp[(1) - (4)].p)),NULLP);
        !          2495:         else {
        !          2496:           ind = searchpvar((yyvsp[(1) - (4)].p));
        !          2497:           if ( ind == -1 ) {
        !          2498:             fprintf(stderr,"%s : no such variable.\n",(yyvsp[(1) - (4)].p));
        !          2499:             YYABORT;
        !          2500:           } else
        !          2501:             t = mkfnode(2,I_PVAR,ind,NULLP);
        !          2502:         }
        !          2503:         (yyval.f) = mkfnode(2,I_IFUNC,t,mkfnode(1,I_LIST,(yyvsp[(3) - (4)].n)));
        !          2504:       }
        !          2505:     break;
        !          2506:
        !          2507:   case 77:
        !          2508:
        !          2509: /* Line 1455 of yacc.c  */
        !          2510: #line 364 "parse.y"
        !          2511:     { (yyval.f) = mkfnode(1,I_CAR,(yyvsp[(3) - (4)].f)); }
        !          2512:     break;
        !          2513:
        !          2514:   case 78:
        !          2515:
        !          2516: /* Line 1455 of yacc.c  */
        !          2517: #line 366 "parse.y"
        !          2518:     { (yyval.f) = mkfnode(1,I_CDR,(yyvsp[(3) - (4)].f)); }
        !          2519:     break;
        !          2520:
        !          2521:   case 79:
        !          2522:
        !          2523: /* Line 1455 of yacc.c  */
        !          2524: #line 368 "parse.y"
        !          2525:     { (yyval.f) = mkfnode(1,I_PAREN,(yyvsp[(2) - (3)].f)); }
        !          2526:     break;
        !          2527:
        !          2528:   case 80:
        !          2529:
        !          2530: /* Line 1455 of yacc.c  */
        !          2531: #line 370 "parse.y"
        !          2532:     {
        !          2533:         if ( main_parser || allow_create_var )
        !          2534:           (yyval.f) = mkfnode(2,I_PVAR,makepvar((yyvsp[(1) - (1)].p)),NULLP);
        !          2535:         else {
        !          2536:           ind = searchpvar((yyvsp[(1) - (1)].p));
        !          2537:           if ( ind == -1 ) {
        !          2538:             fprintf(stderr,"%s : no such variable.\n",(yyvsp[(1) - (1)].p));
        !          2539:             YYABORT;
        !          2540:           } else
        !          2541:             (yyval.f) = mkfnode(2,I_PVAR,ind,NULLP);
        !          2542:         }
        !          2543:       }
        !          2544:     break;
        !          2545:
        !          2546:   case 81:
        !          2547:
        !          2548: /* Line 1455 of yacc.c  */
        !          2549: #line 383 "parse.y"
        !          2550:     {
        !          2551:         if ( (yyvsp[(1) - (4)].f)->id == I_PVAR || (yyvsp[(1) - (4)].f)->id == I_INDEX ) {
        !          2552:           appendtonode((NODE)(yyvsp[(1) - (4)].f)->arg[1],(pointer)(yyvsp[(3) - (4)].f),&a);
        !          2553:           (yyvsp[(1) - (4)].f)->arg[1] = (pointer)a; (yyval.f) = (yyvsp[(1) - (4)].f);
        !          2554:         } else {
        !          2555:           MKNODE(a,(yyvsp[(3) - (4)].f),0);
        !          2556:           (yyval.f) = mkfnode(2,I_INDEX,(pointer)(yyvsp[(1) - (4)].f),a);
        !          2557:         }
        !          2558:       }
        !          2559:     break;
        !          2560:
        !          2561:   case 82:
        !          2562:
        !          2563: /* Line 1455 of yacc.c  */
        !          2564: #line 393 "parse.y"
        !          2565:     { (yyval.f) = mkfnode(2,I_POINT,(yyvsp[(1) - (3)].f),(yyvsp[(3) - (3)].p)); }
        !          2566:     break;
        !          2567:
        !          2568:   case 83:
        !          2569:
        !          2570: /* Line 1455 of yacc.c  */
        !          2571: #line 396 "parse.y"
        !          2572:     { (yyval.f) = (yyvsp[(1) - (1)].f); }
        !          2573:     break;
        !          2574:
        !          2575:   case 84:
        !          2576:
        !          2577: /* Line 1455 of yacc.c  */
        !          2578: #line 398 "parse.y"
        !          2579:     { (yyval.f) = mkfnode(3,I_CAST,structtoindex((yyvsp[(3) - (5)].p)),(yyvsp[(5) - (5)].f),NULLP); }
        !          2580:     break;
        !          2581:
        !          2582:   case 85:
        !          2583:
        !          2584: /* Line 1455 of yacc.c  */
        !          2585: #line 400 "parse.y"
        !          2586:     { (yyval.f) = mkfnode(2,I_ASSPVAR,(yyvsp[(1) - (3)].f),(yyvsp[(3) - (3)].f)); }
        !          2587:     break;
        !          2588:
        !          2589:   case 86:
        !          2590:
        !          2591: /* Line 1455 of yacc.c  */
        !          2592: #line 402 "parse.y"
        !          2593:     { (yyval.f) = mkfnode(2,I_ASSPVAR,(yyvsp[(1) - (3)].f),mkfnode(3,I_BOP,(yyvsp[(2) - (3)].p),(yyvsp[(1) - (3)].f),(yyvsp[(3) - (3)].f))); }
        !          2594:     break;
        !          2595:
        !          2596:   case 87:
        !          2597:
        !          2598: /* Line 1455 of yacc.c  */
        !          2599: #line 404 "parse.y"
        !          2600:     { (yyval.f) = mkfnode(2,I_POSTSELF,(yyvsp[(2) - (2)].p),(yyvsp[(1) - (2)].f)); }
        !          2601:     break;
        !          2602:
        !          2603:   case 88:
        !          2604:
        !          2605: /* Line 1455 of yacc.c  */
        !          2606: #line 406 "parse.y"
        !          2607:     { (yyval.f) = mkfnode(2,I_PRESELF,(yyvsp[(1) - (2)].p),(yyvsp[(2) - (2)].f)); }
        !          2608:     break;
        !          2609:
        !          2610:   case 89:
        !          2611:
        !          2612: /* Line 1455 of yacc.c  */
        !          2613: #line 408 "parse.y"
        !          2614:     { (yyval.f) = mkfnode(1,I_LIST,(yyvsp[(2) - (3)].n)); }
        !          2615:     break;
        !          2616:
        !          2617:   case 90:
        !          2618:
        !          2619: /* Line 1455 of yacc.c  */
        !          2620: #line 410 "parse.y"
        !          2621:     { (yyval.f) = (yyvsp[(2) - (2)].f); }
        !          2622:     break;
        !          2623:
        !          2624:   case 91:
        !          2625:
        !          2626: /* Line 1455 of yacc.c  */
        !          2627: #line 412 "parse.y"
        !          2628:     { (yyval.f) = mkfnode(1,I_MINUS,(yyvsp[(2) - (2)].f)); }
        !          2629:     break;
        !          2630:
        !          2631:   case 92:
        !          2632:
        !          2633: /* Line 1455 of yacc.c  */
        !          2634: #line 414 "parse.y"
        !          2635:     { (yyval.f) = mkfnode(3,I_BOP,(yyvsp[(2) - (3)].p),(yyvsp[(1) - (3)].f),(yyvsp[(3) - (3)].f)); }
        !          2636:     break;
        !          2637:
        !          2638:   case 93:
        !          2639:
        !          2640: /* Line 1455 of yacc.c  */
        !          2641: #line 416 "parse.y"
        !          2642:     { (yyval.f) = mkfnode(3,I_BOP,(yyvsp[(2) - (3)].p),(yyvsp[(1) - (3)].f),(yyvsp[(3) - (3)].f)); }
        !          2643:     break;
        !          2644:
        !          2645:   case 94:
        !          2646:
        !          2647: /* Line 1455 of yacc.c  */
        !          2648: #line 418 "parse.y"
        !          2649:     { (yyval.f) = mkfnode(3,I_BOP,(yyvsp[(2) - (3)].p),(yyvsp[(1) - (3)].f),(yyvsp[(3) - (3)].f)); }
        !          2650:     break;
        !          2651:
        !          2652:   case 95:
        !          2653:
        !          2654: /* Line 1455 of yacc.c  */
        !          2655: #line 420 "parse.y"
        !          2656:     { (yyval.f) = mkfnode(3,I_BOP,(yyvsp[(2) - (3)].p),(yyvsp[(1) - (3)].f),(yyvsp[(3) - (3)].f)); }
        !          2657:     break;
        !          2658:
        !          2659:   case 96:
        !          2660:
        !          2661: /* Line 1455 of yacc.c  */
        !          2662: #line 422 "parse.y"
        !          2663:     { (yyval.f) = mkfnode(3,I_BOP,(yyvsp[(2) - (3)].p),(yyvsp[(1) - (3)].f),(yyvsp[(3) - (3)].f)); }
        !          2664:     break;
        !          2665:
        !          2666:   case 97:
        !          2667:
        !          2668: /* Line 1455 of yacc.c  */
        !          2669: #line 424 "parse.y"
        !          2670:     { (yyval.f) = mkfnode(3,I_BOP,(yyvsp[(2) - (3)].p),(yyvsp[(1) - (3)].f),(yyvsp[(3) - (3)].f)); }
        !          2671:     break;
        !          2672:
        !          2673:   case 98:
        !          2674:
        !          2675: /* Line 1455 of yacc.c  */
        !          2676: #line 426 "parse.y"
        !          2677:     { (yyval.f) = mkfnode(3,I_COP,(yyvsp[(2) - (3)].i),(yyvsp[(1) - (3)].f),(yyvsp[(3) - (3)].f)); }
        !          2678:     break;
        !          2679:
        !          2680:   case 99:
        !          2681:
        !          2682: /* Line 1455 of yacc.c  */
        !          2683: #line 428 "parse.y"
        !          2684:     { (yyval.f) = mkfnode(1,I_NOT,(yyvsp[(2) - (2)].f)); }
        !          2685:     break;
        !          2686:
        !          2687:   case 100:
        !          2688:
        !          2689: /* Line 1455 of yacc.c  */
        !          2690: #line 430 "parse.y"
        !          2691:     { (yyval.f) = mkfnode(2,I_OR,(yyvsp[(1) - (3)].f),(yyvsp[(3) - (3)].f)); }
        !          2692:     break;
        !          2693:
        !          2694:   case 101:
        !          2695:
        !          2696: /* Line 1455 of yacc.c  */
        !          2697: #line 432 "parse.y"
        !          2698:     { (yyval.f) = mkfnode(2,I_AND,(yyvsp[(1) - (3)].f),(yyvsp[(3) - (3)].f)); }
        !          2699:     break;
        !          2700:
        !          2701:   case 102:
        !          2702:
        !          2703: /* Line 1455 of yacc.c  */
        !          2704: #line 434 "parse.y"
        !          2705:     { (yyval.f) = mkfnode(3,I_LOP,(yyvsp[(1) - (2)].i),(yyvsp[(2) - (2)].f),NULLP); }
        !          2706:     break;
        !          2707:
        !          2708:   case 103:
        !          2709:
        !          2710: /* Line 1455 of yacc.c  */
        !          2711: #line 436 "parse.y"
        !          2712:     { (yyval.f) = mkfnode(3,I_LOP,(yyvsp[(2) - (3)].i),(yyvsp[(1) - (3)].f),(yyvsp[(3) - (3)].f)); }
        !          2713:     break;
        !          2714:
        !          2715:   case 104:
        !          2716:
        !          2717: /* Line 1455 of yacc.c  */
        !          2718: #line 438 "parse.y"
        !          2719:     { (yyval.f) = mkfnode(3,I_LOP,(yyvsp[(2) - (3)].i),(yyvsp[(1) - (3)].f),(yyvsp[(3) - (3)].f)); }
        !          2720:     break;
        !          2721:
        !          2722:   case 105:
        !          2723:
        !          2724: /* Line 1455 of yacc.c  */
        !          2725: #line 440 "parse.y"
        !          2726:     { (yyval.f) = mkfnode(3,I_LOP,(yyvsp[(2) - (3)].i),(yyvsp[(1) - (3)].f),(yyvsp[(3) - (3)].f)); }
        !          2727:     break;
        !          2728:
        !          2729:   case 106:
        !          2730:
        !          2731: /* Line 1455 of yacc.c  */
        !          2732: #line 442 "parse.y"
        !          2733:     { (yyval.f) = mkfnode(3,I_LOP,(yyvsp[(2) - (3)].i),(yyvsp[(1) - (3)].f),(yyvsp[(3) - (3)].f)); }
        !          2734:     break;
        !          2735:
        !          2736:   case 107:
        !          2737:
        !          2738: /* Line 1455 of yacc.c  */
        !          2739: #line 444 "parse.y"
        !          2740:     { (yyval.f) = mkfnode(3,I_LOP,(yyvsp[(2) - (3)].i),(yyvsp[(1) - (3)].f),(yyvsp[(3) - (3)].f)); }
        !          2741:     break;
        !          2742:
        !          2743:   case 108:
        !          2744:
        !          2745: /* Line 1455 of yacc.c  */
        !          2746: #line 446 "parse.y"
        !          2747:     { (yyval.f) = mkfnode(3,I_LOP,(yyvsp[(2) - (3)].i),(yyvsp[(1) - (3)].f),(yyvsp[(3) - (3)].f)); }
        !          2748:     break;
        !          2749:
        !          2750:   case 109:
        !          2751:
        !          2752: /* Line 1455 of yacc.c  */
        !          2753: #line 448 "parse.y"
        !          2754:     { (yyval.f) = mkfnode(3,I_CE,(yyvsp[(1) - (5)].f),(yyvsp[(3) - (5)].f),(yyvsp[(5) - (5)].f)); }
        !          2755:     break;
        !          2756:
        !          2757:   case 110:
        !          2758:
        !          2759: /* Line 1455 of yacc.c  */
        !          2760: #line 450 "parse.y"
        !          2761:     { (yyval.f) = mkfnode(1,I_EV,(yyvsp[(2) - (3)].n)); }
        !          2762:     break;
        !          2763:
        !          2764:   case 111:
        !          2765:
        !          2766: /* Line 1455 of yacc.c  */
        !          2767: #line 452 "parse.y"
        !          2768:     { (yyval.f) = mkfnode(1,I_NEWCOMP,(int)structtoindex((yyvsp[(3) - (4)].p))); }
        !          2769:     break;
        !          2770:
        !          2771:   case 112:
        !          2772:
        !          2773: /* Line 1455 of yacc.c  */
        !          2774: #line 454 "parse.y"
        !          2775:     { MKQUOTE(quote,(yyvsp[(3) - (4)].f)); (yyval.f) = mkfnode(1,I_FORMULA,(pointer)quote); }
        !          2776:     break;
        !          2777:
        !          2778:   case 113:
        !          2779:
        !          2780: /* Line 1455 of yacc.c  */
        !          2781: #line 456 "parse.y"
        !          2782:     { (yyval.f) = mkfnode(2,I_CONS,(yyvsp[(2) - (5)].n),(yyvsp[(4) - (5)].f)); }
        !          2783:     break;
        !          2784:
        !          2785:   case 114:
        !          2786:
        !          2787: /* Line 1455 of yacc.c  */
        !          2788: #line 458 "parse.y"
        !          2789:     { MKQUOTE(quote,(yyvsp[(2) - (2)].f)); (yyval.f) = mkfnode(1,I_FORMULA,(pointer)quote); }
        !          2790:     break;
        !          2791:
        !          2792:
        !          2793:
        !          2794: /* Line 1455 of yacc.c  */
        !          2795: #line 2796 "y.tab.c"
        !          2796:       default: break;
        !          2797:     }
        !          2798:   YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
        !          2799:
        !          2800:   YYPOPSTACK (yylen);
        !          2801:   yylen = 0;
        !          2802:   YY_STACK_PRINT (yyss, yyssp);
        !          2803:
        !          2804:   *++yyvsp = yyval;
        !          2805:
        !          2806:   /* Now `shift' the result of the reduction.  Determine what state
        !          2807:      that goes to, based on the state we popped back to and the rule
        !          2808:      number reduced by.  */
        !          2809:
        !          2810:   yyn = yyr1[yyn];
        !          2811:
        !          2812:   yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
        !          2813:   if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
        !          2814:     yystate = yytable[yystate];
        !          2815:   else
        !          2816:     yystate = yydefgoto[yyn - YYNTOKENS];
        !          2817:
        !          2818:   goto yynewstate;
        !          2819:
        !          2820:
        !          2821: /*------------------------------------.
        !          2822: | yyerrlab -- here on detecting error |
        !          2823: `------------------------------------*/
        !          2824: yyerrlab:
        !          2825:   /* If not already recovering from an error, report this error.  */
        !          2826:   if (!yyerrstatus)
        !          2827:     {
        !          2828:       ++yynerrs;
        !          2829: #if ! YYERROR_VERBOSE
        !          2830:       yyerror (YY_("syntax error"));
        !          2831: #else
        !          2832:       {
        !          2833:   YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
        !          2834:   if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM)
        !          2835:     {
        !          2836:       YYSIZE_T yyalloc = 2 * yysize;
        !          2837:       if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM))
        !          2838:         yyalloc = YYSTACK_ALLOC_MAXIMUM;
        !          2839:       if (yymsg != yymsgbuf)
        !          2840:         YYSTACK_FREE (yymsg);
        !          2841:       yymsg = (char *) YYSTACK_ALLOC (yyalloc);
        !          2842:       if (yymsg)
        !          2843:         yymsg_alloc = yyalloc;
        !          2844:       else
        !          2845:         {
        !          2846:     yymsg = yymsgbuf;
        !          2847:     yymsg_alloc = sizeof yymsgbuf;
        !          2848:         }
        !          2849:     }
        !          2850:
        !          2851:   if (0 < yysize && yysize <= yymsg_alloc)
        !          2852:     {
        !          2853:       (void) yysyntax_error (yymsg, yystate, yychar);
        !          2854:       yyerror (yymsg);
        !          2855:     }
        !          2856:   else
        !          2857:     {
        !          2858:       yyerror (YY_("syntax error"));
        !          2859:       if (yysize != 0)
        !          2860:         goto yyexhaustedlab;
        !          2861:     }
        !          2862:       }
        !          2863: #endif
        !          2864:     }
        !          2865:
        !          2866:
        !          2867:
        !          2868:   if (yyerrstatus == 3)
        !          2869:     {
        !          2870:       /* If just tried and failed to reuse lookahead token after an
        !          2871:    error, discard it.  */
        !          2872:
        !          2873:       if (yychar <= YYEOF)
        !          2874:   {
        !          2875:     /* Return failure if at end of input.  */
        !          2876:     if (yychar == YYEOF)
        !          2877:       YYABORT;
        !          2878:   }
        !          2879:       else
        !          2880:   {
        !          2881:     yydestruct ("Error: discarding",
        !          2882:           yytoken, &yylval);
        !          2883:     yychar = YYEMPTY;
        !          2884:   }
        !          2885:     }
        !          2886:
        !          2887:   /* Else will try to reuse lookahead token after shifting the error
        !          2888:      token.  */
        !          2889:   goto yyerrlab1;
        !          2890:
        !          2891:
        !          2892: /*---------------------------------------------------.
        !          2893: | yyerrorlab -- error raised explicitly by YYERROR.  |
        !          2894: `---------------------------------------------------*/
        !          2895: yyerrorlab:
        !          2896:
        !          2897:   /* Pacify compilers like GCC when the user code never invokes
        !          2898:      YYERROR and the label yyerrorlab therefore never appears in user
        !          2899:      code.  */
        !          2900:   if (/*CONSTCOND*/ 0)
        !          2901:      goto yyerrorlab;
        !          2902:
        !          2903:   /* Do not reclaim the symbols of the rule which action triggered
        !          2904:      this YYERROR.  */
        !          2905:   YYPOPSTACK (yylen);
        !          2906:   yylen = 0;
        !          2907:   YY_STACK_PRINT (yyss, yyssp);
        !          2908:   yystate = *yyssp;
        !          2909:   goto yyerrlab1;
        !          2910:
        !          2911:
        !          2912: /*-------------------------------------------------------------.
        !          2913: | yyerrlab1 -- common code for both syntax error and YYERROR.  |
        !          2914: `-------------------------------------------------------------*/
        !          2915: yyerrlab1:
        !          2916:   yyerrstatus = 3;  /* Each real token shifted decrements this.  */
        !          2917:
        !          2918:   for (;;)
        !          2919:     {
        !          2920:       yyn = yypact[yystate];
        !          2921:       if (yyn != YYPACT_NINF)
        !          2922:   {
        !          2923:     yyn += YYTERROR;
        !          2924:     if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
        !          2925:       {
        !          2926:         yyn = yytable[yyn];
        !          2927:         if (0 < yyn)
        !          2928:     break;
        !          2929:       }
        !          2930:   }
        !          2931:
        !          2932:       /* Pop the current state because it cannot handle the error token.  */
        !          2933:       if (yyssp == yyss)
        !          2934:   YYABORT;
        !          2935:
        !          2936:
        !          2937:       yydestruct ("Error: popping",
        !          2938:       yystos[yystate], yyvsp);
        !          2939:       YYPOPSTACK (1);
        !          2940:       yystate = *yyssp;
        !          2941:       YY_STACK_PRINT (yyss, yyssp);
        !          2942:     }
        !          2943:
        !          2944:   *++yyvsp = yylval;
        !          2945:
        !          2946:
        !          2947:   /* Shift the error token.  */
        !          2948:   YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
        !          2949:
        !          2950:   yystate = yyn;
        !          2951:   goto yynewstate;
        !          2952:
        !          2953:
        !          2954: /*-------------------------------------.
        !          2955: | yyacceptlab -- YYACCEPT comes here.  |
        !          2956: `-------------------------------------*/
        !          2957: yyacceptlab:
        !          2958:   yyresult = 0;
        !          2959:   goto yyreturn;
        !          2960:
        !          2961: /*-----------------------------------.
        !          2962: | yyabortlab -- YYABORT comes here.  |
        !          2963: `-----------------------------------*/
        !          2964: yyabortlab:
        !          2965:   yyresult = 1;
        !          2966:   goto yyreturn;
        !          2967:
        !          2968: #if !defined(yyoverflow) || YYERROR_VERBOSE
        !          2969: /*-------------------------------------------------.
        !          2970: | yyexhaustedlab -- memory exhaustion comes here.  |
        !          2971: `-------------------------------------------------*/
        !          2972: yyexhaustedlab:
        !          2973:   yyerror (YY_("memory exhausted"));
        !          2974:   yyresult = 2;
        !          2975:   /* Fall through.  */
        !          2976: #endif
        !          2977:
        !          2978: yyreturn:
        !          2979:   if (yychar != YYEMPTY)
        !          2980:      yydestruct ("Cleanup: discarding lookahead",
        !          2981:      yytoken, &yylval);
        !          2982:   /* Do not reclaim the symbols of the rule which action triggered
        !          2983:      this YYABORT or YYACCEPT.  */
        !          2984:   YYPOPSTACK (yylen);
        !          2985:   YY_STACK_PRINT (yyss, yyssp);
        !          2986:   while (yyssp != yyss)
        !          2987:     {
        !          2988:       yydestruct ("Cleanup: popping",
        !          2989:       yystos[*yyssp], yyvsp);
        !          2990:       YYPOPSTACK (1);
        !          2991:     }
        !          2992: #ifndef yyoverflow
        !          2993:   if (yyss != yyssa)
        !          2994:     YYSTACK_FREE (yyss);
        !          2995: #endif
        !          2996: #if YYERROR_VERBOSE
        !          2997:   if (yymsg != yymsgbuf)
        !          2998:     YYSTACK_FREE (yymsg);
        !          2999: #endif
        !          3000:   /* Make sure YYID is used.  */
        !          3001:   return YYID (yyresult);
        !          3002: }
        !          3003:
        !          3004:
        !          3005:
        !          3006: /* Line 1675 of yacc.c  */
        !          3007: #line 460 "parse.y"
        !          3008:
        !          3009:

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>