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

📄 parse_noyacc.c

📁 nedit 是一款linux下的开发源码的功能强大的编辑器
💻 C
📖 第 1 页 / 共 5 页
字号:
#ifndef lintstatic char const yyrcsid[] = "$FreeBSD: src/usr.bin/yacc/skeleton.c,v 1.28 2000/01/17 02:04:06 bde Exp $";#endif#include <stdlib.h>#define YYBYACC 1#define YYMAJOR 1#define YYMINOR 9#define YYLEX yylex()#define YYEMPTY -1#define yyclearin (yychar=(YYEMPTY))#define yyerrok (yyerrflag=0)#define YYRECOVERING() (yyerrflag!=0)static int yygrowstack();#define YYPREFIX "yy"#line 3 "parse.y"#ifdef HAVE_CONFIG_H#include "../config.h"#endif#include "parse.h"#include "textBuf.h"#include "nedit.h"#include "rbTree.h"#include "interpret.h"#include <string.h>#include <stdio.h>#include <ctype.h>#include <X11/Intrinsic.h>#include <Xm/Xm.h>#ifdef VMS#include "../util/VMSparam.h"#else#ifndef __MVS__#include <sys/param.h>#endif#endif /*VMS*/#ifdef HAVE_DEBUG_H#include "../debug.h"#endif/* Macros to add error processing to AddOp and AddSym calls */#define ADD_OP(op) if (!AddOp(op, &ErrMsg)) return 1#define ADD_SYM(sym) if (!AddSym(sym, &ErrMsg)) return 1#define ADD_IMMED(val) if (!AddImmediate(val, &ErrMsg)) return 1#define ADD_BR_OFF(to) if (!AddBranchOffset(to, &ErrMsg)) return 1#define SET_BR_OFF(from, to) *((int *)(from)) = ((Inst *)(to)) - ((Inst *)(from))/* Max. length for a string constant (... there shouldn't be a maximum) */#define MAX_STRING_CONST_LEN 5000static const char CVSID[] = "$Id: parse_noyacc.c,v 1.7 2003/05/15 07:33:00 edg Exp $";static int yyerror(char *s);static int yylex(void);int yyparse(void);static int follow(char expect, int yes, int no);static int follow2(char expect1, int yes1, char expect2, int yes2, int no);static int follow_non_whitespace(char expect, int yes, int no);static Symbol *matchesActionRoutine(char **inPtr);static char *ErrMsg;static char *InPtr;extern Inst *LoopStack[]; /* addresses of break, cont stmts */extern Inst **LoopStackPtr;  /*  to fill at the end of a loop */#line 56 "parse.y"typedef union {    Symbol *sym;    Inst *inst;    int nArgs;} YYSTYPE;#line 75 "y.tab.c"#define YYERRCODE 256#define NUMBER 257#define STRING 258#define SYMBOL 259#define IF 260#define WHILE 261#define ELSE 262#define FOR 263#define BREAK 264#define CONTINUE 265#define RETURN 266#define IF_NO_ELSE 267#define ADDEQ 268#define SUBEQ 269#define MULEQ 270#define DIVEQ 271#define MODEQ 272#define ANDEQ 273#define OREQ 274#define CONCAT 275#define OR 276#define AND 277#define GT 278#define GE 279#define LT 280#define LE 281#define EQ 282#define NE 283#define IN 284#define UNARY_MINUS 285#define NOT 286#define DELETE 287#define INCR 288#define DECR 289#define POW 290const short yylhs[] = {                                        -1,    0,    0,    0,    0,   13,   13,   13,   12,   12,   14,   14,   14,   14,   14,   16,   14,   14,   14,   14,   14,   15,   15,   15,   15,   15,   15,   15,   15,   15,   15,   15,   15,   15,   15,   15,   15,   15,   15,   15,   15,   15,   15,   15,   15,   15,   15,   10,    3,    3,    3,    1,    1,    1,   17,   17,   19,   19,   18,   18,    9,   20,   20,   20,   20,   20,   20,   20,   20,   20,   20,   20,   20,   20,   20,   20,   20,   20,   20,   20,   20,   20,   20,   20,   20,   20,   20,   20,   20,   20,    5,    4,    6,    2,    2,    7,    8,   11,   11,};const short yylen[] = {                                         2,    2,    5,    4,    1,    5,    4,    1,    1,    2,    3,    6,    9,    6,   10,    0,    9,    3,    3,    4,    3,    3,    3,    3,    3,    3,    3,    3,    3,    5,    6,    6,    6,    6,    6,    6,    6,    6,    5,    5,    5,    5,    4,    2,    2,    2,    2,    1,    0,    1,    3,    0,    1,    3,    1,    2,    1,    4,    1,    4,    1,    1,    1,    1,    4,    3,    4,    3,    3,    3,    3,    3,    3,    2,    3,    3,    3,    3,    3,    3,    3,    3,    3,    3,    2,    2,    2,    2,    2,    3,    1,    1,    1,    0,    1,    1,    1,    0,    2,};const short yydefred[] = {                                      0,    4,    0,    0,    0,    0,   90,   91,    0,    0,    0,    0,    0,    0,   97,   98,    0,    0,    0,    0,    8,    0,    0,    0,   44,   46,    0,    0,   97,   97,   61,   62,    0,    0,    0,    0,    0,    0,   97,    0,    0,   58,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    9,   97,    0,    0,    0,    0,    0,    0,    0,    0,   86,   88,    0,    0,    0,   85,   87,    0,    0,   97,    0,   96,   95,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    3,    0,    0,    0,   49,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,   42,    0,   97,    0,   65,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    2,    0,    0,    0,   97,    0,    0,    0,   64,   66,    0,    0,    0,    0,    0,    0,   50,    0,    0,    0,    0,    0,    0,    0,    0,    0,   38,   39,   97,    0,    7,   15,    0,   13,    0,    0,    0,    0,    0,    0,    0,    0,    0,   92,   97,   97,    0,   97,    0,    0,    0,   97,    0,   97,   12,   16,    0,    0,   14,};const short yydgoto[] = {                                       2,   61,   63,  104,   16,   17,  187,   96,   97,  156,   18,    3,   19,  172,  173,   21,  188,   62,   42,   22,   40,};const short yysindex[] = {                                   -215,    0,    0,  718,  -33,   21,    0,    0,   35,   44,  176, -191, -182, -178,    0,    0,   62,   68,  412, 1139,    0,   80,   13,  380,    0,    0,  380,  380,    0,    0,    0,    0,    3,  380,  380, -146, -144,  380,    0,  504,  -32,    0,   28,    0,   33,    0,   38,  222, -122,  380,  380,  380,  380,  380,  380,  380,  380,    0,    0,  380,  380,   14,  380,   92,  -32,  137,  137,    0,    0,  380,  -91,  -91,    0,    0,  301,  137,    0,  -32,    0,    0,  380,  380,  380,  380,  380,  380,  380,  380,  380,  380,  380,  380,  380,  380,  380,  380,  380,  380,  380,  380,  380,    0, 1121,   11,  -26,    0,  110,  380,  380,  380,  380,  380,  380,  380,  137,  -40,    0,  380,    0,   84,    0,  137, 1271, 1285,   -5,   -5,   -5,   -5,   -5,   -5,   -5,   -3,   -3,  -91,  -91,  -91,  -91,  -30, 1253, 1216,  -19,  -17,  -15,    0,  380,  380,  -65,    0,  698,  380,  879,    0,    0,    0,    0,    0,  111,  -32,  109,    0,  879,  380,  380,  380,  380,  380,  380,  380,  380,    0,    0,    0,  -79,    0,    0,  -65,    0,  380,  380,  380,  380,  380,  380,  380,  380,  923,    0,    0,    0,  105,    0, 1131,  879,  879,    0,  137,    0,    0,    0,  879,  137,    0,};const short yyrindex[] = {                                    954,    0,    0,    0,  -34,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,  185,    0,    0,    0,    0,    0,    0,  128,  146,    0,    0,    0,    0,  117,    0,    0,    0,    0,    0,    0,    0,   91,    0,    0,    6,    0,   25,    0,    0,  -13,  146,    0,    0,    0,    0,    0,    0,    0,    0,    0,  -14,   52,    0,  -22,    0,   41,    1,    9,    0,    0,  128,  160,  368,    0,    0,    0,   17,    0, 1181,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,  -14,    0,    0,  -14,  -14,  -14,    0,    0,  -34,    0,    0,    0,   77,   79,  104,  112,  133,  134,  147,   48,    0,    0,    0,    0,    0,    0,   56, 1035,  993,  665,  741,  781,  826,  872,  917,  950,  574,  620,  413,  453,  489,  529,    0, 1078,  464,    0,    0,    0,    0,    0,  136,    0,    0,  118,  -18,    0,    0,    0,   26,   39,   50,    0,  171,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,  103,    0,    0,  138,    0,  170,  329,  497,  506,  542,  551,  552,  565,    0,    0,    0,    0,    0,    0,    0,    0,    0,    0,   64,    0,    0,    0,    0,   95,    0,};const short yygindex[] = {                                      0,  420,  -46,   40,    0,    0,    0,    0,    0,    0,    0, 1331,  -45,  -87,    5,  -36,    0, 1296,    0,    8, 1543,};#define YYTABLESIZE 1727const short yytable[] = {                                      95,   17,  102,  106,  117,   93,   81,   26,   20,   18,   91,   89,  105,   90,  117,   92,   43,   20,  146,   52,   44,   46,   52,   53,   57,  117,   53,  117,   23,  117,   51,   48,   93,  145,   93,   45,   29,   91,   89,   91,   90,    1,   92,   69,   92,   28,   48,   43,   10,   40,   43,   26,   20,  148,   29,  116,   19,   56,  117,   95,   41,   27,   21,  152,    6,   43,   45,   29,   41,   45,   29,   52,   23,  176,  153,   53,  154,   43,  155,   51,   40,   45,   94,   40,   45,   29,   95,   22,   95,   23,   58,   41,   80,   21,   41,    5,   21,   56,   40,  158,   94,   54,   48,   11,   59,  197,  198,   57,   49,   41,  159,   21,  201,   72,   24,   73,   56,   59,   22,   98,   23,   22,   25,   23,   99,  151,   17,   63,  117,  100,   57,   54,   54,  118,   18,   54,   22,  103,   23,  105,  191,   57,   20,   26,   27,   24,  194,   15,   24,  146,   54,  147,  174,   25,   63,   63,   25,   28,   63,   63,   63,   63,   63,   24,   63,   11,   12,   13,  175,   51,   73,   25,   51,   10,   26,   27,   63,   26,   27,   48,   30,   19,   48,  186,   54,    1,   38,   93,   28,    6,   20,   28,   26,   27,    4,   93,   57,   73,   73,   94,   73,   73,   73,   73,   73,   73,   28,   73,   63,   57,   63,   30,   60,    0,   30,  189,   37,    0,    0,   73,    5,   33,   11,   12,   13,    0,    0,    0,   11,   30,    0,    0,   15,    0,   47,   47,   47,   47,   47,   47,   47,   63,    0,    0,   78,   79,   82,   83,   84,   85,   86,   87,   88,   73,    0,   24,   25,    0,   94,    0,   17,   17,   17,   17,   17,   17,   17,   17,   18,   18,   18,   18,   18,   18,   18,   18,   20,   20,   20,   20,   20,   20,   20,   20,   73,   94,    0,   94,   17,   17,   17,   67,   68,    0,    0,  144,   18,   18,   18,   24,   25,    0,    0,    0,   20,   20,   20,   10,   10,   10,   10,   10,   10,   10,   10,   19,   19,   19,   19,   19,   19,   19,   19,    6,    6,    6,    6,    6,    6,    6,    6,    0,    0,    0,    0,   10,   10,   10,    0,   31,    0,   37,  120,   19,   19,   19,   33,  101,   54,   54,   54,    6,    6,    6,    5,    5,    5,    5,    5,    5,    5,    5,   11,   11,   11,    0,   11,   11,   11,   11,   31,    0,    0,   31,   63,   63,   63,   54,   84,   54,   54,    0,    5,    5,    5,    0,    0,    0,   31,    0,   11,   11,   11,   63,   63,   63,   63,   63,   63,   63,   63,   63,    0,   63,    0,   84,   84,   63,   84,   84,   84,   84,   84,   84,    0,   84,    0,   73,   73,   73,   37,    0,    0,   69,    0,   33,    0,   84,    0,    0,    0,    0,    0,   30,   31,   32,   73,   73,   73,   73,   73,   73,   73,   73,   73,    0,   73,    0,   73,   73,   69,   69,    0,   69,   69,   69,   69,   69,   69,    0,   69,   84,   34,   70,   35,   36,    0,    0,    0,    0,    0,    0,   69,    0,   83,    0,    0,    0,    0,  115,    0,    4,    5,    6,    0,    7,    8,    9,   10,  119,   70,   70,   84,   70,   70,   70,   70,   70,   70,   71,   70,    0,    0,    0,   83,   83,   69,   32,   83,   11,   12,   13,   70,    0,   76,  137,   33,    0,  140,  141,  142,    0,    0,   83,    0,    0,   71,   71,    0,   71,   71,   71,   71,   71,   71,    0,   71,   69,   32,   72,    0,   32,    0,    0,   37,    0,   70,   33,   71,   33,   33,    0,   34,    0,    0,    0,   32,   83,   30,   31,   32,   35,   36,    0,    0,   33,   72,   72,    0,   72,   72,   72,   72,   72,   72,   37,   72,   70,    0,    0,    0,    0,   71,   34,   67,    0,   34,   34,   72,   35,   36,    0,   35,   36,    0,   35,   36,    0,    0,    0,    0,   34,    0,    0,    0,    0,   37,    0,    0,   37,   35,   36,   67,   71,   67,   67,    0,   67,   67,   67,    0,    0,   72,    0,   37,   84,   84,   84,    0,    0,   68,    0,    0,   67,    0,    0,    0,   30,   31,   32,    0,    0,    0,    0,   84,   84,   84,   84,   84,   84,   84,   84,   84,   72,   84,    0,   84,   84,   68,    0,   68,   68,    0,   68,   68,   68,   34,   67,   35,   36,   69,   69,   69,    0,    0,   74,    0,    0,    0,   68,   50,   51,   52,   53,   54,   55,   56,    0,    0,   69,   69,   69,   69,   69,   69,   69,   69,   69,   67,   69,    0,   69,   69,   74,    0,   74,   74,    0,    0,   74,   70,   70,   70,   68,    0,    0,    0,    0,    0,    0,    0,   83,   83,   83,   74,    0,    0,    0,   15,   70,   70,   70,   70,   70,   70,   70,   70,   70,    0,   70,   83,   70,   70,    0,   68,    0,   71,   71,   71,    0,   83,   75,   83,   83,    0,    0,    0,    0,   74,  161,    0,   30,   31,   32,    0,   71,   71,   71,   71,   71,   71,   71,   71,   71,    0,   71,    0,   71,   71,   75,    0,   75,   75,    0,    0,   75,   72,   72,   72,   74,   34,   76,   35,   36,    0,    0,    0,    0,    0,    0,   75,    0,    0,    0,    0,   72,   72,   72,   72,   72,   72,   72,   72,   72,    0,   72,    0,   72,   72,   76,    0,   76,   76,    0,    0,   76,    0,    0,    0,    0,    0,   67,   67,   67,   75,    0,   77,    0,    0,    0,   76,   14,    0,    0,    0,    0,    0,    0,    0,    0,   67,   67,   67,   67,   67,   67,   67,   67,   67,    0,   67,    0,   67,   67,   77,   75,   77,   77,    0,    0,   77,    0,    0,    0,   76,    0,    0,   68,   68,   68,    0,    0,   78,    0,    0,   77,    0,    0,    0,   15,    0,    0,    0,    0,    0,    0,   68,   68,   68,   68,   68,   68,   68,   68,   68,   76,   68,    0,   68,   68,   78,    0,   78,   78,    0,    0,   78,    0,    0,   77,    0,    0,   74,   74,   74,    0,    0,   79,    0,    0,    0,   78,    0,   15,    0,    0,    0,    0,    0,    0,    0,   74,   74,   74,   74,   74,   74,   74,   74,   74,   77,   74,    0,   74,   74,   79,    0,   79,   79,    0,   89,   79,    0,    0,   97,   78,  162,  163,  164,  165,  166,  167,  168,    0,    0,    0,   79,    4,    5,    6,    0,    7,    8,    9,   10,    0,  169,  170,   89,    0,   89,   89,    0,    0,   89,    0,   78,    0,   75,   75,   75,    0,  171,   80,    0,   11,   12,   13,    0,   89,   79,    0,    0,    0,    0,    0,    0,   75,   75,   75,   75,   75,   75,   75,   75,   75,    0,   75,    0,   75,   75,   80,    0,   80,   80,    0,    0,   80,   76,   76,   76,   79,    0,   89,    0,   81,    0,    0,  190,    0,    0,    0,   80,    0,    0,    0,    0,   76,   76,   76,   76,   76,   76,   76,   76,   76,    0,   76,    0,   76,   76,    0,    0,    0,   89,   81,   81,   97,    0,   81,    0,    0,    0,   77,   77,   77,   80,    0,   82,    0,    0,    0,    0,    0,   81,    0,    0,    0,    0,    0,    0,    0,   77,   77,   77,   77,   77,   77,   77,   77,   77,    0,   77,    0,   77,   77,    0,   80,   82,   82,    0,    0,   82,    0,    0,    0,    0,    0,   81,   78,   78,   78,    0,    0,    0,    0,    0,   82,    4,    5,    6,    0,    7,    8,    9,   10,    0,    0,   78,   78,   78,   78,   78,   78,   78,   78,   78,    0,   78,   81,   78,   78,    0,    0,    0,    0,   11,   12,   13,    0,    0,   82,    0,    0,   79,   79,   79,    0,    0,    0,    0,    0,    4,    5,    6,    0,    7,    8,    9,   10,    0,   55,    0,   79,   79,   79,   79,   79,   79,   79,   79,   79,    0,   79,    0,   79,   79,   89,   89,   89,   11,   12,   13,   97,   97,   97,    0,   97,   97,   97,   97,   55,   55,    0,    0,   55,   89,   89,   89,   89,   89,   89,   89,   89,   89,    0,   89,    0,   89,   89,   55,   97,   97,   97,    0,    0,  143,    0,    0,    0,   80,   80,   80,   93,   81,    0,  196,    0,   91,   89,    0,   90,    0,   92,    0,    0,    0,    0,    0,   80,   80,    0,    0,    0,   55,    0,    0,    0,    0,   80,    0,   80,   80,    0,    0,    0,    0,    0,    0,    0,   93,   81,   81,   81,   81,   91,   89,    0,   90,    0,   92,    0,    0,    0,    0,    0,   39,   95,   93,   81,    0,   81,   81,   91,   89,    0,   90,    0,   92,   60,    0,   81,   93,   81,   81,    0,    0,   91,   89,    0,   90,    0,   92,   74,    0,   82,   82,   82,    0,    0,   80,    0,    0,    0,   95,   47,  107,  108,  109,  110,  111,  112,  113,    0,   82,   82,    0,    0,    0,   65,   66,    0,   95,    0,   82,    0,   82,   82,    0,   75,    0,    0,    0,    0,    0,    0,   95,   80,    0,    0,    4,    5,    6,    0,    7,    8,    9,   10,    0,  114,    4,    5,    6,    0,    7,    8,    9,   10,    4,    5,    6,    0,    7,    8,    9,   10,    0,  121,   11,   12,   13,    0,    0,  149,    0,    0,    0,    0,   11,   12,   13,    0,    0,    0,    0,    0,   11,   12,   13,    0,    0,    0,    0,    0,    0,    0,    0,    0,   55,   55,   55,    0,    0,    0,    0,    0,    0,    0,    0,  150,    0,    0,    0,    0,    0,    0,    0,  177,  178,  179,  180,  181,  182,  183,  184,    0,    0,   55,    0,   55,   55,    0,    0,    0,    0,    0,    0,    0,  160,    0,    0,

⌨️ 快捷键说明

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