📄 c-parse.tab.c
字号:
/* A Bison parser, made from ./c-parse.y */#define YYBISON 1 /* Identify Bison output. */#define IDENTIFIER 258#define TYPENAME 259#define SCSPEC 260#define TYPESPEC 261#define TYPE_QUAL 262#define CONSTANT 263#define STRING 264#define ELLIPSIS 265#define SIZEOF 266#define ENUM 267#define STRUCT 268#define UNION 269#define IF 270#define ELSE 271#define WHILE 272#define DO 273#define FOR 274#define SWITCH 275#define CASE 276#define DEFAULT 277#define BREAK 278#define CONTINUE 279#define RETURN 280#define GOTO 281#define ASM 282#define TYPEOF 283#define ALIGNOF 284#define ATTRIBUTE 285#define ASSIGN 286#define OROR 287#define ANDAND 288#define EQCOMPARE 289#define ARITHCOMPARE 290#define LSHIFT 291#define RSHIFT 292#define UNARY 293#define PLUSPLUS 294#define MINUSMINUS 295#define HYPERUNARY 296#define POINTSAT 297#line 39 "./c-parse.y"#include "config.h"#include "tree.h"#include "input.h"#include "c-parse.h"#include "c-tree.h"#include <stdio.h>#include <errno.h>#ifndef errnoextern int errno;#endifvoid yyerror ();/* Cause the `yydebug' variable to be defined. */#define YYDEBUG 1#line 61 "./c-parse.y"typedef union {long itype; tree ttype; enum tree_code code; } YYSTYPE;#line 154 "./c-parse.y"/* the declaration found for the last IDENTIFIER token read in. yylex must look this up to detect typedefs, which get token type TYPENAME, so it is left around in case the identifier is not a typedef but is used in a context which makes it a reference to a variable. */static tree lastiddecl;static tree make_pointer_declarator ();static tree combine_strings ();static void reinit_parse_for_function ();/* List of types and structure classes of the current declaration. */tree current_declspecs;/* Stack of saved values of current_declspecs. */tree declspec_stack;int undeclared_variable_notice; /* 1 if we explained undeclared var errors. */static int yylex ();#ifndef YYLTYPEtypedef struct yyltype { int timestamp; int first_line; int first_column; int last_line; int last_column; char *text; } yyltype;#define YYLTYPE yyltype#endif#include <stdio.h>#ifndef __STDC__#define const#endif#define YYFINAL 515#define YYFLAG -32768#define YYNTBASE 65#define YYTRANSLATE(x) ((unsigned)(x) <= 297 ? yytranslate[x] : 172)static const char yytranslate[] = { 0, 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, 61, 2, 2, 2, 48, 39, 2, 55, 57, 46, 44, 62, 45, 54, 47, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 34, 58, 2, 32, 2, 33, 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, 56, 2, 64, 38, 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, 63, 37, 59, 60, 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, 2, 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, 35, 36, 40, 41, 42, 43, 49, 50, 51, 52, 53};static const short yyprhs[] = { 0, 0, 1, 3, 4, 7, 8, 12, 14, 16, 22, 26, 31, 36, 39, 42, 45, 48, 50, 51, 52, 60, 65, 66, 67, 75, 80, 81, 82, 89, 93, 95, 97, 99, 101, 103, 105, 107, 109, 111, 113, 114, 116, 118, 122, 124, 127, 130, 133, 138, 141, 146, 148, 153, 161, 163, 167, 171, 175, 179, 183, 187, 191, 195, 199, 203, 207, 211, 215, 219, 225, 229, 233, 235, 237, 239, 243, 247, 248, 253, 258, 263, 267, 271, 274, 277, 279, 282, 283, 285, 287, 289, 292, 295, 296, 301, 306, 309, 312, 315, 319, 320, 323, 326, 328, 330, 333, 336, 339, 343, 344, 347, 349, 351, 353, 358, 363, 365, 367, 369, 371, 375, 377, 381, 382, 387, 388, 395, 399, 400, 407, 411, 412, 419, 421, 425, 427, 432, 437, 439, 442, 446, 451, 453, 455, 459, 461, 463, 467, 471, 476, 480, 484, 486, 490, 495, 499, 503, 505, 509, 513, 517, 522, 526, 528, 529, 536, 541, 544, 545, 552, 557, 560, 561, 569, 570, 577, 580, 581, 583, 584, 586, 588, 591, 592, 596, 599, 603, 607, 609, 610, 612, 616, 619, 624, 627, 629, 633, 635, 639, 642, 645, 646, 648, 650, 653, 654, 657, 661, 665, 668, 672, 677, 681, 684, 688, 691, 693, 696, 699, 700, 702, 705, 706, 708, 711, 714, 720, 725, 730, 731, 738, 740, 743, 744, 749, 751, 752, 753, 761, 762, 763, 773, 774, 775, 776, 789, 790, 797, 798, 804, 805, 810, 813, 816, 819, 823, 830, 839, 850, 863, 867, 868, 873, 875, 876, 878, 879, 881, 882, 884, 886, 890, 895, 897, 901, 902, 905, 906, 909, 912, 915, 918, 921, 924, 925, 927, 931, 933, 937, 940, 943, 946, 949, 952, 954};static const short yyrhs[] = { -1, 66, 0, 0, 67, 69, 0, 0, 66, 68, 69, 0, 71, 0, 70, 0, 27, 55, 88, 57, 58, 0, 91, 101, 58, 0, 95, 91, 101, 58, 0, 93, 91, 100, 58, 0, 95, 58, 0, 93, 58, 0, 1, 58, 0, 1, 59, 0, 58, 0, 0, 0, 93, 91, 112, 72, 89, 73, 139, 0, 93, 91, 112, 1, 0, 0, 0, 95, 91, 115, 74, 89, 75, 139, 0, 95, 91, 115, 1, 0, 0, 0, 91, 115, 76, 89, 77, 139, 0, 91, 115, 1, 0, 3, 0, 4, 0, 39, 0, 45, 0, 44, 0, 50, 0, 51, 0, 60, 0, 61, 0, 82, 0, 0, 82, 0, 85, 0, 82, 62, 85, 0, 86, 0, 46, 84, 0, 79, 84, 0, 11, 83, 0, 11, 55, 130, 57, 0, 29, 83, 0, 29, 55, 130, 57, 0, 83, 0, 55, 130, 57, 84, 0, 55, 130, 57, 63, 111, 121, 59, 0, 84, 0, 85, 44, 85, 0, 85, 45, 85, 0, 85, 46, 85, 0, 85, 47, 85, 0, 85, 48, 85, 0, 85, 42, 85, 0, 85, 43, 85, 0, 85, 41, 85, 0, 85, 40, 85, 0, 85, 39, 85, 0, 85, 37, 85, 0, 85, 38, 85, 0, 85, 36, 85, 0, 85, 35, 85, 0, 85, 33, 157, 34, 85, 0, 85, 32, 85, 0, 85, 31, 85, 0, 3, 0, 8, 0, 88, 0, 55, 80, 57, 0, 55, 1, 57, 0, 0, 55, 87, 140, 57, 0, 86, 55, 81, 57, 0, 86, 56, 80, 64, 0, 86, 54, 78, 0, 86, 53, 78, 0, 86, 50, 0, 86, 51, 0, 9, 0, 88, 9, 0, 0, 90, 0, 92, 0, 137, 0, 90, 92, 0, 92, 137, 0, 0, 93, 91, 100, 58, 0, 95, 91, 101, 58, 0, 93, 58, 0, 95, 58, 0, 98, 94, 0, 95, 98, 94, 0, 0, 94, 99, 0, 94, 5, 0, 7, 0, 5, 0, 95, 7, 0, 95, 5, 0, 98, 97, 0, 132, 98, 97, 0, 0, 97, 99, 0, 6, 0, 116, 0, 4, 0, 28, 55, 80, 57, 0, 28, 55, 130, 57, 0, 6, 0, 7, 0, 116, 0, 103, 0, 100, 62, 103, 0, 105, 0, 101, 62, 103, 0, 0, 27, 55, 88, 57, 0, 0, 112, 102, 107, 32, 104, 110, 0, 112, 102, 107, 0, 0, 115, 102, 107, 32, 106, 110, 0, 115, 102, 107, 0, 0, 30, 55, 55, 108, 57, 57, 0, 109, 0, 108, 62, 109, 0, 3, 0, 3, 55, 8, 57, 0, 3, 55, 171, 57, 0, 85, 0, 63, 59, 0, 63, 111, 59, 0, 63, 111, 62, 59, 0, 1, 0, 110, 0, 111, 62, 110, 0, 113, 0, 115, 0, 55, 113, 57, 0, 113, 55, 164, 0, 113, 56, 80, 64, 0, 113, 56, 64, 0, 46, 133, 113, 0, 4, 0, 114, 55, 164, 0, 114, 56, 80, 64, 0, 114, 56, 64, 0, 46, 133, 114, 0, 4, 0, 115, 55, 164, 0, 55, 115, 57, 0, 46, 133, 115, 0, 115, 56, 80, 64, 0, 115, 56, 64, 0, 3, 0, 0, 13, 78, 63, 117, 123, 59, 0, 13, 63, 123, 59, 0, 13, 78, 0, 0, 14, 78, 63, 118, 123, 59, 0, 14, 63, 123, 59, 0, 14, 78, 0, 0, 12, 78, 63, 119, 128, 122, 59, 0, 0, 12, 63, 120, 128, 122, 59, 0, 12, 78, 0, 0, 62, 0, 0, 62, 0, 124, 0, 124, 125, 0, 0, 124, 125, 58, 0, 124, 58, 0, 96, 91, 126, 0, 132, 91, 126, 0, 1, 0, 0, 127, 0, 126, 62, 127, 0, 112, 107, 0, 112, 34, 85, 107, 0, 34, 85, 0, 129, 0, 128, 62, 129, 0, 78, 0, 78, 32, 85, 0, 96, 131, 0, 132, 131, 0, 0, 134, 0, 7, 0, 132, 7, 0, 0, 133, 7, 0, 55, 134, 57, 0, 46, 133, 134, 0, 46, 133, 0, 134, 55, 162, 0, 134, 56, 80, 64, 0, 134, 56, 64, 0, 55, 162, 0, 56, 80, 64, 0, 56, 64, 0, 143, 0, 135, 143, 0, 135, 137, 0, 0, 135, 0, 1, 58, 0, 0, 140, 0, 1, 140, 0, 63, 59, 0, 63, 138, 90, 136, 59, 0, 63, 138, 1, 59, 0, 63, 138, 135, 59, 0, 0, 15, 55, 80, 57, 142, 143, 0, 140, 0, 80, 58, 0, 0, 141, 16, 144, 143, 0, 141, 0, 0, 0, 17, 145, 55, 80, 57, 146, 143, 0, 0, 0, 18, 147, 143, 17, 148, 55, 80, 57, 58, 0, 0, 0, 0, 19, 55, 157, 58, 149, 157, 58, 150, 157, 57, 151, 143, 0, 0, 20, 55, 80, 57, 152, 143, 0, 0, 21, 80, 34, 153, 143, 0, 0, 22, 34, 154, 143, 0, 23, 58, 0, 24, 58, 0, 25, 58, 0, 25, 80, 58, 0, 27, 156, 55, 88, 57, 58, 0, 27, 156, 55, 88, 34, 158, 57, 58, 0, 27, 156, 55, 88, 34, 158, 34, 158, 57, 58, 0, 27,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -