rclex.c

来自「基于4个mips核的noc设计」· C语言 代码 · 共 2,490 行 · 第 1/5 页

C
2,490
字号
/* A lexical scanner generated by flex *//* Scanner skeleton version: * $Header: /cvs/src/src/binutils/Attic/rclex.c,v 1.1.4.2 2001/06/10 15:37:28 pb Exp $ */#define FLEX_SCANNER#define YY_FLEX_MAJOR_VERSION 2#define YY_FLEX_MINOR_VERSION 5#include <stdio.h>/* cfront 1.2 defines "c_plusplus" instead of "__cplusplus" */#ifdef c_plusplus#ifndef __cplusplus#define __cplusplus#endif#endif#ifdef __cplusplus#include <stdlib.h>#include <unistd.h>/* Use prototypes in function declarations. */#define YY_USE_PROTOS/* The "const" storage-class-modifier is valid. */#define YY_USE_CONST#else	/* ! __cplusplus */#if __STDC__#define YY_USE_PROTOS#define YY_USE_CONST#endif	/* __STDC__ */#endif	/* ! __cplusplus */#ifdef __TURBOC__ #pragma warn -rch #pragma warn -use#include <io.h>#include <stdlib.h>#define YY_USE_CONST#define YY_USE_PROTOS#endif#ifdef YY_USE_CONST#define yyconst const#else#define yyconst#endif#ifdef YY_USE_PROTOS#define YY_PROTO(proto) proto#else#define YY_PROTO(proto) ()#endif/* Returned upon end-of-file. */#define YY_NULL 0/* Promotes a possibly negative, possibly signed char to an unsigned * integer for use as an array index.  If the signed char is negative, * we want to instead treat it as an 8-bit unsigned char, hence the * double cast. */#define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)/* Enter a start condition.  This macro really ought to take a parameter, * but we do it the disgusting crufty way forced on us by the ()-less * definition of BEGIN. */#define BEGIN yy_start = 1 + 2 */* Translate the current start state into a value that can be later handed * to BEGIN to return to the state.  The YYSTATE alias is for lex * compatibility. */#define YY_START ((yy_start - 1) / 2)#define YYSTATE YY_START/* Action number for EOF rule of a given start state. */#define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)/* Special action meaning "start processing a new file". */#define YY_NEW_FILE yyrestart( yyin )#define YY_END_OF_BUFFER_CHAR 0/* Size of default input buffer. */#define YY_BUF_SIZE 16384typedef struct yy_buffer_state *YY_BUFFER_STATE;extern int yyleng;extern FILE *yyin, *yyout;#define EOB_ACT_CONTINUE_SCAN 0#define EOB_ACT_END_OF_FILE 1#define EOB_ACT_LAST_MATCH 2/* The funky do-while in the following #define is used to turn the definition * int a single C statement (which needs a semi-colon terminator).  This * avoids problems with code like: * * 	if ( condition_holds ) *		yyless( 5 ); *	else *		do_something_else(); * * Prior to using the do-while the compiler would get upset at the * "else" because it interpreted the "if" statement as being all * done when it reached the ';' after the yyless() call. *//* Return all but the first 'n' matched characters back to the input stream. */#define yyless(n) \	do \		{ \		/* Undo effects of setting up yytext. */ \		*yy_cp = yy_hold_char; \		YY_RESTORE_YY_MORE_OFFSET \		yy_c_buf_p = yy_cp = yy_bp + n - YY_MORE_ADJ; \		YY_DO_BEFORE_ACTION; /* set up yytext again */ \		} \	while ( 0 )#define unput(c) yyunput( c, yytext_ptr )/* The following is because we cannot portably get our hands on size_t * (without autoconf's help, which isn't available because we want * flex-generated scanners to compile on their own). */typedef unsigned int yy_size_t;struct yy_buffer_state	{	FILE *yy_input_file;	char *yy_ch_buf;		/* input buffer */	char *yy_buf_pos;		/* current position in input buffer */	/* Size of input buffer in bytes, not including room for EOB	 * characters.	 */	yy_size_t yy_buf_size;	/* Number of characters read into yy_ch_buf, not including EOB	 * characters.	 */	int yy_n_chars;	/* Whether we "own" the buffer - i.e., we know we created it,	 * and can realloc() it to grow it, and should free() it to	 * delete it.	 */	int yy_is_our_buffer;	/* Whether this is an "interactive" input source; if so, and	 * if we're using stdio for input, then we want to use getc()	 * instead of fread(), to make sure we stop fetching input after	 * each newline.	 */	int yy_is_interactive;	/* Whether we're considered to be at the beginning of a line.	 * If so, '^' rules will be active on the next match, otherwise	 * not.	 */	int yy_at_bol;	/* Whether to try to fill the input buffer when we reach the	 * end of it.	 */	int yy_fill_buffer;	int yy_buffer_status;#define YY_BUFFER_NEW 0#define YY_BUFFER_NORMAL 1	/* When an EOF's been seen but there's still some text to process	 * then we mark the buffer as YY_EOF_PENDING, to indicate that we	 * shouldn't try reading from the input source any more.  We might	 * still have a bunch of tokens to match, though, because of	 * possible backing-up.	 *	 * When we actually see the EOF, we change the status to "new"	 * (via yyrestart()), so that the user can continue scanning by	 * just pointing yyin at a new input file.	 */#define YY_BUFFER_EOF_PENDING 2	};static YY_BUFFER_STATE yy_current_buffer = 0;/* We provide macros for accessing buffer states in case in the * future we want to put the buffer states in a more general * "scanner state". */#define YY_CURRENT_BUFFER yy_current_buffer/* yy_hold_char holds the character lost when yytext is formed. */static char yy_hold_char;static int yy_n_chars;		/* number of characters read into yy_ch_buf */int yyleng;/* Points to current character in buffer. */static char *yy_c_buf_p = (char *) 0;static int yy_init = 1;		/* whether we need to initialize */static int yy_start = 0;	/* start state number *//* Flag which is used to allow yywrap()'s to do buffer switches * instead of setting up a fresh yyin.  A bit of a hack ... */static int yy_did_buffer_switch_on_eof;void yyrestart YY_PROTO(( FILE *input_file ));void yy_switch_to_buffer YY_PROTO(( YY_BUFFER_STATE new_buffer ));void yy_load_buffer_state YY_PROTO(( void ));YY_BUFFER_STATE yy_create_buffer YY_PROTO(( FILE *file, int size ));void yy_delete_buffer YY_PROTO(( YY_BUFFER_STATE b ));void yy_init_buffer YY_PROTO(( YY_BUFFER_STATE b, FILE *file ));void yy_flush_buffer YY_PROTO(( YY_BUFFER_STATE b ));#define YY_FLUSH_BUFFER yy_flush_buffer( yy_current_buffer )YY_BUFFER_STATE yy_scan_buffer YY_PROTO(( char *base, yy_size_t size ));YY_BUFFER_STATE yy_scan_string YY_PROTO(( yyconst char *yy_str ));YY_BUFFER_STATE yy_scan_bytes YY_PROTO(( yyconst char *bytes, int len ));static void *yy_flex_alloc YY_PROTO(( yy_size_t ));static void *yy_flex_realloc YY_PROTO(( void *, yy_size_t ));static void yy_flex_free YY_PROTO(( void * ));#define yy_new_buffer yy_create_buffer#define yy_set_interactive(is_interactive) \	{ \	if ( ! yy_current_buffer ) \		yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \	yy_current_buffer->yy_is_interactive = is_interactive; \	}#define yy_set_bol(at_bol) \	{ \	if ( ! yy_current_buffer ) \		yy_current_buffer = yy_create_buffer( yyin, YY_BUF_SIZE ); \	yy_current_buffer->yy_at_bol = at_bol; \	}#define YY_AT_BOL() (yy_current_buffer->yy_at_bol)typedef unsigned char YY_CHAR;FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0;typedef int yy_state_type;extern char *yytext;#define yytext_ptr yytextstatic yy_state_type yy_get_previous_state YY_PROTO(( void ));static yy_state_type yy_try_NUL_trans YY_PROTO(( yy_state_type current_state ));static int yy_get_next_buffer YY_PROTO(( void ));static void yy_fatal_error YY_PROTO(( yyconst char msg[] ));/* Done after the current pattern has been matched and before the * corresponding action - sets up yytext. */#define YY_DO_BEFORE_ACTION \	yytext_ptr = yy_bp; \	yyleng = (int) (yy_cp - yy_bp); \	yy_hold_char = *yy_cp; \	*yy_cp = '\0'; \	yy_c_buf_p = yy_cp;#define YY_NUM_RULES 86#define YY_END_OF_BUFFER 87static yyconst short int yy_accept[470] =    {   0,        0,    0,   87,   85,   84,   83,   85,   78,   80,   82,       82,   82,   82,   82,   82,   82,   82,   82,   82,   82,       82,   82,   82,   82,   82,   82,   82,    2,    4,   84,        0,   81,   78,   80,   79,   82,   82,   82,   82,   82,       82,   82,   82,   82,   82,   82,   82,   82,   82,   82,       82,   82,   82,   82,   82,   82,   82,   82,   82,   82,       82,   82,   82,   82,   82,   82,   82,   82,   82,   82,       82,   82,   82,   82,   82,   82,   82,   82,   82,   82,       82,   82,   82,   81,    0,   82,   11,   82,   82,   82,       82,   82,   82,   82,   82,   82,   82,   82,   82,   82,       82,   82,   82,   82,   82,    3,   82,   82,   82,   82,       82,   82,   82,   82,   82,   82,   82,   82,   82,   82,       82,   82,   82,   82,   82,   82,   76,   82,   82,   82,       82,   82,   82,   82,   82,   82,   82,   82,   82,   82,       82,   82,   82,   82,   82,   82,   82,   82,   82,   82,       82,   82,   82,   82,   82,   82,   82,   82,   82,   82,       82,   82,   82,   82,   82,   82,   82,   41,   82,   82,       82,   53,   42,   82,   82,   82,   82,   82,   82,   82,       46,   82,   82,   82,   82,   82,   82,   71,   82,   82,       82,   82,   82,   82,   82,   82,   82,   82,   82,   82,       82,   82,   82,    7,   82,   82,   82,   38,    1,   82,       82,   82,   82,   82,   18,   82,   82,   25,   82,   82,       82,   82,   82,   82,   82,   82,   82,   82,   82,   70,       82,   82,   39,   40,   82,   82,   82,   82,   82,   30,       82,   82,   82,   82,   82,   82,   50,   82,   82,   82,       82,   82,   34,   82,   82,    9,   82,   82,   19,   82,       68,   82,   82,   82,   82,   82,   82,   12,    0,   82,       82,   82,   82,   82,   82,   82,   13,   82,   14,   82,       82,   82,   82,   65,   82,   82,   82,   52,   82,   72,       82,   82,   82,   82,   82,   82,   47,   82,   82,   82,       82,   82,   82,   82,   82,   82,   58,   82,   82,   36,       82,   82,   82,   82,   82,   82,   82,   82,    0,   82,        0,   77,   17,   82,   82,   51,   82,   10,   82,   82,       82,   82,   16,   82,   82,   82,   82,   82,   82,   82,       29,   82,   82,   82,   82,   82,   82,   82,   73,   82,       31,   82,   82,   82,   82,   82,   82,   45,    6,   82,       82,   82,   82,   77,   82,   23,   24,   82,   15,   82,       27,   82,   82,   66,   82,   28,   54,   43,   82,   82,       82,   48,   82,   69,    8,   82,   82,   82,   82,   82,       82,   82,   82,   82,   82,   82,   82,   82,   82,   82,       64,   82,   82,   82,   82,   56,   82,   82,   82,   82,       35,   49,   82,   82,   82,   82,   20,   82,   82,   82,       82,   82,   82,   82,   82,   74,   82,   82,   82,   32,       82,   82,   37,   82,   82,   82,   82,   82,   82,   75,       82,   67,   61,   82,   82,   82,   33,   59,   60,    5,       21,   82,   82,   82,   82,   55,   57,   82,   82,   82,       26,   63,   82,   82,   82,   62,   22,   44,    0    } ;static yyconst int yy_ec[256] =    {   0,        1,    1,    1,    1,    1,    1,    1,    1,    2,    3,        1,    1,    4,    1,    1,    1,    1,    1,    1,    1,        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,        1,    2,    1,    5,    6,    1,    1,    1,    1,    1,        1,    1,    1,    7,    1,    1,    1,    8,    8,    8,        9,    8,    8,    8,    8,    8,    8,    1,    1,    1,        1,    1,    1,    1,   10,   11,   12,   13,   14,   15,       16,   17,   18,   19,   20,   21,   22,   23,   24,   25,       19,   26,   27,   28,   29,   30,   19,   31,   32,   19,        1,    1,    1,    1,    1,    1,   33,   33,   33,   33,       33,   33,   19,   19,   19,   19,   19,   19,   19,   19,       19,   19,   19,   19,   19,   19,   19,   19,   19,   33,       19,   19,   34,    1,   35,    1,    1,    1,    1,    1,        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,        1,    1,    1,    1,    1,    1,    1,    1,    1,    1,        1,    1,    1,    1,    1    } ;static yyconst int yy_meta[36] =    {   0,        1,    2,    3,    2,    1,    4,    2,    5,    5,    5,        5,    5,    5,    5,    5,    1,    1,    1,    1,    1,        5,    1,    1,    1,    1,    1,    1,    1,    1,    1,        1,    1,    5,    1,    1    } ;static yyconst short int yy_base[476] =    {   0,        0,    0,  515,  516,   34,  516,  509,    0,  492,   25,       26,   45,   25,   28,   24,  486,  497,   49,    0,   40,       43,  486,   51,   66,   67,  482,   35,  516,  516,   81,      503,   84,    0,  486,  516,    0,  494,  477,  492,  475,       74,  474,  477,  475,   46,  489,   69,  484,  471,  481,       55,  477,  481,  466,   67,  469,   83,   83,  467,  477,      464,  478,  464,  459,  475,  470,   74,  453,   81,  457,       86,   76,  468,  467,  465,  452,  452,  458,   95,  461,      453,  447,  446,  106,  466,  456,    0,  451,  444,  449,      448,  443,  452,  435,  436,  449,  433,  448,  430,  426,      429,  430,  433,  441,  424,    0,  423,  436,  435,  420,      415,  417,  427,  419,  420,  424,  412,  428,  423,  410,      424,  405,  406,  407,  419,  409,    0,  402,  409,  416,      414,  410,  408,  415,  393,  399,  412,  406,  392,  401,      397,  391,  387,  388,  386,  392,  394,  103,  383,  387,      399,  388,  389,  396,  385,  377,  379,  376,  373,  376,      370,  374,  387,  368,  363,   98,  381,    0,  379,  367,      363,    0,    0,  362,  363,  360,  358,  375,  361,  356,      105,  373,  372,  351,  355,  355,  349,    0,  366,  352,      347,  346,  352,  346,  343,  356,  346,  354,  356,  352,      347,  344,  349,    0,  335,  344,  350,    0,    0,  334,      115,  334,  345,  119,    0,  345,  331,    0,  328,  326,      336,  325,  336,  328,  327,  320,  317,  313,  330,    0,      330,  331,    0,    0,  327,  322,  329,  314,  314,    0,      114,  305,  307,  318,  322,  318,    0,  321,  318,  107,      318,  318,    0,  306,  316,    0,  316,  308,    0,  294,        0,  298,  307,  294,  291,  304,  304,    0,  132,  137,      293,  287,  290,  300,  288,  290,    0,  293,  295,  295,      276,  292,  295,    0,  293,  278,  276,    0,  277,    0,      270,  283,  267,  285,  270,  281,    0,  280,  279,  271,      265,  277,  261,  257,  259,  257,    0,  274,  256,    0,      255,  254,  258,  248,  269,  268,  265,  258,  270,  143,      269,  149,    0,  259,  241,    0,  240,    0,  259,  238,      258,  239,    0,  250,  237,  250,  236,  231,  247,  246,        0,  249,  247,  247,  234,  227,  240,  225,    0,  222,        0,  223,  222,  239,  224,  237,  218,  227,    0,  216,      215,  222,  217,  235,  213,    0,    0,  209,    0,  226,        0,  209,  203,    0,  216,    0,    0,    0,  212,  206,      211,    0,  220,    0,    0,  215,  204,  199,  200,  199,      213,  199,  199,  197,  206,  208,  207,  199,  188,  194,      192,  188,  188,  190,  196,    0,  198,  182,  184,  182,        0,    0,  184,  181,  188,  176,    0,  177,  171,  172,      170,  183,  186,  181,  171,    0,  183,  171,  164,    0,      167,  175,    0,  164,  160,  155,  157,  156,  159,    0,      155,    0,    0,  160,  165,  156,    0,    0,    0,    0,        0,  141,  150,  141,  139,    0,    0,  128,  122,  126,        0,    0,  109,   91,   79,    0,    0,    0,  516,  156,      161,   65,  166,  171,  176    } ;static yyconst short int yy_def[476] =    {   0,      469,    1,  469,  469,  469,  469,  470,  471,  472,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  469,  469,  469,      470,  469,  471,  472,  469,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  469,  470,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  469,  474,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  475,  474,      475,  474,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  475,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,  473,  473,      473,  473,  473,  473,  473,  473,  473,  473,    0,  469,      469,  469,  469,  469,  469    } ;static yyconst short int yy_nxt[552] =    {   0,        4,    5,    6,    5,    7,    8,    4,    9,    9,   10,       11,   12,   13,   14,   15,   16,   17,   18,   19,   19,       20,   21,   22,   19,   23,   24,   25,   19,   26,   27,

⌨️ 快捷键说明

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