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

📄 c-parse.c

📁 gcc库的原代码,对编程有很大帮助.
💻 C
📖 第 1 页 / 共 5 页
字号:
/*  A Bison parser, made from c-parse.y with Bison version GNU Bison version 1.22  */#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_KEYWORD	282#define	TYPEOF	283#define	ALIGNOF	284#define	ATTRIBUTE	285#define	EXTENSION	286#define	LABEL	287#define	REALPART	288#define	IMAGPART	289#define	ASSIGN	290#define	OROR	291#define	ANDAND	292#define	EQCOMPARE	293#define	ARITHCOMPARE	294#define	LSHIFT	295#define	RSHIFT	296#define	UNARY	297#define	PLUSPLUS	298#define	MINUSMINUS	299#define	HYPERUNARY	300#define	POINTSAT	301#define	INTERFACE	302#define	IMPLEMENTATION	303#define	END	304#define	SELECTOR	305#define	DEFS	306#define	ENCODE	307#define	CLASSNAME	308#define	PUBLIC	309#define	PRIVATE	310#define	PROTECTED	311#define	PROTOCOL	312#define	OBJECTNAME	313#define	CLASS	314#define	ALIAS	315#define	OBJC_STRING	316#line 55 "c-parse.y"#include <stdio.h>#include <errno.h>#include <setjmp.h>#include "config.h"#include "tree.h"#include "input.h"#include "c-lex.h"#include "c-tree.h"#include "flags.h"#ifdef MULTIBYTE_CHARS#include <stdlib.h>#include <locale.h>#endif/* Since parsers are distinct for each language, put the language string   definition here.  */char *language_string = "GNU C";#ifndef errnoextern int errno;#endifvoid yyerror ();/* Like YYERROR but do call yyerror.  */#define YYERROR1 { yyerror ("syntax error"); YYERROR; }/* Cause the `yydebug' variable to be defined.  */#define YYDEBUG 1#line 92 "c-parse.y"typedef union {long itype; tree ttype; enum tree_code code;	char *filename; int lineno; int ends_in_label; } YYSTYPE;#line 206 "c-parse.y"/* Number of statements (loosely speaking) seen so far.  */static int stmt_count;/* Input file and line number of the end of the body of last simple_if;   used by the stmt-rule immediately after simple_if returns.  */static char *if_stmt_file;static int if_stmt_line;/* List of types and structure classes of the current declaration.  */static tree current_declspecs;static tree prefix_attributes = NULL_TREE;/* Stack of saved values of current_declspecs and prefix_attributes.  */static tree declspec_stack;/* 1 if we explained undeclared var errors.  */static int undeclared_variable_notice;/* Tell yyparse how to print a token's value, if yydebug is set.  */#define YYPRINT(FILE,YYCHAR,YYLVAL) yyprint(FILE,YYCHAR,YYLVAL)extern void yyprint ();#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 __cplusplus#ifndef __STDC__#define const#endif#endif#define	YYFINAL		658#define	YYFLAG		-32768#define	YYNTBASE	84#define YYTRANSLATE(x) ((unsigned)(x) <= 316 ? yytranslate[x] : 228)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,    80,     2,     2,     2,    52,    43,     2,    59,    76,    50,    48,    81,    49,    58,    51,     2,     2,     2,     2,     2,     2,     2,     2,     2,     2,    38,    77,     2,    36,     2,    37,     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,    60,     2,    83,    42,     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,    82,    41,    78,    79,     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,    32,    33,    34,    35,    39,    40,    44,    45,    46,    47,    53,    54,    55,    56,    57,    61,    62,    63,    64,    65,    66,    67,    68,    69,    70,    71,    72,    73,    74,    75};#if YYDEBUG != 0static 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,   128,   132,   135,   138,   141,   146,   149,   154,   157,   160,   162,   167,   168,   176,   178,   182,   186,   190,   194,   198,   202,   206,   210,   214,   218,   222,   226,   230,   234,   240,   244,   248,   250,   252,   254,   258,   262,   263,   268,   273,   278,   282,   286,   289,   292,   294,   297,   298,   300,   303,   307,   309,   311,   314,   317,   322,   327,   330,   333,   337,   339,   341,   344,   347,   348,   349,   354,   359,   363,   367,   370,   373,   376,   380,   381,   384,   387,   389,   391,   394,   397,   400,   404,   405,   408,   410,   412,   414,   419,   424,   426,   428,   430,   432,   436,   438,   442,   443,   448,   449,   456,   460,   461,   468,   472,   473,   475,   477,   480,   487,   489,   493,   494,   496,   501,   508,   513,   515,   517,   519,   521,   523,   524,   529,

⌨️ 快捷键说明

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