📄 t1.c
字号:
/* A Bison parser, made from t1.y by GNU Bison version 1.28 */#define YYBISON 1 /* Identify Bison output. */#define yyparse yyjscriptparse#define yylex yyjscriptlex#define yyerror yyjscripterror#define yylval yyjscriptlval#define yychar yyjscriptchar#define yydebug yyjscriptdebug#define yynerrs yyjscriptnerrs#define FUNCTION 257#define IF 258#define ELSE 259#define IN 260#define WITH 261#define WHILE 262#define FOR 263#define SHIFT_LEFT 264#define SHIFT_RIGHT 265#define EQ 266#define NEQ 267#define OR 268#define AND 269#define THIS 270#define B_NULL 271#define FLOAT 272#define B_TRUE 273#define B_FALSE 274#define NEW 275#define DELETE 276#define BREAK 277#define CONTINUE 278#define RETURN 279#define VAR 280#define PP 281#define MM 282#define STRING 283#define LEQ 284#define GEQ 285#define MAS 286#define DAS 287#define AAS 288#define SAS 289#define PAS 290#define RAS 291#define BAAS 292#define BOAS 293#define NUM 294#define IDENTIFIER 295#line 1 "t1.y"#include "bison2cpp.h"void yyerror(char *s);int yylex();void initFlex( const char *_code );#line 11 "t1.y"typedef union{ int vali; double vald; char *name; void *ptr;} YYSTYPE;#include <stdio.h>#ifndef __cplusplus#ifndef __STDC__#define const#endif#endif#define YYFINAL 200#define YYFLAG -32768#define YYNTBASE 64#define YYTRANSLATE(x) ((unsigned)(x) <= 295 ? yytranslate[x] : 100)static const char yytranslate[] = { 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 44, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 54, 2, 42, 43, 59, 57, 45, 58, 61, 60, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 51, 48, 55, 49, 56, 50, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 62, 2, 63, 53, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 46, 52, 47, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41};#if YYDEBUG != 0static const short yyprhs[] = { 0, 0, 1, 4, 11, 13, 16, 17, 19, 21, 25, 29, 30, 33, 35, 37, 41, 47, 51, 59, 67, 73, 76, 79, 85, 89, 91, 94, 95, 97, 101, 104, 107, 110, 112, 114, 118, 120, 124, 125, 127, 129, 132, 134, 138, 142, 146, 150, 154, 158, 162, 166, 170, 172, 178, 180, 184, 186, 190, 192, 196, 198, 202, 204, 208, 210, 214, 218, 220, 224, 228, 232, 236, 238, 242, 246, 248, 252, 256, 258, 262, 266, 268, 271, 274, 277, 280, 283, 286, 289, 293, 295, 297, 302, 306, 308, 313, 318, 320, 324, 325, 327, 329, 333, 337, 339, 341, 343, 345, 347, 349, 351};static const short yyrhs[] = { -1, 64, 65, 0, 3, 41, 42, 66, 43, 68, 0, 69, 0, 1, 44, 0, 0, 67, 0, 41, 0, 41, 45, 67, 0, 46, 69, 47, 0, 0, 70, 69, 0, 68, 0, 48, 0, 4, 72, 70, 0, 4, 72, 70, 5, 70, 0, 8, 72, 70, 0, 73, 48, 78, 48, 78, 43, 70, 0, 74, 48, 78, 48, 78, 43, 70, 0, 74, 6, 79, 43, 70, 0, 23, 71, 0, 24, 71, 0, 7, 42, 79, 43, 70, 0, 25, 78, 71, 0, 68, 0, 75, 71, 0, 0, 48, 0, 42, 79, 43, 0, 9, 42, 0, 73, 75, 0, 26, 76, 0, 80, 0, 77, 0, 77, 45, 76, 0, 41, 0, 41, 49, 80, 0, 0, 79, 0, 80, 0, 80, 79, 0, 81, 0, 81, 49, 80, 0, 81, 32, 80, 0, 81, 33, 80, 0, 81, 34, 80, 0, 81, 35, 80, 0, 81, 36, 80, 0, 81, 37, 80, 0, 81, 38, 80, 0, 81, 39, 80, 0, 82, 0, 82, 50, 80, 51, 80, 0, 83, 0, 83, 14, 82, 0, 84, 0, 84, 15, 83, 0, 85, 0, 85, 52, 84, 0, 86, 0, 86, 53, 85, 0, 87, 0, 87, 54, 86, 0, 88, 0, 88, 12, 87, 0, 88, 13, 87, 0, 89, 0, 88, 55, 89, 0, 88, 56, 89, 0, 88, 30, 89, 0, 88, 31, 89, 0, 90, 0, 90, 10, 89, 0, 90, 11, 89, 0, 91, 0, 91, 57, 90, 0, 91, 58, 90, 0, 92, 0, 92, 59, 91, 0, 92, 60, 91, 0, 95, 0, 58, 92, 0, 27, 95, 0, 28, 95, 0, 95, 27, 0, 95, 28, 0, 21, 93, 0, 22, 95, 0, 16, 61, 94, 0, 94, 0, 41, 0, 41, 42, 97, 43, 0, 41, 61, 94, 0, 96, 0, 96, 62, 79, 63, 0, 96, 42, 97, 43, 0, 99, 0, 95, 61, 41, 0, 0, 98, 0, 80, 0, 80, 45, 98, 0, 42, 79, 43, 0, 41, 0, 40, 0, 18, 0, 29, 0, 20, 0, 19, 0, 17, 0, 16, 0};#endif#if YYDEBUG != 0static const short yyrline[] = { 0, 93, 94, 97, 98, 99, 102, 103, 106, 107, 110, 113, 114, 115, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 133, 134, 137, 140, 143, 146, 147, 150, 151, 154, 155, 158, 159, 162, 163, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 178, 179, 182, 183, 186, 187, 190, 191, 194, 195, 198, 199, 202, 203, 204, 207, 208, 209, 210, 211, 214, 215, 216, 219, 220, 221, 224, 225, 226, 229, 230, 231, 232, 233, 234, 235, 236, 239, 240, 243, 244, 245, 248, 249, 250, 253, 254, 257, 258, 261, 262, 265, 266, 267, 268, 269, 270, 271, 272, 273};#endif#if YYDEBUG != 0 || defined (YYERROR_VERBOSE)static const char * const yytname[] = { "$","error","$undefined.","FUNCTION","IF","ELSE","IN","WITH","WHILE","FOR","SHIFT_LEFT","SHIFT_RIGHT","EQ","NEQ","OR","AND","THIS","B_NULL","FLOAT","B_TRUE","B_FALSE","NEW","DELETE","BREAK","CONTINUE","RETURN","VAR","PP","MM","STRING","LEQ","GEQ","MAS","DAS","AAS","SAS","PAS","RAS","BAAS","BOAS","NUM","IDENTIFIER","'('","')'","'\\n'","','","'{'","'}'","';'","'='","'?'","':'","'|'","'^'","'&'","'<'","'>'","'+'","'-'","'*'","'/'","'.'","'['","']'","input","element","parameterListOpt","parameterList","compoundStatement","statements","statement","semiOpt","condition","forParen","forBegin","variablesOrExpression","variables","variable","expressionOpt","expression","assignmentExpression","conditionalExpression","orExpression","andExpression","bitwiseOrExpression","bitwiseXorExpression","bitwiseAndExpression","equalityExpression","relationalExpression","shiftExpression","additiveExpression","multiplicativeExpression","unaryExpression","constructor","constructorCall","simpleExpression","memberExpression","argumentListOpt","argumentList","primaryExpression", NULL};#endifstatic const short yyr1[] = { 0, 64, 64, 65, 65, 65, 66, 66, 67, 67, 68, 69, 69, 69, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 71, 71, 72, 73, 74, 75, 75, 76, 76, 77, 77, 78, 78, 79, 79, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 81, 81, 82, 82, 83, 83, 84, 84, 85, 85, 86, 86, 87, 87, 87, 88, 88, 88, 88, 88, 89, 89, 89, 90, 90, 90, 91, 91, 91, 92, 92, 92, 92, 92, 92, 92, 92, 93, 93, 94, 94, 94, 95, 95, 95, 96, 96, 97, 97, 98, 98, 99, 99, 99, 99, 99, 99, 99, 99, 99};static const short yyr2[] = { 0, 0, 2, 6, 1, 2, 0, 1, 1, 3, 3, 0, 2, 1, 1, 3, 5, 3, 7, 7, 5, 2, 2, 5, 3, 1, 2, 0, 1, 3, 2, 2, 2, 1, 1, 3, 1, 3, 0, 1, 1, 2, 1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 5, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 1, 3, 3, 1, 3, 3, 3, 3, 1, 3, 3, 1, 3, 3, 1, 3, 3, 1, 2, 2, 2, 2, 2, 2, 2, 3, 1, 1, 4, 3, 1, 4, 4, 1, 3, 0, 1, 1, 3, 3, 1, 1, 1, 1, 1, 1, 1, 1};static const short yydefact[] = { 1, 0, 0, 0, 0, 0, 0, 0, 111, 110, 106, 109, 108, 0, 0, 27, 27, 38, 0, 0, 0, 107, 105, 104, 0, 11, 14, 0, 2, 13, 4, 11, 0, 0, 27, 33, 42, 52, 54, 56, 58, 60, 62, 64, 67, 72, 75, 78, 81, 94, 97, 5, 0, 0, 0, 0, 0, 30, 0, 91, 87, 90, 88, 28, 21, 22, 27, 39, 40, 36, 32, 34, 83, 84, 0, 0, 82, 12, 38, 31, 0, 38, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 85, 86, 0, 99, 0, 6, 0, 25, 15, 0, 17, 0, 99, 0, 24, 41, 0, 0, 103, 10, 0, 0, 0, 44, 45, 46, 47, 48, 49, 50, 51, 43, 0, 55, 57, 59, 61, 63, 65, 66, 70, 71, 68, 69, 73, 74, 76, 77, 79, 80, 98, 101, 0, 100, 0, 8, 0, 7, 29, 0, 0, 89, 0, 93, 37, 35, 38, 0, 38, 0, 0, 96, 95, 0, 0, 16, 23, 92, 0, 20, 0, 53, 102, 9, 3, 0, 0, 18, 19, 0, 0};static const short yydefgoto[] = { 1, 28, 166, 167, 117, 30, 31, 64, 54, 32, 33, 34, 70, 71, 66, 67, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 60, 61, 48, 49, 162, 163, 50};static const short yypact[] = {-32768, 129, -12, 4, 18, 21, 18, 24,-32768,-32768,-32768,-32768,-32768, 0, 2, 37, 37, 238, 55, 2, 2,-32768,-32768,-32768, 238, 172,-32768, 238,-32768,-32768,-32768, 172, 205, 3, 37,-32768, 45, 52, 93, 94, 56, 58, 59, -2,-32768, 16, -10, 33, -15, -27,-32768,-32768, 70, 238, 172, 238, 172,-32768, 53, -28,-32768,-32768, 54,-32768,-32768,-32768, 37,-32768, 238, 67,-32768, 74, 54, 54, 77, 75,-32768,-32768, 238,-32768, 238, 238,-32768, 238, 238, 238, 238, 238, 238, 238, 238, 238, 238, 238, 238, 238, 238, 238, 238, 238, 238, 238, 238, 238, 238, 238, 238, 238, 238, 238,-32768,-32768, 80, 238, 238, 82, 81,-32768, 121, 84,-32768, 87, 238, 87,-32768,-32768, 238, 55,-32768,-32768, 83, 91, 92,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 88,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768,-32768, 90, 98,-32768, 79, 114, 118,-32768,-32768, 172, 172,-32768, 122,-32768,-32768,-32768, 238, 172, 238, 238, 238,-32768,-32768, 82, 120,-32768,-32768,-32768, 124,-32768, 125,-32768,-32768,-32768,-32768, 172, 172,-32768,-32768, 173,-32768};static const short yypgoto[] = {-32768,-32768,-32768, -11, -1, -8, -52, -9, 168,-32768,-32768, 146, 57,-32768, -75, -19, -16,-32768, 89, 108, 109, 107, 110, -40,-32768, -14, -7, -4, 158,-32768, -83, 36,-32768, 64, 25,-32768};#define YYLAST 296static const short yytable[] = { 29, 68, 118, 130, 120, 74, 132, 65, 68, 80, 98, 99, 110, 111, 122, 113, 58, 75, 8, 9, 10, 11, 12, 77, 29, 82, 104, 105, 100, 101, 29, 21, 51, 123, 116, 114, 119, 68, 171, 68, 173, 59, 22, 23, 24, 52, 112, 106, 107, 125, 62, 81, 68, 102, 103, 72, 73, 124, 148, 149, 53, 131, 68, 55, 68, 68, 57, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 83, 84, 85, 86, 87, 88, 89, 90, 63, 150, 151, 152, 153, 154, 155, 108, 109, 91, 164, 69, 161, 68, 156, 157, 188, 92, 190, 158, 159, 161, 93, 95, 94, 174, 96, 115, 97, 121, 112, 126, 185, 186, 127, 128, 160, 129, 165, 168, 189, 169, 170, 59, 199, 2, 176, 3, 4, 177, 180, 5, 6, 7, 179, 178, 181, 182, 197, 198, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 183, 68, 184, 68, 191, 161, 187, 25, 195, 196, 22, 23, 24, 193, 200, 56, 25, 4, 26, 79, 5, 6, 7, 143, 194, 175, 76, 172, 27, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 144, 146, 145, 192, 0, 147, 0, 0, 0, 0, 22, 23, 24, 0, 0, 0, 25, 0, 26, 8, 9, 10, 11, 12, 13, 14, 0, 0, 27, 18, 19, 20, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 22, 23, 24, 0, 0, 0, 0, 0, 78, 8, 9, 10, 11, 12, 13, 14, 0, 0, 27, 0, 19, 20, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 22, 23, 24, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27};static const short yycheck[] = { 1, 17, 54, 78, 56, 24, 81, 16, 24, 6, 12, 13, 27, 28, 42, 42, 16, 25, 16, 17, 18, 19, 20, 31, 25, 34, 10, 11, 30, 31, 31, 29, 44, 61, 53, 62, 55, 53, 121, 55, 123, 41, 40, 41, 42, 41, 61, 57, 58, 68, 14, 48, 68, 55, 56, 19, 20, 66, 98, 99, 42, 80, 78, 42, 80, 81, 42, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 32, 33, 34, 35, 36, 37, 38, 39, 48, 100, 101, 102, 103, 104, 105, 59, 60, 49, 114, 41, 113, 114, 106, 107, 176, 50, 178, 108, 109, 122, 14, 52, 15, 126, 53, 42, 54, 61, 61, 49, 169, 170, 45, 43, 41, 47, 41, 43, 177, 5, 43, 41, 0, 1, 48, 3, 4, 43, 45, 7, 8, 9, 51, 48, 43, 63, 195, 196, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 45, 176, 43, 178, 179, 180, 43, 46, 43, 43, 40, 41, 42, 183, 0, 6, 46, 4, 48, 32, 7, 8, 9, 93, 184, 127, 27, 122, 58, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 94, 96, 95, 180, -1, 97, -1, -1, -1, -1, 40, 41, 42, -1, -1, -1, 46, -1, 48, 16, 17, 18, 19, 20, 21, 22, -1, -1, 58, 26, 27, 28, 29, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 40, 41, 42, -1, -1, -1, -1, -1, 48, 16, 17, 18, 19, 20, 21, 22, -1, -1, 58, -1, 27, 28, 29, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 40, 41, 42, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 58};/* -*-C-*- Note some compilers choke on comments on `#line' lines. */#line 3 "/usr/lib/bison.simple"/* This file comes from bison-1.28. *//* Skeleton output parser for bison, Copyright (C) 1984, 1989, 1990 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. *//* As a special exception, when this file is copied by Bison into a Bison output file, you may use that output file without restriction. This special exception was added by the Free Software Foundation in version 1.24 of Bison. */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -