⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 y.tab.c

📁 用YACC写的语法分析器
💻 C
📖 第 1 页 / 共 4 页
字号:
    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
    0,    0,    0,    0,    0,  -30,    0,    0,    0,    0,
    0,    0,    0,  -59,    0,    0,    0,    0,    0,  262,
    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
    0,    0,  -53,    0,    0,    0,    0,    0,    0,    0,
    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
  -54,    0,    0, -127,    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,
  246,  -44,    0,    0,    0,    0,    0,    0,    0,    0,
    0,    0,  210,    0,    0,  286,    0,    0,  554,  433,
    0,    0,  344,    0,    0,    0,    0,    0,    0,    0,
    0,    0,    0,    0,   87,    0,    0, -137,    0, -134,
    0,    0,    0,    0,    0,    0,  -35,    0,    0,    0,
    0,    0, -101,    0,    0,    0,    0,    0,    0,    0,
    0,    0,    0, -137,    0, -137, -137,    0, -109,    0,
    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
    0,  231,    0,    0,    0,    0,    0,    0,    0,    0,
  570,  481,    0,    0,    0,    0,    0,  -94,    0,    0,
    0,    0,    0,  104,    0,    0,    0,    0,    0,    0,
    0,  -90,    0,  -53,    0,  518,    0,    0,    0,    0,
 -137, -103,    0,    0,    0,  231,    0,    0,    0,  265,
  -53,    0,    0,    0,    0,    0,    0,    0,    0,    0,
 -137,    0,    0,    0,    0,    0,    0,    0,
};
const short yygindex[] = {                                      0,
    0,    0,    0,   -2,   -9,   -1,  -16,   22,    0,  517,
  487,  443,  402,    0,    0,    7,    0,  540,  521,  470,
  281,  476, -251,  -10, -243,   33,  469,  532,   36, -143,
  456,    0,  544,  -33,    0, -114,    0,    0,    0,    0,
  466,    0,    0,    0,    0,    0,  318,  361,  429,  245,
 -193, -181,    0,    0,    0,  364,  283, -292,  279,    0,
    0,    0,  464,    0,  462,    0,    0, -111,  461,    0,
    0,  535,    0,  392,    0,    0,    0,    0,  -98,    0,
  473,  398,  424,  381, -276, -248, -282,  320,  321,    0,
    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,
    0,    0, -212,    0,    0,    0,    0,    0,   35,   95,
    0,    0,    0,  251,  348,    0,  256,    0,    0,    0,
  248,  307,  308, -241,  309,  357,    0,    0,    0,    0,
    0,    0,  290,
};
#define YYTABLESIZE 985
const short yytable[] = {                                       9,
   12,   42,   49,   14,   21,   15,  221,   97,    9,   57,
   43,   96,   16,   23,  204,   36,  101,   48,  222,  292,
  173,  114,   23,  334,   48,  348,   52,  320,   36,  187,
   92,   36,  317,  180,   73,   94,  321,  301,  187,   36,
   94,  358,   13,  361,  363,  199,  302,  357,   97,   41,
  325,    8,   44,  110,  302,  127,   94,  299,  128,  129,
  130,   13,   41,  303,  131,   44,  134,  135,   44,  148,
   15,  303,   98,   41,  261,  216,   44,  360,  362,  353,
  139,   13,   36,   36,  348,   13,  145,  111,  100,   36,
    8,   36,  160,   13,  141,  304,  344,  388,  396,  320,
  173,   48,  187,  304,  142,   48,   94,  154,  321,  156,
   57,  159,  359,  180,  400,  172,   41,   41,  407,   44,
   44,  167,   94,   41,  110,   48,   44,   94,   44,  105,
   48,  170,  395,  154,  154,  107,   17,  154,   94,  108,
  170,   19,  186,  180,  180,  110,  194,  200,  371,  378,
   95,  186,  406,  184,  209,   20,  156,  170,  111,  185,
  205,  233,  340,  261,  220,  261,  191,  368,  208,   48,
  154,  212,  232,  154,  261,   26,  111,  139,  154,  111,
  180,  154,  366,  375,   50,  111,   11,    1,  180,  170,
  111,   86,  398,  379,   53,  172,  110,  184,   48,   11,
   87,  233,   89,  185,  222,  205,    1,  404,  225,  217,
   48,  234,  232,  139,  162,  186,  156,  266,  154,  376,
   11,  139,  269,   11,   88,    2,  286,   76,   60,  234,
  111,  293,   67,  261,   90,  288,   75,   11,   40,  132,
   11,   67,   16,  405,   89,   90,  165,  256,  166,  111,
  111,  170,   61,  154,  154,    8,   20,  110,  102,  307,
   93,  154,   76,   16,   55,  256,   16,  295,  132,   43,
  136,   75,   67,  144,    8,   61,   67,   67,   42,  147,
   16,  201,   15,   16,   97,  309,  158,   43,   96,   16,
   43,  111,  171,   43,  211,   13,  234,  106,  234,   42,
  336,  207,   42,   15,  156,  156,   15,  156,   97,   96,
   43,   43,   96,   16,  101,  328,  156,  126,   94,   42,
   15,  277,  234,   15,  234,  234,  293,   16,   43,  213,
   16,   94,  256,  345,  256,  327,  198,   94,  111,  111,
   48,  111,   40,  101,  153,   47,  377,  102,  101,  204,
  111,  367,  102,  204,  210,   94,  385,   13,  256,  369,
  256,  256,  364,    8,  311,  314,  203,  386,    8,  309,
  203,   31,  234,  101,  103,  156,   31,  102,  390,  234,
   47,   47,   34,  227,   48,  218,  106,   34,   50,  234,
  329,  106,  227,    8,  259,  335,  219,  337,  228,  234,
  268,   31,  229,  296,    8,  230,   28,  228,  256,  111,
   29,  229,   34,    8,  230,  256,  106,  356,  224,   94,
  298,  213,  308,   94,   28,  256,    8,   28,   29,  231,
  213,   29,   30,  318,   31,  256,   32,   33,  231,  311,
  373,   97,  232,  233,    8,   34,  306,    8,  270,   35,
  271,  232,  233,   30,   32,  272,  322,   32,   33,  382,
  324,  329,   97,  337,  323,   97,  170,   35,  374,   94,
   35,  170,  170,  342,  394,  170,  170,  170,  170,  170,
  170,  170,  170,   20,   20,  109,  109,  170,  326,  170,
   80,  402,  170,  346,  170,  170,   82,  170,  170,  170,
  347,   83,  170,  170,  170,   21,   21,   87,   87,  170,
  365,  381,  170,  389,  387,  397,  170,  170,  399,  170,
  170,  170,  170,  170,  196,  170,  170,  401,    4,  196,
  403,  408,  102,   77,  132,  102,  196,   77,   54,  196,
   99,  143,  216,  196,  185,  196,  196,  216,  216,   18,
   71,  216,  216,  137,  216,  216,  216,  216,  216,  319,
  138,  140,  196,  216,   72,  216,  157,   56,  216,  146,
  196,  216,  196,  216,  216,  216,  305,  260,  216,  216,
  216,  202,  267,  196,  196,  216,  370,  343,  216,  341,
  161,  164,  216,  216,  182,  216,  216,  216,  216,  216,
  214,  216,  133,  226,  223,  214,  214,  184,  215,  214,
  214,  291,  214,  214,  214,  214,  214,  332,  333,  384,
  316,  214,  383,  214,  392,  351,  214,  352,  315,  214,
  354,  214,  214,  214,  372,    0,  214,  214,  214,    0,
    0,  100,    0,  214,  101,    0,  214,    0,  102,    0,
  214,  214,    0,  214,  214,    0,  214,  214,    0,  214,
    0,    0,    0,    0,    8,    0,    0,    0,    0,    0,
  103,    0,   31,    0,    0,    0,    0,    0,    0,    0,
  104,    0,  105,   34,    0,    0,    0,  106,  107,    0,
    0,    0,  108,    0,  208,  208,    0,    0,    0,  208,
  109,  208,  208,  208,  208,  208,    0,    0,    0,    0,
  208,    0,  208,    0,    0,  208,    0,    0,  208,    0,
  208,  208,    0,    0,    0,  208,  208,  208,    0,    0,
    0,    0,  208,    0,    0,  208,    0,    0,    0,  208,
  208,    0,  209,  209,    0,  208,  208,  209,  208,  209,
  209,  209,  209,  209,    0,    0,    0,    0,  209,    0,
  209,    0,    0,  209,    0,    0,  209,    0,  209,  209,
    0,    0,    0,  209,  209,  209,   28,    0,  252,    0,
  209,    0,  252,  209,    0,   28,    0,  209,  209,    0,
    0,    0,   28,  209,  209,    0,  209,   28,  252,   28,
    0,    0,   28,    0,    0,   28,  252,   28,   28,   28,
    0,    0,   28,  252,   28,  206,  206,  252,    0,   28,
  206,  252,  206,  206,  206,  206,   28,   28,    0,   28,
   28,  207,  207,    0,    0,    0,  207,    0,  207,  207,
  207,  207,    0,    0,    0,    0,    0,  206,    0,    0,
    0,    0,    0,    0,    0,    0,  206,    0,    0,    0,
  206,  206,    0,  207,   28,    0,  206,  206,   29,  206,
    0,    0,  207,    0,    0,    0,  207,  207,    0,    0,
    0,    0,  207,  207,    8,  207,    0,    0,  270,   28,
  271,    0,   31,   29,   32,  272,    0,    0,    0,    0,
    0,    0,    0,   34,    0,    0,  310,   35,    0,    8,
    0,   22,    0,  270,    0,  271,   22,   31,   22,   32,
  272,   22,    0,    0,   22,    0,   22,   22,   34,    0,
    0,   22,   35,   22,   23,    0,    0,    0,   22,   23,
    0,   23,    0,    0,   23,   22,   22,   23,    0,   23,
   23,    0,    0,    0,   23,    0,   23,   74,    0,    0,
    0,   23,   75,    0,   76,    0,    0,   77,   23,   23,
   78,    0,   79,   80,    0,    0,    0,   81,    0,   82,
    0,    0,    0,    0,   83,
};
const short yycheck[] = {                                       1,
    2,    0,   19,    6,   14,    0,  200,    0,   10,   26,
    0,    0,    0,   15,  158,   17,    0,   19,  200,  232,
  132,   55,   24,  300,   26,  318,   20,  279,   30,  144,
   41,   33,  274,  132,   37,  263,  280,  259,  153,   41,
  263,  324,  308,  326,  327,  272,  268,  324,   51,   17,
  316,  281,   17,   55,  268,   58,  263,  272,   60,   61,
   63,  308,   30,  285,   67,   30,   69,   70,   33,  260,
  315,  285,   51,   41,  218,  303,   41,  326,  327,  321,
   91,  308,   84,   85,  377,  308,  103,   55,  258,   91,
  281,   93,  126,  308,   96,  317,  303,  374,  381,  351,
  212,  103,  217,  317,   98,  107,  263,  109,  352,  111,
  127,  114,  325,  212,  391,  132,   84,   85,  401,   84,
   85,  131,  263,   91,  126,  127,   91,  263,   93,  299,
  132,  259,  381,  271,  272,  305,  273,  272,  263,  309,
  268,  287,  144,  271,  272,  147,  148,  150,  342,  270,
  307,  153,  401,  263,  171,  284,  158,  285,  126,  263,
  162,  263,  306,  307,  198,  309,  307,  303,  170,  171,
  308,  174,  263,  308,  318,  318,  144,  272,  316,  147,
  308,  316,  307,  272,  265,  153,  264,  264,  316,  317,
  158,  257,  386,  314,  268,  212,  198,  307,  200,  277,
  266,  303,  262,  307,  386,  207,  264,  272,  210,  188,
  212,  213,  303,  308,  262,  217,  218,  219,  272,  308,
  298,  316,  224,  301,  290,  302,  228,  272,  277,  231,
  198,  233,  263,  377,  294,  229,  272,  315,  269,  287,
  318,  272,  277,  308,  310,  311,  274,  213,  276,  217,
  218,  277,  301,  308,  308,  281,  284,  259,  265,  262,
  312,  316,  307,  298,  273,  231,  301,  233,  287,  277,
  307,  307,  303,  285,  281,  301,  307,  308,  277,  294,
  315,  272,  277,  318,  277,  264,  269,  277,  277,  277,
  298,  259,  318,  301,  307,  308,  298,  304,  300,  298,
  302,  262,  301,  298,  306,  307,  301,  309,  301,  298,
  318,  301,  301,  301,  298,  294,  318,  262,  263,  318,
  315,  227,  324,  318,  326,  327,  328,  315,  318,  298,
  318,  263,  298,  312,  300,  267,  262,  263,  306,  307,
  342,  309,  269,  261,  294,  272,  349,  265,  261,  263,
  318,  330,  265,  267,  262,  263,  307,  308,  324,  338,
  326,  327,  328,  281,  270,  271,  263,  370,  281,  348,
  267,  289,  374,  261,  287,  377,  289,  265,  296,  381,
  307,  308,  300,  260,  386,  294,  304,  300,  265,  391,
  296,  304,  260,  281,  294,  301,  262,  303,  275,  401,
  272,  289,  279,  287,  281,  282,  261,  275,  374,  377,
  265,  279,  300,  281,  282,  381,  304,  323,  262,  263,
  262,  298,  262,  263,  261,  391,  281,  261,  265,  306,
  298,  265,  287,  294,  289,  401,  291,  292,  306,  345,
  346,  277,  319,  320,  281,  300,  269,  281,  285,  304,
  287,  319,  320,  287,  291,  292,  312,  291,  292,  365,
  313,  367,  298,  369,  259,  301,  257,  304,  262,  263,
  304,  262,  263,  287,  380,  266,  267,  268,  269,  270,
  271,  272,  273,  307,  308,  307,  308,  278,  267,  280,
  289,  397,  283,  269,  285,  286,  295,  288,  289,  290,
  307,  300,  293,  294,  295,  307,  308,  262,  263,  300,
  262,  271,  303,  272,  307,  262,  307,  308,  262,  310,
  311,  312,  313,  314,  260,  316,  317,  267,  308,  265,
  307,  272,    0,  272,  308,  298,  272,  307,   22,  275,
   54,   99,  257,  279,  143,  281,  282,  262,  263,   10,
   30,  266,  267,   84,  269,  270,  271,  272,  273,  279,
   85,   93,  298,  278,   33,  280,  111,   24,  283,  104,
  306,  286,  308,  288,  289,  290,  259,  217,  293,  294,
  295,  153,  219,  319,  320,  300,  342,  309,  303,  307,
  127,  130,  307,  308,  134,  310,  311,  312,  313,  314,
  257,  316,   68,  212,  207,  262,  263,  135,  185,  266,
  267,  231,  269,  270,  271,  272,  273,  298,  298,  369,
  273,  278,  367,  280,  377,  319,  283,  320,  272,  286,
  322,  288,  289,  290,  345,   -1,  293,  294,  295,   -1,
   -1,  258,   -1,  300,  261,   -1,  303,   -1,  265,   -1,
  307,  308,   -1,  310,  311,   -1,  313,  314,   -1,  316,
   -1,   -1,   -1,   -1,  281,   -1,   -1,   -1,   -1,   -1,
  287,   -1,  289,   -1,   -1,   -1,   -1,   -1,   -1,   -1,
  297,   -1,  299,  300,   -1,   -1,   -1,  304,  305,   -1,
   -1,   -1,  309,   -1,  262,  263,   -1,   -1,   -1,  267,
  317,  269,  270,  271,  272,  273,   -1,   -1,   -1,   -1,
  278,   -1,  280,   -1,   -1,  283,   -1,   -1,  286,   -1,
  288,  289,   -1,   -1,   -1,  293,  294,  295,   -1,   -1,
   -1,   -1,  300,   -1,   -1,  303,   -1,   -1,   -1,  307,
  308,   -1,  262,  263,   -1,  313,  314,  267,  316,  269,
  270,  271,  272,  273,   -1,   -1,   -1,   -1,  278,   -1,
  280,   -1,   -1,  283,   -1,   -1,  286,   -1,  288,  289,
   -1,   -1,   -1,  293,  294,  295,  257,   -1,  261,   -1,
  300,   -1,  265,  303,   -1,  266,   -1,  307,  308,   -1,
   -1,   -1,  273,  313,  314,   -1,  316,  278,  281,  280,
   -1,   -1,  283,   -1,   -1,  286,  289,  288,  289,  290,
   -1,   -1,  293,  296,  295,  262,  263,  300,   -1,  300,
  267,  304,  269,  270,  271,  272,  307,  308,   -1,  310,
  311,  262,  263,   -1,   -1,   -1,  267,   -1,  269,  270,
  271,  272,   -1,   -1,   -1,   -1,   -1,  294,   -1,   -1,
   -1,   -1,   -1,   -1,   -1,   -1,  303,   -1,   -1,   -1,
  307,  308,   -1,  294,  261,   -1,  313,  314,  265,  316,
   -1,   -1,  303,   -1,   -1,   -1,  307,  308,   -1,   -1,
   -1,   -1,  313,  314,  281,  316,   -1,   -1,  285,  261,
  287,   -1,  289,  265,  291,  292,   -1,   -1,   -1,   -1,
   -1,   -1,   -1,  300,   -1,   -1,  303,  304,   -1,  281,
   -1,  273,   -1,  285,   -1,  287,  278,  289,  280,  291,
  292,  283,   -1,   -1,  286,   -1,  288,  289,  300,   -1,
   -1,  293,  304,  295,  273,   -1,   -1,   -1,  300,  278,
   -1,  280,   -1,   -1,  283,  307,  308,  286,   -1,  288,
  289,   -1,   -1,   -1,  293,   -1,  295,  273,   -1,   -1,
   -1,  300,  278,   -1,  280,   -1,   -1,  283,  307,  308,
  286,   -1,  288,  289,   -1,   -1,   -1,  293,   -1,  295,
   -1,   -1,   -1,   -1,  300,
};
#define YYFINAL 3
#ifndef YYDEBUG
#define YYDEBUG 0
#endif
#define YYMAXTOKEN 320
#if YYDEBUG
const char * const yyname[] = {
"end-of-file",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,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,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,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,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,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,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,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,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,0,0,0,0,0,0,0,0,0,0,0,0,0,"AND","ARRAY","ASSIGNMENT","CASE",
"CHARACTER_STRING","COLON","COMMA","CONST","DIGSEQ","DIV","DO","DOT","DOTDOT",
"DOWNTO","ELSE","END","EQUAL","EXTERNAL","FOR","FORWARD","FUNCTION","GE","GOTO",
"GT","IDENTIFIER","IF","IN","LABEL","LBRAC","LE","LPAREN","LT","MINUS","MOD",
"NIL","NOT","NOTEQUAL","OF","OR","OTHERWISE","PACKED","PBEGIN","PFILE","PLUS",
"PROCEDURE","PROGRAM","RBRAC","REALNUMBER","RECORD","REPEAT","RPAREN",
"SEMICOLON","SET","SLASH","STAR","STARSTAR","THEN","TO","TYPE","UNTIL",
"UPARROW","VAR","WHILE","WITH",
};
const char * const yyrule[] = {
"$accept : file",
"file : program",
"file : module",
"program : program_heading semicolon block DOT",
"program_heading : PROGRAM identifier",
"program_heading : PROGRAM identifier LPAREN identifier_list RPAREN",
"identifier_list : identifier_list comma identifier",

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -