diff options
author | Jung-uk Kim <jkim@FreeBSD.org> | 2020-06-18 18:09:16 +0000 |
---|---|---|
committer | Jung-uk Kim <jkim@FreeBSD.org> | 2020-06-18 18:09:16 +0000 |
commit | 7e38239042df09edbbdc443ccb4825f9155c6bb7 (patch) | |
tree | 5d84ccc50978396d85587b8fd56f357cae18bacf /usr.bin/lex | |
parent | df2fca7ba89976ad70dc4fb4ea022959efa67308 (diff) | |
parent | 764685116c0fe025bff5b18ead25c2364e5d07f9 (diff) | |
download | src-test-7e38239042df09edbbdc443ccb4825f9155c6bb7.tar.gz src-test-7e38239042df09edbbdc443ccb4825f9155c6bb7.zip |
MFV: r362286
Merge flex 2.6.4.
Notes
Notes:
svn path=/head/; revision=362333
Diffstat (limited to 'usr.bin/lex')
-rw-r--r-- | usr.bin/lex/Makefile | 8 | ||||
-rw-r--r-- | usr.bin/lex/config.h | 97 | ||||
-rw-r--r-- | usr.bin/lex/initparse.c | 394 | ||||
-rw-r--r-- | usr.bin/lex/initparse.h | 14 | ||||
-rw-r--r-- | usr.bin/lex/initscan.c | 4580 | ||||
-rw-r--r-- | usr.bin/lex/initskel.c | 1335 | ||||
-rw-r--r-- | usr.bin/lex/lex.1 | 2 | ||||
-rw-r--r-- | usr.bin/lex/lib/Makefile | 2 | ||||
-rw-r--r-- | usr.bin/lex/version.awk | 4 |
9 files changed, 3428 insertions, 3008 deletions
diff --git a/usr.bin/lex/Makefile b/usr.bin/lex/Makefile index 473b089286816..3459d8815620a 100644 --- a/usr.bin/lex/Makefile +++ b/usr.bin/lex/Makefile @@ -14,7 +14,7 @@ LINKS+= ${BINDIR}/lex ${BINDIR}/lex++ LINKS+= ${BINDIR}/lex ${BINDIR}/flex LINKS+= ${BINDIR}/lex ${BINDIR}/flex++ -FLEXDIR= ${SRCTOP}/contrib/flex +FLEXDIR= ${SRCTOP}/contrib/flex/src .PATH: ${FLEXDIR} @@ -42,11 +42,7 @@ SUBDIR= lib FLEX_VERSION= `awk -f ${.CURDIR}/version.awk ${.CURDIR}/config.h` skel.c: config.h mkskel.sh flex.skl version.awk - sed 's/m4_/m4postproc_/g; s/m4preproc_/m4_/g' \ - ${FLEXDIR}/flex.skl | \ - m4 -I${FLEXDIR} -P ${FLEX_VERSION} | \ - sed 's/m4postproc_/m4_/g' | \ - sh ${FLEXDIR}/mkskel.sh > ${.TARGET} + sh ${FLEXDIR}/mkskel.sh ${FLEXDIR} m4 ${FLEX_VERSION} > ${.TARGET} bootstrap: ${GENFILES:S/^/init/g} .for _f in ${GENFILES} diff --git a/usr.bin/lex/config.h b/usr.bin/lex/config.h index 88361dfb93dff..525a1cbf4eee5 100644 --- a/usr.bin/lex/config.h +++ b/usr.bin/lex/config.h @@ -1,5 +1,5 @@ -/* config.h. Generated from conf.in by configure. */ -/* conf.in. Generated from configure.in by autoheader. */ +/* src/config.h. Generated from config.h.in by configure. */ +/* src/config.h.in. Generated from configure.ac by autoheader. */ /* $FreeBSD$ */ /* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP @@ -21,27 +21,59 @@ */ /* #undef HAVE_ALLOCA_H */ +/* Define to 1 if you have the `available.' function. */ +/* #undef HAVE_AVAILABLE_ */ + +/* Define to 1 if you have the `by' function. */ +/* #undef HAVE_BY */ + +/* Define to 1 if you have the MacOS X function CFLocaleCopyCurrent in the + CoreFoundation framework. */ +/* #undef HAVE_CFLOCALECOPYCURRENT */ + +/* Define to 1 if you have the MacOS X function CFPreferencesCopyAppValue in + the CoreFoundation framework. */ +/* #undef HAVE_CFPREFERENCESCOPYAPPVALUE */ + /* Define if the GNU dcgettext() function is already present or preinstalled. */ /* #undef HAVE_DCGETTEXT */ +/* Define to 1 if you have the <dlfcn.h> header file. */ +#define HAVE_DLFCN_H 1 + +/* Define to 1 if you have the `dnl' function. */ +/* #undef HAVE_DNL */ + /* Define to 1 if you have the `dup2' function. */ #define HAVE_DUP2 1 +/* Define to 1 if you have the `enabled' function. */ +/* #undef HAVE_ENABLED */ + /* Define to 1 if you have the `fork' function. */ #define HAVE_FORK 1 +/* Define to 1 if you have the `function.' function. */ +/* #undef HAVE_FUNCTION_ */ + /* Define if the GNU gettext() function is already present or preinstalled. */ /* #undef HAVE_GETTEXT */ -/* Define if you have the iconv() function. */ +/* Define to 1 if you have the `have' function. */ +/* #undef HAVE_HAVE */ + +/* Define if you have the iconv() function and it works. */ /* #undef HAVE_ICONV */ +/* Define to 1 if you have the `if' function. */ +/* #undef HAVE_IF */ + /* Define to 1 if you have the <inttypes.h> header file. */ #define HAVE_INTTYPES_H 1 -/* Define to 1 if you have the `isascii' function. */ -#define HAVE_ISASCII 1 +/* Define to 1 if you have the `is' function. */ +/* #undef HAVE_IS */ /* Define to 1 if you have the <libintl.h> header file. */ /* #undef HAVE_LIBINTL_H */ @@ -49,9 +81,6 @@ /* Define to 1 if you have the `m' library (-lm). */ #define HAVE_LIBM 1 -/* pthread library */ -#define HAVE_LIBPTHREAD 1 - /* Define to 1 if you have the <limits.h> header file. */ #define HAVE_LIMITS_H 1 @@ -63,7 +92,7 @@ #define HAVE_MALLOC 1 /* Define to 1 if you have the <malloc.h> header file. */ -/* #undef HAVE_MALLOC_H */ +#define HAVE_MALLOC_H 1 /* Define to 1 if you have the <memory.h> header file. */ #define HAVE_MEMORY_H 1 @@ -71,9 +100,24 @@ /* Define to 1 if you have the `memset' function. */ #define HAVE_MEMSET 1 +/* Define to 1 if you have the `Needed' function. */ +/* #undef HAVE_NEEDED */ + /* Define to 1 if you have the <netinet/in.h> header file. */ #define HAVE_NETINET_IN_H 1 +/* Define to 1 if you have the `NLS' function. */ +/* #undef HAVE_NLS */ + +/* Define to 1 if you have the `not' function. */ +/* #undef HAVE_NOT */ + +/* Define to 1 if you have the `only' function. */ +/* #undef HAVE_ONLY */ + +/* Define to 1 if you have the `OpenBSD' function. */ +/* #undef HAVE_OPENBSD */ + /* Define to 1 if you have the `pow' function. */ #define HAVE_POW 1 @@ -84,30 +128,39 @@ and to 0 otherwise. */ #define HAVE_REALLOC 1 +/* Define to 1 if you have the `reallocarray' function. */ +#define HAVE_REALLOCARRAY 1 + /* Define to 1 if you have the `regcomp' function. */ #define HAVE_REGCOMP 1 /* Define to 1 if you have the <regex.h> header file. */ #define HAVE_REGEX_H 1 +/* Define to 1 if you have the `replacement' function. */ +/* #undef HAVE_REPLACEMENT */ + /* Define to 1 if you have the `setlocale' function. */ #define HAVE_SETLOCALE 1 /* Define to 1 if stdbool.h conforms to C99. */ #define HAVE_STDBOOL_H 1 -/* Define to 1 if you have the <stddef.h> header file. */ -#define HAVE_STDDEF_H 1 - /* Define to 1 if you have the <stdint.h> header file. */ #define HAVE_STDINT_H 1 /* Define to 1 if you have the <stdlib.h> header file. */ #define HAVE_STDLIB_H 1 +/* Define to 1 if you have the `strcasecmp' function. */ +#define HAVE_STRCASECMP 1 + /* Define to 1 if you have the `strchr' function. */ #define HAVE_STRCHR 1 +/* Define to 1 if you have the `strdup' function. */ +#define HAVE_STRDUP 1 + /* Define to 1 if you have the <strings.h> header file. */ #define HAVE_STRINGS_H 1 @@ -123,18 +176,24 @@ /* Define to 1 if you have the <sys/types.h> header file. */ #define HAVE_SYS_TYPES_H 1 -/* Define to 1 if you have <sys/wait.h> that is POSIX.1 compatible. */ +/* Define to 1 if you have the <sys/wait.h> header file. */ #define HAVE_SYS_WAIT_H 1 /* Define to 1 if you have the <unistd.h> header file. */ #define HAVE_UNISTD_H 1 +/* Define to 1 if you have the `Used' function. */ +/* #undef HAVE_USED */ + /* Define to 1 if you have the `vfork' function. */ #define HAVE_VFORK 1 /* Define to 1 if you have the <vfork.h> header file. */ /* #undef HAVE_VFORK_H */ +/* Define to 1 if you have the `We' function. */ +/* #undef HAVE_WE */ + /* Define to 1 if `fork' works. */ #define HAVE_WORKING_FORK 1 @@ -144,12 +203,12 @@ /* Define to 1 if the system has the type `_Bool'. */ #define HAVE__BOOL 1 +/* Define to the sub-directory where libtool stores uninstalled libraries. */ +#define LT_OBJDIR ".libs/" + /* Define to the m4 executable name. */ #define M4 "m4" -/* Define to 1 if your C compiler doesn't accept -c and -o together. */ -/* #undef NO_MINUS_C_MINUS_O */ - /* Name of package */ #define PACKAGE "flex" @@ -160,7 +219,7 @@ #define PACKAGE_NAME "the fast lexical analyser generator" /* Define to the full name and version of this package. */ -#define PACKAGE_STRING "the fast lexical analyser generator 2.5.37" +#define PACKAGE_STRING "the fast lexical analyser generator 2.6.4" /* Define to the one symbol short name of this package. */ #define PACKAGE_TARNAME "flex" @@ -169,7 +228,7 @@ #define PACKAGE_URL "" /* Define to the version of this package. */ -#define PACKAGE_VERSION "2.5.37" +#define PACKAGE_VERSION "2.6.4" /* If using the C implementation of alloca, define if you know the direction of stack growth for your system; otherwise it will be @@ -183,7 +242,7 @@ #define STDC_HEADERS 1 /* Version number of package */ -#define VERSION "2.5.37" +#define VERSION "2.6.4" /* Define to 1 if `lex' declares `yytext' as a `char *' by default, not a `char[]'. */ diff --git a/usr.bin/lex/initparse.c b/usr.bin/lex/initparse.c index a5ac139fd0cb4..c723c5b45c40c 100644 --- a/usr.bin/lex/initparse.c +++ b/usr.bin/lex/initparse.c @@ -1,17 +1,19 @@ /* $FreeBSD$ */ -#ifndef lint -static const char yysccsid[] = "@(#)yaccpar 1.9 (Berkeley) 02/21/93"; -#endif +/* original parser id follows */ +/* yysccsid[] = "@(#)yaccpar 1.9 (Berkeley) 02/21/93" */ +/* (use YYMAJOR/YYMINOR for ifdefs dependent on parser version) */ #define YYBYACC 1 #define YYMAJOR 1 #define YYMINOR 9 +#define YYPATCH 20170430 #define YYEMPTY (-1) #define yyclearin (yychar = YYEMPTY) #define yyerrok (yyerrflag = 0) #define YYRECOVERING() (yyerrflag != 0) - +#define YYENOMEM (-2) +#define YYEOF 0 #define YYPREFIX "yy" #define YYPURE 0 @@ -67,7 +69,7 @@ int previous_continued_action; /* whether the previous rule's action was '|' */ do{ \ char fw3_msg[MAXLINE];\ snprintf( fw3_msg, MAXLINE,(fmt), (a1), (a2) );\ - warn( fw3_msg );\ + lwarn( fw3_msg );\ }while(0) /* Expand a POSIX character class expression. */ @@ -99,10 +101,12 @@ int previous_continued_action; /* whether the previous rule's action was '|' */ */ #define YYSTYPE int -#line 99 "parse.c" +#line 102 "parse.c" -#ifndef YYSTYPE +#if ! defined(YYSTYPE) && ! defined(YYSTYPE_IS_DECLARED) +/* Default: YYSTYPE is the semantic value type. */ typedef int YYSTYPE; +# define YYSTYPE_IS_DECLARED 1 #endif /* compatibility with bison */ @@ -144,13 +148,13 @@ extern int YYPARSE_DECL(); #define NAME 262 #define PREVCCL 263 #define EOF_OP 264 -#define OPTION_OP 265 -#define OPT_OUTFILE 266 -#define OPT_PREFIX 267 -#define OPT_YYCLASS 268 -#define OPT_HEADER 269 -#define OPT_EXTRA_TYPE 270 -#define OPT_TABLES 271 +#define TOK_OPTION 265 +#define TOK_OUTFILE 266 +#define TOK_PREFIX 267 +#define TOK_YYCLASS 268 +#define TOK_HEADER_FILE 269 +#define TOK_EXTRA_TYPE 270 +#define TOK_TABLES_FILE 271 #define CCE_ALNUM 272 #define CCE_ALPHA 273 #define CCE_BLANK 274 @@ -182,7 +186,8 @@ extern int YYPARSE_DECL(); #define BEGIN_REPEAT_FLEX 300 #define END_REPEAT_FLEX 301 #define YYERRCODE 256 -static const short yylhs[] = { -1, +typedef int YYINT; +static const YYINT yylhs[] = { -1, 0, 1, 2, 2, 2, 2, 3, 6, 6, 7, 7, 7, 8, 9, 9, 10, 10, 10, 10, 10, 10, 4, 4, 4, 5, 12, 12, 12, 12, 14, @@ -194,7 +199,7 @@ static const short yylhs[] = { -1, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 22, 22, }; -static const short yylen[] = { 2, +static const YYINT yylen[] = { 2, 5, 0, 3, 2, 0, 1, 1, 1, 1, 2, 1, 1, 2, 2, 0, 3, 3, 3, 3, 3, 3, 5, 5, 0, 0, 2, 1, 1, 1, 0, @@ -206,7 +211,7 @@ static const short yylen[] = { 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 0, }; -static const short yydefred[] = { 2, +static const YYINT yydefred[] = { 2, 0, 0, 6, 0, 7, 8, 9, 15, 24, 0, 4, 0, 0, 12, 11, 0, 0, 0, 0, 0, 0, 0, 14, 0, 1, 0, 10, 0, 0, 0, @@ -222,12 +227,12 @@ static const short yydefred[] = { 2, 0, 0, 0, 62, 63, 66, 0, 49, 0, 55, 0, 67, 0, 48, 0, 54, 47, 53, }; -static const short yydgoto[] = { 1, +static const YYINT yydgoto[] = { 1, 2, 4, 9, 13, 25, 10, 16, 11, 12, 23, 26, 59, 60, 35, 47, 48, 61, 62, 63, 64, 65, 71, 66, 74, 119, }; -static const short yysindex[] = { 0, +static const YYINT yysindex[] = { 0, 0, -222, 0, -155, 0, 0, 0, 0, 0, -215, 0, -123, 6, 0, 0, -193, 10, 21, 26, 31, 35, 37, 0, 59, 0, -44, 0, -147, -145, -140, @@ -243,7 +248,7 @@ static const short yysindex[] = { 0, -30, -36, -39, 0, 0, 0, -104, 0, -219, 0, -238, 0, -144, 0, -143, 0, 0, 0, }; -static const short yyrindex[] = { 0, +static const YYINT yyrindex[] = { 0, 0, -141, 0, 0, 0, 0, 0, 0, 0, 0, 0, -134, 9, 0, 0, -125, 0, 0, 0, 0, 0, 0, 0, -178, 0, 22, 0, 0, 0, 0, @@ -259,13 +264,13 @@ static const short yyrindex[] = { 0, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }; -static const short yygindex[] = { 0, +static const YYINT yygindex[] = { 0, 0, 0, 0, 121, 133, 0, 0, 0, 0, 0, 0, 0, 106, 0, 0, 93, 0, 32, 84, -45, 0, 0, 25, 90, 0, }; #define YYTABLESIZE 419 -static const short yytable[] = { 57, +static const YYINT yytable[] = { 57, 83, 84, 90, 56, 131, 118, 91, 129, 25, 57, 120, 24, 33, 46, 56, 55, 56, 81, 33, 135, 57, 85, 57, 57, 33, 57, 55, 45, 55, 57, @@ -309,7 +314,7 @@ static const short yytable[] = { 57, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, }; -static const short yycheck[] = { 10, +static const YYINT yycheck[] = { 10, 42, 43, 34, 34, 44, 93, 41, 44, 0, 40, 36, 60, 34, 10, 34, 46, 34, 63, 40, 258, 40, 63, 40, 34, 46, 36, 46, 10, 46, 40, @@ -358,8 +363,10 @@ static const short yycheck[] = { 10, #define YYDEBUG 0 #endif #define YYMAXTOKEN 301 +#define YYUNDFTOKEN 329 +#define YYTRANSLATE(a) ((a) > YYMAXTOKEN ? YYUNDFTOKEN : (a)) #if YYDEBUG -static const char *yyname[] = { +static const char *const yyname[] = { "end-of-file",0,0,0,0,0,0,0,0,0,"'\\n'",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, @@ -369,16 +376,17 @@ static const char *yyname[] = { 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,"CHAR","NUMBER","SECTEND", -"SCDECL","XSCDECL","NAME","PREVCCL","EOF_OP","OPTION_OP","OPT_OUTFILE", -"OPT_PREFIX","OPT_YYCLASS","OPT_HEADER","OPT_EXTRA_TYPE","OPT_TABLES", +"SCDECL","XSCDECL","NAME","PREVCCL","EOF_OP","TOK_OPTION","TOK_OUTFILE", +"TOK_PREFIX","TOK_YYCLASS","TOK_HEADER_FILE","TOK_EXTRA_TYPE","TOK_TABLES_FILE", "CCE_ALNUM","CCE_ALPHA","CCE_BLANK","CCE_CNTRL","CCE_DIGIT","CCE_GRAPH", "CCE_LOWER","CCE_PRINT","CCE_PUNCT","CCE_SPACE","CCE_UPPER","CCE_XDIGIT", "CCE_NEG_ALNUM","CCE_NEG_ALPHA","CCE_NEG_BLANK","CCE_NEG_CNTRL","CCE_NEG_DIGIT", "CCE_NEG_GRAPH","CCE_NEG_LOWER","CCE_NEG_PRINT","CCE_NEG_PUNCT","CCE_NEG_SPACE", "CCE_NEG_UPPER","CCE_NEG_XDIGIT","CCL_OP_DIFF","CCL_OP_UNION", -"BEGIN_REPEAT_POSIX","END_REPEAT_POSIX","BEGIN_REPEAT_FLEX","END_REPEAT_FLEX", +"BEGIN_REPEAT_POSIX","END_REPEAT_POSIX","BEGIN_REPEAT_FLEX","END_REPEAT_FLEX",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,"illegal-symbol", }; -static const char *yyrule[] = { +static const char *const yyrule[] = { "$accept : goal", "goal : initlex sect1 sect1end sect2 initforrule", "initlex :", @@ -392,15 +400,15 @@ static const char *yyrule[] = { "namelist1 : namelist1 NAME", "namelist1 : NAME", "namelist1 : error", -"options : OPTION_OP optionlist", +"options : TOK_OPTION optionlist", "optionlist : optionlist option", "optionlist :", -"option : OPT_OUTFILE '=' NAME", -"option : OPT_EXTRA_TYPE '=' NAME", -"option : OPT_PREFIX '=' NAME", -"option : OPT_YYCLASS '=' NAME", -"option : OPT_HEADER '=' NAME", -"option : OPT_TABLES '=' NAME", +"option : TOK_OUTFILE '=' NAME", +"option : TOK_EXTRA_TYPE '=' NAME", +"option : TOK_PREFIX '=' NAME", +"option : TOK_YYCLASS '=' NAME", +"option : TOK_HEADER_FILE '=' NAME", +"option : TOK_TABLES_FILE '=' NAME", "sect2 : sect2 scon initforrule flexrule '\\n'", "sect2 : sect2 scon '{' sect2 '}'", "sect2 :", @@ -496,31 +504,31 @@ YYSTYPE yylval; #ifdef YYMAXDEPTH #define YYSTACKSIZE YYMAXDEPTH #else -#define YYSTACKSIZE 500 -#define YYMAXDEPTH 500 +#define YYSTACKSIZE 10000 +#define YYMAXDEPTH 10000 #endif #endif -#define YYINITSTACKSIZE 500 +#define YYINITSTACKSIZE 200 typedef struct { unsigned stacksize; - short *s_base; - short *s_mark; - short *s_last; + YYINT *s_base; + YYINT *s_mark; + YYINT *s_last; YYSTYPE *l_base; YYSTYPE *l_mark; } YYSTACKDATA; /* variables for the parser stack */ static YYSTACKDATA yystack; -#line 948 "parse.y" +#line 950 "parse.y" /* build_eof_action - build the "<<EOF>>" action for the active start * conditions */ -void build_eof_action() +void build_eof_action(void) { int i; char action_text[MAXLINE]; @@ -545,7 +553,8 @@ void build_eof_action() } } - line_directive_out( (FILE *) 0, 1 ); + line_directive_out(NULL, 1); + add_action("[["); /* This isn't a normal rule after all - don't count it as * such, so we don't have any holes in the rule numbering @@ -559,8 +568,7 @@ void build_eof_action() /* format_synerr - write out formatted syntax error */ -void format_synerr( msg, arg ) -const char *msg, arg[]; +void format_synerr( const char *msg, const char arg[] ) { char errmsg[MAXLINE]; @@ -571,8 +579,7 @@ const char *msg, arg[]; /* synerr - report a syntax error */ -void synerr( str ) -const char *str; +void synerr( const char *str ) { syntaxerror = true; pinpoint_message( str ); @@ -581,20 +588,18 @@ const char *str; /* format_warn - write out formatted warning */ -void format_warn( msg, arg ) -const char *msg, arg[]; +void format_warn( const char *msg, const char arg[] ) { char warn_msg[MAXLINE]; snprintf( warn_msg, sizeof(warn_msg), msg, arg ); - warn( warn_msg ); + lwarn( warn_msg ); } -/* warn - report a warning, unless -w was given */ +/* lwarn - report a warning, unless -w was given */ -void warn( str ) -const char *str; +void lwarn( const char *str ) { line_warning( str, linenum ); } @@ -603,8 +608,7 @@ const char *str; * pinpointing its location */ -void format_pinpoint_message( msg, arg ) -const char *msg, arg[]; +void format_pinpoint_message( const char *msg, const char arg[] ) { char errmsg[MAXLINE]; @@ -615,8 +619,7 @@ const char *msg, arg[]; /* pinpoint_message - write out a message, pinpointing its location */ -void pinpoint_message( str ) -const char *str; +void pinpoint_message( const char *str ) { line_pinpoint( str, linenum ); } @@ -624,9 +627,7 @@ const char *str; /* line_warning - report a warning at a given line, unless -w was given */ -void line_warning( str, line ) -const char *str; -int line; +void line_warning( const char *str, int line ) { char warning[MAXLINE]; @@ -640,9 +641,7 @@ int line; /* line_pinpoint - write out a message, pinpointing it at the given line */ -void line_pinpoint( str, line ) -const char *str; -int line; +void line_pinpoint( const char *str, int line ) { fprintf( stderr, "%s:%d: %s\n", infilename, line, str ); } @@ -652,14 +651,14 @@ int line; * currently, messages are ignore */ -void yyerror( msg ) -const char *msg; +void yyerror( const char *msg ) { + (void)msg; } #line 656 "parse.c" #if YYDEBUG -#include <stdio.h> /* needed for printf */ +#include <stdio.h> /* needed for printf */ #endif #include <stdlib.h> /* needed for malloc, etc */ @@ -670,27 +669,27 @@ static int yygrowstack(YYSTACKDATA *data) { int i; unsigned newsize; - short *newss; + YYINT *newss; YYSTYPE *newvs; if ((newsize = data->stacksize) == 0) newsize = YYINITSTACKSIZE; else if (newsize >= YYMAXDEPTH) - return -1; + return YYENOMEM; else if ((newsize *= 2) > YYMAXDEPTH) newsize = YYMAXDEPTH; - i = data->s_mark - data->s_base; - newss = (short *)realloc(data->s_base, newsize * sizeof(*newss)); + i = (int) (data->s_mark - data->s_base); + newss = (YYINT *)realloc(data->s_base, newsize * sizeof(*newss)); if (newss == NULL) - return -1; + return YYENOMEM; data->s_base = newss; data->s_mark = newss + i; newvs = (YYSTYPE *)realloc(data->l_base, newsize * sizeof(*newvs)); if (newvs == NULL) - return -1; + return YYENOMEM; data->l_base = newvs; data->l_mark = newvs + i; @@ -731,6 +730,8 @@ YYPARSE_DECL() } #endif + yym = 0; + yyn = 0; yynerrs = 0; yyerrflag = 0; yychar = YYEMPTY; @@ -740,7 +741,7 @@ YYPARSE_DECL() memset(&yystack, 0, sizeof(yystack)); #endif - if (yystack.s_base == NULL && yygrowstack(&yystack)) goto yyoverflow; + if (yystack.s_base == NULL && yygrowstack(&yystack) == YYENOMEM) goto yyoverflow; yystack.s_mark = yystack.s_base; yystack.l_mark = yystack.l_base; yystate = 0; @@ -750,30 +751,26 @@ yyloop: if ((yyn = yydefred[yystate]) != 0) goto yyreduce; if (yychar < 0) { - if ((yychar = YYLEX) < 0) yychar = 0; + yychar = YYLEX; + if (yychar < 0) yychar = YYEOF; #if YYDEBUG if (yydebug) { - yys = 0; - if (yychar <= YYMAXTOKEN) yys = yyname[yychar]; - if (!yys) yys = "illegal-symbol"; + if ((yys = yyname[YYTRANSLATE(yychar)]) == NULL) yys = yyname[YYUNDFTOKEN]; printf("%sdebug: state %d, reading %d (%s)\n", YYPREFIX, yystate, yychar, yys); } #endif } - if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 && - yyn <= YYTABLESIZE && yycheck[yyn] == yychar) + if (((yyn = yysindex[yystate]) != 0) && (yyn += yychar) >= 0 && + yyn <= YYTABLESIZE && yycheck[yyn] == (YYINT) yychar) { #if YYDEBUG if (yydebug) printf("%sdebug: state %d, shifting to state %d\n", YYPREFIX, yystate, yytable[yyn]); #endif - if (yystack.s_mark >= yystack.s_last && yygrowstack(&yystack)) - { - goto yyoverflow; - } + if (yystack.s_mark >= yystack.s_last && yygrowstack(&yystack) == YYENOMEM) goto yyoverflow; yystate = yytable[yyn]; *++yystack.s_mark = yytable[yyn]; *++yystack.l_mark = yylval; @@ -781,18 +778,17 @@ yyloop: if (yyerrflag > 0) --yyerrflag; goto yyloop; } - if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 && - yyn <= YYTABLESIZE && yycheck[yyn] == yychar) + if (((yyn = yyrindex[yystate]) != 0) && (yyn += yychar) >= 0 && + yyn <= YYTABLESIZE && yycheck[yyn] == (YYINT) yychar) { yyn = yytable[yyn]; goto yyreduce; } - if (yyerrflag) goto yyinrecovery; + if (yyerrflag != 0) goto yyinrecovery; - yyerror("syntax error"); - - goto yyerrlab; + YYERROR_CALL("syntax error"); + goto yyerrlab; /* redundant goto avoids 'unused label' warning */ yyerrlab: ++yynerrs; @@ -802,18 +798,15 @@ yyinrecovery: yyerrflag = 3; for (;;) { - if ((yyn = yysindex[*yystack.s_mark]) && (yyn += YYERRCODE) >= 0 && - yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE) + if (((yyn = yysindex[*yystack.s_mark]) != 0) && (yyn += YYERRCODE) >= 0 && + yyn <= YYTABLESIZE && yycheck[yyn] == (YYINT) YYERRCODE) { #if YYDEBUG if (yydebug) printf("%sdebug: state %d, error recovery shifting\ to state %d\n", YYPREFIX, *yystack.s_mark, yytable[yyn]); #endif - if (yystack.s_mark >= yystack.s_last && yygrowstack(&yystack)) - { - goto yyoverflow; - } + if (yystack.s_mark >= yystack.s_last && yygrowstack(&yystack) == YYENOMEM) goto yyoverflow; yystate = yytable[yyn]; *++yystack.s_mark = yytable[yyn]; *++yystack.l_mark = yylval; @@ -834,13 +827,11 @@ yyinrecovery: } else { - if (yychar == 0) goto yyabort; + if (yychar == YYEOF) goto yyabort; #if YYDEBUG if (yydebug) { - yys = 0; - if (yychar <= YYMAXTOKEN) yys = yyname[yychar]; - if (!yys) yys = "illegal-symbol"; + if ((yys = yyname[YYTRANSLATE(yychar)]) == NULL) yys = yyname[YYUNDFTOKEN]; printf("%sdebug: state %d, error recovery discards token %d (%s)\n", YYPREFIX, yystate, yychar, yys); } @@ -856,10 +847,11 @@ yyreduce: YYPREFIX, yystate, yyn, yyrule[yyn]); #endif yym = yylen[yyn]; - if (yym) + if (yym > 0) yyval = yystack.l_mark[1-yym]; else memset(&yyval, 0, sizeof yyval); + switch (yyn) { case 1: @@ -888,7 +880,7 @@ case 1: else add_action( "ECHO" ); - add_action( ";\n\tYY_BREAK\n" ); + add_action( ";\n\tYY_BREAK]]\n" ); } break; case 2: @@ -934,40 +926,42 @@ break; case 16: #line 195 "parse.y" { - outfilename = copy_string( nmstr ); + outfilename = xstrdup(nmstr); did_outfilename = 1; } break; case 17: #line 200 "parse.y" - { extra_type = copy_string( nmstr ); } + { extra_type = xstrdup(nmstr); } break; case 18: #line 202 "parse.y" - { prefix = copy_string( nmstr ); } + { prefix = xstrdup(nmstr); + if (strchr(prefix, '[') || strchr(prefix, ']')) + flexerror(_("Prefix must not contain [ or ]")); } break; case 19: -#line 204 "parse.y" - { yyclass = copy_string( nmstr ); } +#line 206 "parse.y" + { yyclass = xstrdup(nmstr); } break; case 20: -#line 206 "parse.y" - { headerfilename = copy_string( nmstr ); } +#line 208 "parse.y" + { headerfilename = xstrdup(nmstr); } break; case 21: -#line 208 "parse.y" - { tablesext = true; tablesfilename = copy_string( nmstr ); } +#line 210 "parse.y" + { tablesext = true; tablesfilename = xstrdup(nmstr); } break; case 22: -#line 212 "parse.y" +#line 214 "parse.y" { scon_stk_ptr = yystack.l_mark[-3]; } break; case 23: -#line 214 "parse.y" +#line 216 "parse.y" { scon_stk_ptr = yystack.l_mark[-3]; } break; case 25: -#line 219 "parse.y" +#line 221 "parse.y" { /* Initialize for a parse of one rule. */ trlcontxt = variable_trail_rule = varlength = false; @@ -980,7 +974,7 @@ case 25: } break; case 26: -#line 232 "parse.y" +#line 234 "parse.y" { pat = yystack.l_mark[0]; finish_rule( pat, variable_trail_rule, @@ -1017,7 +1011,7 @@ case 26: } break; case 27: -#line 268 "parse.y" +#line 270 "parse.y" { pat = yystack.l_mark[0]; finish_rule( pat, variable_trail_rule, @@ -1042,7 +1036,7 @@ case 27: } break; case 28: -#line 292 "parse.y" +#line 294 "parse.y" { if ( scon_stk_ptr > 0 ) build_eof_action(); @@ -1057,7 +1051,7 @@ case 28: scon_stk[++scon_stk_ptr] = i; if ( scon_stk_ptr == 0 ) - warn( + lwarn( "all start conditions already have <<EOF>> rules" ); else @@ -1066,19 +1060,19 @@ case 28: } break; case 29: -#line 315 "parse.y" +#line 317 "parse.y" { synerr( _("unrecognized rule") ); } break; case 30: -#line 319 "parse.y" +#line 321 "parse.y" { yyval = scon_stk_ptr; } break; case 31: -#line 323 "parse.y" +#line 325 "parse.y" { yyval = yystack.l_mark[-2]; } break; case 32: -#line 326 "parse.y" +#line 328 "parse.y" { yyval = scon_stk_ptr; @@ -1096,15 +1090,15 @@ case 32: } break; case 33: -#line 343 "parse.y" +#line 345 "parse.y" { yyval = scon_stk_ptr; } break; case 36: -#line 351 "parse.y" +#line 353 "parse.y" { synerr( _("bad start condition list") ); } break; case 37: -#line 355 "parse.y" +#line 357 "parse.y" { if ( (scnum = sclookup( nmstr )) == 0 ) format_pinpoint_message( @@ -1127,7 +1121,7 @@ case 37: } break; case 38: -#line 378 "parse.y" +#line 380 "parse.y" { if ( transchar[lastst[yystack.l_mark[0]]] != SYM_EPSILON ) /* Provide final transition \now/ so it @@ -1151,7 +1145,7 @@ case 38: * erroneously. */ if ( ! varlength || headcnt != 0 ) - warn( + lwarn( "trailing context made variable due to preceding '|' action" ); /* Mark as variable. */ @@ -1184,11 +1178,11 @@ case 38: } break; case 39: -#line 434 "parse.y" +#line 436 "parse.y" { synerr( _("trailing context used twice") ); } break; case 40: -#line 437 "parse.y" +#line 439 "parse.y" { headcnt = 0; trailcnt = 1; @@ -1208,7 +1202,7 @@ case 40: /* See the comment in the rule for "re2 re" * above. */ - warn( + lwarn( "trailing context made variable due to preceding '|' action" ); varlength = true; @@ -1232,7 +1226,7 @@ case 40: } break; case 41: -#line 480 "parse.y" +#line 482 "parse.y" { yyval = yystack.l_mark[0]; @@ -1249,18 +1243,18 @@ case 41: } break; case 42: -#line 498 "parse.y" +#line 500 "parse.y" { varlength = true; yyval = mkor( yystack.l_mark[-2], yystack.l_mark[0] ); } break; case 43: -#line 504 "parse.y" +#line 506 "parse.y" { yyval = yystack.l_mark[0]; } break; case 44: -#line 509 "parse.y" +#line 511 "parse.y" { /* This rule is written separately so the * reduction will occur before the trailing @@ -1287,7 +1281,7 @@ case 44: } break; case 45: -#line 536 "parse.y" +#line 538 "parse.y" { /* This is where concatenation of adjacent patterns * gets done. @@ -1296,11 +1290,11 @@ case 45: } break; case 46: -#line 544 "parse.y" +#line 546 "parse.y" { yyval = yystack.l_mark[0]; } break; case 47: -#line 547 "parse.y" +#line 549 "parse.y" { varlength = true; @@ -1329,7 +1323,7 @@ case 47: } break; case 48: -#line 575 "parse.y" +#line 577 "parse.y" { varlength = true; @@ -1344,7 +1338,7 @@ case 48: } break; case 49: -#line 589 "parse.y" +#line 591 "parse.y" { /* The series could be something like "(foo)", * in which case we have no idea what its length @@ -1365,7 +1359,7 @@ case 49: } break; case 50: -#line 611 "parse.y" +#line 613 "parse.y" { varlength = true; @@ -1373,21 +1367,21 @@ case 50: } break; case 51: -#line 618 "parse.y" +#line 620 "parse.y" { varlength = true; yyval = mkposcl( yystack.l_mark[-1] ); } break; case 52: -#line 624 "parse.y" +#line 626 "parse.y" { varlength = true; yyval = mkopt( yystack.l_mark[-1] ); } break; case 53: -#line 630 "parse.y" +#line 632 "parse.y" { varlength = true; @@ -1416,7 +1410,7 @@ case 53: } break; case 54: -#line 658 "parse.y" +#line 660 "parse.y" { varlength = true; @@ -1431,7 +1425,7 @@ case 54: } break; case 55: -#line 672 "parse.y" +#line 674 "parse.y" { /* The singleton could be something like "(foo)", * in which case we have no idea what its length @@ -1451,7 +1445,7 @@ case 55: } break; case 56: -#line 691 "parse.y" +#line 693 "parse.y" { if ( ! madeany ) { @@ -1486,11 +1480,11 @@ case 56: } break; case 57: -#line 725 "parse.y" +#line 727 "parse.y" { /* Sort characters for fast searching. */ - qsort( ccltbl + cclmap[yystack.l_mark[0]], ccllen[yystack.l_mark[0]], sizeof (*ccltbl), cclcmp ); + qsort( ccltbl + cclmap[yystack.l_mark[0]], (size_t) ccllen[yystack.l_mark[0]], sizeof (*ccltbl), cclcmp ); if ( useecs ) mkeccl( ccltbl + cclmap[yystack.l_mark[0]], ccllen[yystack.l_mark[0]], @@ -1505,7 +1499,7 @@ case 57: } break; case 58: -#line 743 "parse.y" +#line 745 "parse.y" { ++rulelen; @@ -1516,15 +1510,15 @@ case 58: } break; case 59: -#line 753 "parse.y" +#line 755 "parse.y" { yyval = yystack.l_mark[-1]; } break; case 60: -#line 756 "parse.y" +#line 758 "parse.y" { yyval = yystack.l_mark[-1]; } break; case 61: -#line 759 "parse.y" +#line 761 "parse.y" { ++rulelen; @@ -1539,26 +1533,26 @@ case 61: } break; case 62: -#line 773 "parse.y" +#line 775 "parse.y" { yyval = ccl_set_diff (yystack.l_mark[-2], yystack.l_mark[0]); } break; case 63: -#line 774 "parse.y" +#line 776 "parse.y" { yyval = ccl_set_union (yystack.l_mark[-2], yystack.l_mark[0]); } break; case 65: -#line 780 "parse.y" +#line 782 "parse.y" { yyval = yystack.l_mark[-1]; } break; case 66: -#line 783 "parse.y" +#line 785 "parse.y" { cclnegate( yystack.l_mark[-1] ); yyval = yystack.l_mark[-1]; } break; case 67: -#line 790 "parse.y" +#line 792 "parse.y" { if (sf_case_ins()) @@ -1619,7 +1613,7 @@ case 67: } break; case 68: -#line 850 "parse.y" +#line 852 "parse.y" { ccladd( yystack.l_mark[-1], yystack.l_mark[0] ); cclsorted = cclsorted && (yystack.l_mark[0] > lastchar); @@ -1638,7 +1632,7 @@ case 68: } break; case 69: -#line 868 "parse.y" +#line 870 "parse.y" { /* Too hard to properly maintain cclsorted. */ cclsorted = false; @@ -1646,7 +1640,7 @@ case 69: } break; case 70: -#line 875 "parse.y" +#line 877 "parse.y" { cclsorted = true; lastchar = 0; @@ -1654,31 +1648,31 @@ case 70: } break; case 71: -#line 883 "parse.y" +#line 885 "parse.y" { CCL_EXPR(isalnum); } break; case 72: -#line 884 "parse.y" +#line 886 "parse.y" { CCL_EXPR(isalpha); } break; case 73: -#line 885 "parse.y" +#line 887 "parse.y" { CCL_EXPR(IS_BLANK); } break; case 74: -#line 886 "parse.y" +#line 888 "parse.y" { CCL_EXPR(iscntrl); } break; case 75: -#line 887 "parse.y" +#line 889 "parse.y" { CCL_EXPR(isdigit); } break; case 76: -#line 888 "parse.y" +#line 890 "parse.y" { CCL_EXPR(isgraph); } break; case 77: -#line 889 "parse.y" +#line 891 "parse.y" { CCL_EXPR(islower); if (sf_case_ins()) @@ -1686,23 +1680,23 @@ case 77: } break; case 78: -#line 894 "parse.y" +#line 896 "parse.y" { CCL_EXPR(isprint); } break; case 79: -#line 895 "parse.y" +#line 897 "parse.y" { CCL_EXPR(ispunct); } break; case 80: -#line 896 "parse.y" +#line 898 "parse.y" { CCL_EXPR(isspace); } break; case 81: -#line 897 "parse.y" +#line 899 "parse.y" { CCL_EXPR(isxdigit); } break; case 82: -#line 898 "parse.y" +#line 900 "parse.y" { CCL_EXPR(isupper); if (sf_case_ins()) @@ -1710,65 +1704,65 @@ case 82: } break; case 83: -#line 904 "parse.y" +#line 906 "parse.y" { CCL_NEG_EXPR(isalnum); } break; case 84: -#line 905 "parse.y" +#line 907 "parse.y" { CCL_NEG_EXPR(isalpha); } break; case 85: -#line 906 "parse.y" +#line 908 "parse.y" { CCL_NEG_EXPR(IS_BLANK); } break; case 86: -#line 907 "parse.y" +#line 909 "parse.y" { CCL_NEG_EXPR(iscntrl); } break; case 87: -#line 908 "parse.y" +#line 910 "parse.y" { CCL_NEG_EXPR(isdigit); } break; case 88: -#line 909 "parse.y" +#line 911 "parse.y" { CCL_NEG_EXPR(isgraph); } break; case 89: -#line 910 "parse.y" +#line 912 "parse.y" { CCL_NEG_EXPR(isprint); } break; case 90: -#line 911 "parse.y" +#line 913 "parse.y" { CCL_NEG_EXPR(ispunct); } break; case 91: -#line 912 "parse.y" +#line 914 "parse.y" { CCL_NEG_EXPR(isspace); } break; case 92: -#line 913 "parse.y" +#line 915 "parse.y" { CCL_NEG_EXPR(isxdigit); } break; case 93: -#line 914 "parse.y" +#line 916 "parse.y" { if ( sf_case_ins() ) - warn(_("[:^lower:] is ambiguous in case insensitive scanner")); + lwarn(_("[:^lower:] is ambiguous in case insensitive scanner")); else CCL_NEG_EXPR(islower); } break; case 94: -#line 920 "parse.y" +#line 922 "parse.y" { if ( sf_case_ins() ) - warn(_("[:^upper:] ambiguous in case insensitive scanner")); + lwarn(_("[:^upper:] ambiguous in case insensitive scanner")); else CCL_NEG_EXPR(isupper); } break; case 95: -#line 929 "parse.y" +#line 931 "parse.y" { if ( yystack.l_mark[0] == nlch ) rule_has_nl[num_rules] = true; @@ -1784,10 +1778,10 @@ case 95: } break; case 96: -#line 944 "parse.y" +#line 946 "parse.y" { yyval = mkstate( SYM_EPSILON ); } break; -#line 1787 "parse.c" +#line 1782 "parse.c" } yystack.s_mark -= yym; yystate = *yystack.s_mark; @@ -1805,23 +1799,22 @@ break; *++yystack.l_mark = yyval; if (yychar < 0) { - if ((yychar = YYLEX) < 0) yychar = 0; + yychar = YYLEX; + if (yychar < 0) yychar = YYEOF; #if YYDEBUG if (yydebug) { - yys = 0; - if (yychar <= YYMAXTOKEN) yys = yyname[yychar]; - if (!yys) yys = "illegal-symbol"; + if ((yys = yyname[YYTRANSLATE(yychar)]) == NULL) yys = yyname[YYUNDFTOKEN]; printf("%sdebug: state %d, reading %d (%s)\n", YYPREFIX, YYFINAL, yychar, yys); } #endif } - if (yychar == 0) goto yyaccept; + if (yychar == YYEOF) goto yyaccept; goto yyloop; } - if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 && - yyn <= YYTABLESIZE && yycheck[yyn] == yystate) + if (((yyn = yygindex[yym]) != 0) && (yyn += yystate) >= 0 && + yyn <= YYTABLESIZE && yycheck[yyn] == (YYINT) yystate) yystate = yytable[yyn]; else yystate = yydgoto[yym]; @@ -1830,16 +1823,13 @@ break; printf("%sdebug: after reduction, shifting from state %d \ to state %d\n", YYPREFIX, *yystack.s_mark, yystate); #endif - if (yystack.s_mark >= yystack.s_last && yygrowstack(&yystack)) - { - goto yyoverflow; - } - *++yystack.s_mark = (short) yystate; + if (yystack.s_mark >= yystack.s_last && yygrowstack(&yystack) == YYENOMEM) goto yyoverflow; + *++yystack.s_mark = (YYINT) yystate; *++yystack.l_mark = yyval; goto yyloop; yyoverflow: - yyerror("yacc stack overflow"); + YYERROR_CALL("yacc stack overflow"); yyabort: yyfreestack(&yystack); diff --git a/usr.bin/lex/initparse.h b/usr.bin/lex/initparse.h index 6ede604579b5e..fb0742445d552 100644 --- a/usr.bin/lex/initparse.h +++ b/usr.bin/lex/initparse.h @@ -7,13 +7,13 @@ #define NAME 262 #define PREVCCL 263 #define EOF_OP 264 -#define OPTION_OP 265 -#define OPT_OUTFILE 266 -#define OPT_PREFIX 267 -#define OPT_YYCLASS 268 -#define OPT_HEADER 269 -#define OPT_EXTRA_TYPE 270 -#define OPT_TABLES 271 +#define TOK_OPTION 265 +#define TOK_OUTFILE 266 +#define TOK_PREFIX 267 +#define TOK_YYCLASS 268 +#define TOK_HEADER_FILE 269 +#define TOK_EXTRA_TYPE 270 +#define TOK_TABLES_FILE 271 #define CCE_ALNUM 272 #define CCE_ALPHA 273 #define CCE_BLANK 274 diff --git a/usr.bin/lex/initscan.c b/usr.bin/lex/initscan.c index 58de7ebaa8800..46070a4c6dc59 100644 --- a/usr.bin/lex/initscan.c +++ b/usr.bin/lex/initscan.c @@ -1,6 +1,6 @@ /* $FreeBSD$ */ -#line 3 "<stdout>" +#line 2 "<stdout>" #define YY_INT_ALIGNED short int @@ -8,8 +8,8 @@ #define FLEX_SCANNER #define YY_FLEX_MAJOR_VERSION 2 -#define YY_FLEX_MINOR_VERSION 5 -#define YY_FLEX_SUBMINOR_VERSION 37 +#define YY_FLEX_MINOR_VERSION 6 +#define YY_FLEX_SUBMINOR_VERSION 4 #if YY_FLEX_SUBMINOR_VERSION > 0 #define FLEX_BETA #endif @@ -17,11 +17,7 @@ /* First, we deal with platform-specific or compiler-specific issues. */ #if defined(__FreeBSD__) -#ifndef __STDC_LIMIT_MACROS -#define __STDC_LIMIT_MACROS -#endif #include <sys/cdefs.h> -#include <stdint.h> #else #define __dead2 #endif @@ -95,65 +91,61 @@ typedef unsigned int flex_uint32_t; #define UINT32_MAX (4294967295U) #endif +#ifndef SIZE_MAX +#define SIZE_MAX (~(size_t)0) +#endif + #endif /* ! C99 */ #endif /* ! FLEXINT_H */ -#ifdef __cplusplus - -/* The "const" storage-class-modifier is valid. */ -#define YY_USE_CONST - -#else /* ! __cplusplus */ - -/* C99 requires __STDC__ to be defined as 1. */ -#if defined (__STDC__) +/* begin standard C++ headers. */ -#define YY_USE_CONST - -#endif /* defined (__STDC__) */ -#endif /* ! __cplusplus */ - -#ifdef YY_USE_CONST +/* TODO: this is always defined, so inline it */ #define yyconst const + +#if defined(__GNUC__) && __GNUC__ >= 3 +#define yynoreturn __attribute__((__noreturn__)) #else -#define yyconst +#define yynoreturn #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. +/* Promotes a possibly negative, possibly signed char to an + * integer in range [0..255] for use as an array index. */ -#define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c) +#define YY_SC_TO_UI(c) ((YY_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_NEW_FILE yyrestart( yyin ) #define YY_END_OF_BUFFER_CHAR 0 /* Size of default input buffer. */ #ifndef YY_BUF_SIZE +#ifdef __ia64__ +/* On IA-64, the buffer size is 16k, not 8k. + * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case. + * Ditto for the __ia64__ case accordingly. + */ +#define YY_BUF_SIZE 32768 +#else #define YY_BUF_SIZE 16384 +#endif /* __ia64__ */ #endif /* The state buf must be large enough to hold one state per character in the main buffer. @@ -170,15 +162,16 @@ typedef struct yy_buffer_state *YY_BUFFER_STATE; typedef size_t yy_size_t; #endif -extern yy_size_t yyleng; +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 - + #define YY_LESS_LINENO(n) + #define YY_LINENO_REWIND_TO(ptr) /* Return all but the first "n" matched characters back to the input stream. */ #define yyless(n) \ @@ -193,7 +186,6 @@ extern FILE *yyin, *yyout; YY_DO_BEFORE_ACTION; /* set up yytext again */ \ } \ while ( 0 ) - #define unput(c) yyunput( c, (yytext_ptr) ) #ifndef YY_STRUCT_YY_BUFFER_STATE @@ -208,12 +200,12 @@ struct yy_buffer_state /* Size of input buffer in bytes, not including room for EOB * characters. */ - yy_size_t yy_buf_size; + int yy_buf_size; /* Number of characters read into yy_ch_buf, not including EOB * characters. */ - yy_size_t yy_n_chars; + 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 @@ -236,7 +228,7 @@ struct yy_buffer_state int yy_bs_lineno; /**< The line count. */ int yy_bs_column; /**< The column count. */ - + /* Whether to try to fill the input buffer when we reach the * end of it. */ @@ -264,7 +256,7 @@ struct yy_buffer_state /* Stack of input buffers. */ static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */ static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */ -static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */ +static YY_BUFFER_STATE * yy_buffer_stack = NULL; /**< Stack as an array. */ /* We provide macros for accessing buffer states in case in the * future we want to put the buffer states in a more general @@ -276,7 +268,6 @@ static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */ ? (yy_buffer_stack)[(yy_buffer_stack_top)] \ : NULL) #define yy_current_buffer YY_CURRENT_BUFFER - /* Same as previous macro, but useful when we know that the buffer stack is not * NULL or when we need an lvalue. For internal use only. */ @@ -284,11 +275,11 @@ static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */ /* yy_hold_char holds the character lost when yytext is formed. */ static char yy_hold_char; -static yy_size_t yy_n_chars; /* number of characters read into yy_ch_buf */ -yy_size_t yyleng; +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 char *yy_c_buf_p = NULL; static int yy_init = 0; /* whether we need to initialize */ static int yy_start = 0; /* start state number */ @@ -297,85 +288,80 @@ static int yy_start = 0; /* start state number */ */ static int yy_did_buffer_switch_on_eof; -void yyrestart (FILE *input_file ); -void yy_switch_to_buffer (YY_BUFFER_STATE new_buffer ); -YY_BUFFER_STATE yy_create_buffer (FILE *file,int size ); -void yy_delete_buffer (YY_BUFFER_STATE b ); -void yy_flush_buffer (YY_BUFFER_STATE b ); -void yypush_buffer_state (YY_BUFFER_STATE new_buffer ); -void yypop_buffer_state (void ); - -static void yyensure_buffer_stack (void ); -static void yy_load_buffer_state (void ); -static void yy_init_buffer (YY_BUFFER_STATE b,FILE *file ); +void yyrestart ( FILE *input_file ); +void yy_switch_to_buffer ( YY_BUFFER_STATE new_buffer ); +YY_BUFFER_STATE yy_create_buffer ( FILE *file, int size ); +void yy_delete_buffer ( YY_BUFFER_STATE b ); +void yy_flush_buffer ( YY_BUFFER_STATE b ); +void yypush_buffer_state ( YY_BUFFER_STATE new_buffer ); +void yypop_buffer_state ( void ); -#define YY_FLUSH_BUFFER yy_flush_buffer(YY_CURRENT_BUFFER ) +static void yyensure_buffer_stack ( void ); +static void yy_load_buffer_state ( void ); +static void yy_init_buffer ( YY_BUFFER_STATE b, FILE *file ); +#define YY_FLUSH_BUFFER yy_flush_buffer( YY_CURRENT_BUFFER ) -YY_BUFFER_STATE yy_scan_buffer (char *base,yy_size_t size ); -YY_BUFFER_STATE yy_scan_string (yyconst char *yy_str ); -YY_BUFFER_STATE yy_scan_bytes (yyconst char *bytes,yy_size_t len ); +YY_BUFFER_STATE yy_scan_buffer ( char *base, yy_size_t size ); +YY_BUFFER_STATE yy_scan_string ( const char *yy_str ); +YY_BUFFER_STATE yy_scan_bytes ( const char *bytes, int len ); -void *yyalloc (yy_size_t ); -void *yyrealloc (void *,yy_size_t ); -void yyfree (void * ); +void *yyalloc ( yy_size_t ); +void *yyrealloc ( void *, yy_size_t ); +void yyfree ( void * ); #define yy_new_buffer yy_create_buffer - #define yy_set_interactive(is_interactive) \ { \ if ( ! YY_CURRENT_BUFFER ){ \ yyensure_buffer_stack (); \ YY_CURRENT_BUFFER_LVALUE = \ - yy_create_buffer(yyin,YY_BUF_SIZE ); \ + yy_create_buffer( yyin, YY_BUF_SIZE ); \ } \ YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \ } - #define yy_set_bol(at_bol) \ { \ if ( ! YY_CURRENT_BUFFER ){\ yyensure_buffer_stack (); \ YY_CURRENT_BUFFER_LVALUE = \ - yy_create_buffer(yyin,YY_BUF_SIZE ); \ + yy_create_buffer( yyin, YY_BUF_SIZE ); \ } \ YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \ } - #define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol) /* Begin user sect3 */ +typedef flex_uint8_t YY_CHAR; -typedef unsigned char YY_CHAR; - -FILE *yyin = (FILE *) 0, *yyout = (FILE *) 0; +FILE *yyin = NULL, *yyout = NULL; typedef int yy_state_type; extern int yylineno; - int yylineno = 1; extern char *yytext; +#ifdef yytext_ptr +#undef yytext_ptr +#endif #define yytext_ptr yytext -static yy_state_type yy_get_previous_state (void ); -static yy_state_type yy_try_NUL_trans (yy_state_type current_state ); -static int yy_get_next_buffer (void ); -static void yy_fatal_error (yyconst char msg[] ) __dead2; +static yy_state_type yy_get_previous_state ( void ); +static yy_state_type yy_try_NUL_trans ( yy_state_type current_state ); +static int yy_get_next_buffer ( void ); +static void yynoreturn yy_fatal_error ( const char* msg ) __dead2; /* 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; \ - (yytext_ptr) -= (yy_more_len); \ - yyleng = (size_t) (yy_cp - (yytext_ptr)); \ + yyleng = (int) (yy_cp - yy_bp); \ (yy_hold_char) = *yy_cp; \ *yy_cp = '\0'; \ (yy_c_buf_p) = yy_cp; - -#define YY_NUM_RULES 251 -#define YY_END_OF_BUFFER 252 +#define YY_NUM_RULES 253 +#define YY_END_OF_BUFFER 254 /* This struct is not used in this scanner, but its presence is necessary. */ struct yy_trans_info @@ -383,272 +369,134 @@ struct yy_trans_info flex_int32_t yy_verify; flex_int32_t yy_nxt; }; -static yyconst flex_int16_t yy_acclist[1223] = - { 0, - 248, 248, 252, 250, 251, 9, 250, 251, 20, 250, - 251, 250, 251, 18, 250, 251, 1, 9, 250, 251, - 19, 20, 250, 251, 250, 251, 250, 251, 250, 251, - 250, 251, 17, 18, 250, 251, 164, 250, 251, 149, - 164, 250, 251, 150, 250, 251, 164, 250, 251, 142, - 164, 250, 251, 164, 250, 251, 161, 163, 164, 250, - 251, 162, 163, 164, 250, 251, 163, 164, 250, 251, - 163, 164, 250, 251, 164, 250, 251, 164, 250, 251, - 164, 250, 251, 163, 164, 250, 251, 148, 149, 164, - 250, 251, 138, 150, 250, 251, 164, 250, 251, 164, - - 250, 251, 140, 164, 250, 251, 141, 164, 250, 251, - 136, 250, 251, 137, 250, 251, 136, 250, 251, 135, - 136, 250, 251, 134, 136, 250, 251, 135, 136, 250, - 251, 248, 249, 250, 251, 248, 249, 250, 251, 249, - 250, 251, 249, 250, 251, 41, 250, 251, 42, 250, - 251, 41, 250, 251, 41, 250, 251, 41, 250, 251, - 41, 250, 251, 41, 250, 251, 41, 250, 251, 50, - 250, 251, 49, 250, 251, 51, 250, 251, 250, 251, - 170, 250, 251, 170, 250, 251, 165, 250, 251, 170, - 250, 251, 166, 170, 250, 251, 167, 170, 250, 251, - - 169, 170, 250, 251, 171, 250, 251, 219, 250, 251, - 220, 250, 251, 219, 250, 251, 217, 219, 250, 251, - 216, 219, 250, 251, 218, 219, 250, 251, 172, 250, - 251, 174, 250, 251, 172, 250, 251, 173, 250, 251, - 172, 250, 251, 186, 250, 251, 186, 250, 251, 186, - 250, 251, 186, 250, 251, 188, 190, 250, 251, 190, - 250, 251, 188, 190, 250, 251, 188, 190, 250, 251, - 188, 190, 250, 251, 188, 190, 250, 251, 189, 190, - 250, 251, 233, 239, 250, 251, 238, 250, 251, 233, - 239, 250, 251, 237, 239, 250, 251, 239, 250, 251, - - 239, 250, 251, 235, 239, 250, 251, 235, 239, 250, - 251, 235, 239, 250, 251, 234, 239, 250, 251, 234, - 239, 250, 251, 229, 239, 250, 251, 230, 239, 250, - 251, 250, 251, 131, 250, 251, 250, 251, 25, 250, - 251, 26, 250, 251, 25, 250, 251, 22, 250, 251, - 25, 250, 251, 25, 250, 251, 240, 244, 250, 251, - 242, 250, 251, 240, 244, 250, 251, 243, 244, 250, - 251, 244, 250, 251, 227, 250, 251, 227, 250, 251, - 228, 250, 251, 227, 250, 251, 227, 250, 251, 227, - 250, 251, 227, 250, 251, 227, 250, 251, 227, 250, - - 251, 227, 250, 251, 130, 250, 251, 53, 130, 250, - 251, 52, 250, 251, 130, 250, 251, 130, 250, 251, - 130, 250, 251, 130, 250, 251, 54, 130, 250, 251, - 130, 250, 251, 130, 250, 251, 130, 250, 251, 130, - 250, 251, 130, 250, 251, 130, 250, 251, 130, 250, - 251, 130, 250, 251, 130, 250, 251, 130, 250, 251, - 130, 250, 251, 130, 250, 251, 130, 250, 251, 130, - 250, 251, 130, 250, 251, 130, 250, 251, 130, 250, - 251, 130, 250, 251, 130, 250, 251, 130, 250, 251, - 130, 250, 251, 37, 250, 251, 34, 250, 251, 37, - - 250, 251, 35, 37, 250, 251, 48, 250, 251, 45, - 250, 251, 250, 251, 48, 250, 251, 48, 250, 251, - 44, 250, 251, 43, 250, 251, 176, 250, 251, 175, - 250, 251, 177, 250, 251, 178, 250, 251, 179, 250, - 251, 180, 250, 251, 181, 250, 251, 182, 250, 251, - 183, 250, 251, 32, 250, 251, 33, 250, 251, 32, - 250, 251, 31, 250, 251, 29, 250, 251, 30, 250, - 251, 29, 250, 251, 28, 250, 251, 9, 20, 18, - 1, 9, 19, 20, 16, 10, 16, 4, 16, 5, - 2, 17, 18, 149, 150, 144, 160, 158, 154, 154, - - 245, 245, 245, 143, 148, 149, 138, 150, 140, 141, - 153, 139, 137, 135, 134, 134, 132, 135, 133, 135, - 248, 248, 246, 247, 42, 39, 40, 50, 49, 51, - 165, 165, 168, 169, 220, 216, 174, 184, 185, 190, - 187, 233, 238, 236, 222, 235, 235, 235, 231, 232, - 131, 26, 21, 23, 24, 240, 242, 241, 228, 221, - 225, 226, 53, 52, 129, 130, 130, 130, 130, 130, - 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, - 130, 130, 130, 130, 130, 55, 130, 130, 130, 130, - 130, 130, 130, 130, 130, 130, 130, 36, 35, 45, - - 46, 47, 32, 33, 30, 27, 16, 10, 16, 14, - 4, 16, 5, 6, 145, 146, 159, 154, 154, 154, - 154, 154, 245, 245, 156, 155, 157, 139, 145, 147, - 153, 132, 135, 133, 135, 38, 235, 235, 221, 130, - 130, 130, 130, 130, 130, 130, 67, 130, 130, 130, - 130, 72, 130, 130, 130, 130, 130, 130, 130, 130, - 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, - 130, 130, 130, 130, 130, 130, 130, 130, 130, 130, - 130, 130, 130, 130, 130, 130, 130, 14, 15, 4, - 8, 16, 5, 154, 154, 154, 154, 154, 154, 154, - - 245, 157, 235, 235, 56, 57, 130, 130, 130, 130, - 130, 130, 130, 130, 130, 130, 130, 73, 130, 74, - 130, 130, 130, 130, 130, 79, 130, 130, 130, 130, - 130, 130, 130, 130, 84, 130, 130, 130, 130, 130, - 130, 130, 130, 130, 130, 93, 130, 130, 130, 130, - 130, 130, 130, 130, 130, 130, 15, 8, 16, 8, - 16, 8, 16, 154, 154, 154, 154, 154, 154, 154, - 215, 235, 235, 58, 130, 130, 130, 60, 130, 130, - 64, 130, 130, 130, 130, 130, 70, 130, 130, 130, - 130, 75, 130, 130, 130, 130, 130, 130, 130, 130, - - 130, 130, 130, 130, 87, 130, 130, 130, 130, 130, - 91, 130, 130, 130, 130, 130, 130, 130, 130, 130, - 130, 130, 3, 8, 16, 7, 8, 16, 154, 154, - 154, 223, 224, 223, 235, 224, 235, 130, 130, 130, - 63, 130, 130, 130, 130, 130, 130, 130, 130, 126, - 130, 130, 130, 130, 130, 130, 130, 130, 130, 124, - 130, 130, 86, 130, 130, 89, 130, 130, 90, 130, - 130, 130, 130, 105, 130, 130, 95, 130, 130, 96, - 130, 12, 13, 152, 151, 152, 130, 130, 130, 130, - 130, 130, 130, 68, 130, 130, 71, 130, 130, 130, - - 130, 130, 130, 130, 123, 130, 130, 83, 130, 130, - 130, 88, 130, 130, 92, 130, 103, 130, 125, 130, - 130, 130, 151, 130, 130, 130, 130, 130, 130, 130, - 69, 130, 130, 130, 130, 130, 80, 130, 130, 130, - 130, 130, 130, 130, 114, 94, 130, 130, 115, 11, - 191, 215, 192, 215, 193, 215, 194, 215, 195, 215, - 196, 215, 197, 215, 198, 215, 199, 215, 200, 215, - 201, 215, 130, 130, 130, 130, 130, 130, 130, 130, - 130, 130, 130, 130, 130, 130, 85, 130, 130, 130, - 116, 104, 130, 117, 202, 215, 203, 215, 204, 215, - - 205, 215, 206, 215, 207, 215, 208, 215, 209, 215, - 210, 215, 211, 215, 212, 215, 213, 215, 130, 130, - 130, 130, 130, 130, 130, 122, 130, 130, 130, 77, - 130, 130, 130, 130, 130, 130, 110, 120, 118, 111, - 121, 119, 214, 215, 130, 130, 130, 130, 130, 130, - 130, 126, 130, 76, 130, 130, 82, 130, 130, 127, - 130, 130, 106, 108, 107, 109, 130, 130, 130, 65, - 130, 130, 130, 130, 130, 78, 130, 130, 112, 113, - 98, 99, 130, 130, 130, 130, 130, 130, 130, 128, - 130, 97, 101, 130, 130, 130, 130, 130, 68, 130, - - 130, 100, 102, 130, 130, 62, 130, 66, 130, 130, - 130, 130, 61, 130, 69, 130, 130, 130, 81, 130, - 59, 130 - } ; - -static yyconst flex_int16_t yy_accept[1108] = +static const flex_int16_t yy_accept[1114] = { 0, - 1, 1, 1, 1, 1, 1, 1, 2, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, - 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, - 6, 9, 12, 14, 17, 21, 25, 27, 29, 31, - 33, 37, 40, 44, 47, 50, 54, 57, 62, 67, - 71, 75, 78, 81, 84, 88, 93, 97, 100, 103, - 107, 111, 114, 117, 120, 124, 128, 132, 136, 140, - 143, 146, 149, 152, 155, 158, 161, 164, 167, 170, - - 173, 176, 179, 181, 184, 187, 190, 193, 197, 201, - 205, 208, 211, 214, 217, 221, 225, 229, 232, 235, - 238, 241, 244, 247, 250, 253, 256, 260, 263, 267, - 271, 275, 279, 283, 287, 290, 294, 298, 301, 304, - 308, 312, 316, 320, 324, 328, 332, 334, 337, 339, - 342, 345, 348, 351, 354, 357, 361, 364, 368, 372, - 375, 378, 381, 384, 387, 390, 393, 396, 399, 402, - 405, 408, 412, 415, 418, 421, 424, 427, 431, 434, - 437, 440, 443, 446, 449, 452, 455, 458, 461, 464, - 467, 470, 473, 476, 479, 482, 485, 488, 491, 494, - - 497, 500, 503, 507, 510, 513, 515, 518, 521, 524, - 527, 530, 533, 536, 539, 542, 545, 548, 551, 554, - 557, 560, 563, 566, 569, 572, 575, 578, 579, 580, - 580, 581, 583, 585, 585, 585, 585, 586, 588, 588, - 588, 588, 588, 589, 590, 591, 591, 592, 594, 595, - 596, 596, 596, 596, 597, 597, 598, 599, 599, 600, - 601, 601, 602, 603, 604, 604, 604, 605, 605, 607, - 609, 609, 609, 609, 610, 611, 612, 613, 613, 614, - 615, 616, 617, 619, 621, 622, 623, 624, 625, 626, - 626, 626, 627, 628, 628, 629, 630, 631, 631, 632, - - 632, 633, 634, 635, 636, 637, 638, 638, 639, 640, - 641, 642, 643, 644, 644, 645, 645, 646, 647, 648, - 649, 650, 651, 651, 652, 652, 653, 654, 655, 656, - 657, 658, 659, 659, 659, 660, 661, 662, 663, 664, - 665, 665, 666, 666, 666, 667, 668, 669, 670, 671, - 672, 673, 674, 675, 676, 677, 678, 679, 680, 681, - 682, 683, 684, 685, 686, 687, 688, 689, 690, 691, - 692, 693, 694, 695, 696, 697, 698, 698, 699, 700, - 701, 702, 703, 704, 705, 706, 707, 707, 708, 710, - 710, 711, 711, 711, 711, 711, 711, 712, 713, 714, - - 714, 715, 715, 716, 716, 717, 717, 718, 718, 719, - 720, 720, 721, 722, 723, 724, 725, 726, 727, 727, - 728, 730, 731, 731, 732, 732, 734, 736, 736, 736, - 736, 737, 737, 737, 737, 737, 737, 737, 737, 737, - 737, 737, 737, 737, 737, 738, 739, 740, 740, 740, - 741, 742, 743, 744, 745, 746, 747, 749, 750, 751, - 752, 754, 755, 756, 757, 758, 759, 760, 761, 762, - 763, 764, 765, 766, 767, 768, 769, 770, 771, 772, - 773, 774, 775, 776, 777, 778, 779, 780, 781, 782, - 783, 784, 785, 786, 787, 788, 788, 788, 788, 788, - - 790, 790, 790, 790, 790, 790, 790, 791, 793, 794, - 794, 795, 796, 797, 798, 799, 800, 801, 802, 803, - 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, - 803, 803, 803, 803, 803, 803, 803, 803, 803, 803, - 803, 803, 803, 803, 803, 803, 804, 805, 806, 807, - 808, 809, 810, 811, 812, 813, 814, 815, 816, 817, - 818, 820, 822, 823, 824, 825, 826, 828, 829, 830, - 831, 832, 833, 834, 835, 837, 838, 839, 840, 841, - 842, 843, 844, 845, 846, 848, 849, 850, 851, 852, - 853, 854, 855, 856, 857, 857, 857, 857, 857, 858, - - 858, 858, 858, 858, 858, 860, 862, 864, 864, 865, - 866, 867, 868, 869, 870, 871, 871, 871, 871, 871, - 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, - 872, 872, 872, 872, 872, 872, 872, 872, 872, 872, - 872, 872, 872, 872, 873, 874, 876, 877, 878, 880, - 881, 883, 884, 885, 886, 887, 889, 890, 891, 892, - 894, 895, 896, 897, 898, 899, 900, 901, 902, 903, - 904, 905, 907, 908, 909, 910, 911, 913, 914, 915, - 916, 917, 918, 919, 920, 921, 922, 923, 923, 923, - 923, 923, 924, 924, 924, 924, 926, 927, 929, 929, - - 930, 931, 932, 932, 932, 933, 934, 934, 934, 934, - 934, 934, 934, 934, 934, 934, 934, 934, 934, 934, - 934, 934, 934, 934, 934, 934, 934, 934, 934, 934, - 934, 936, 938, 939, 940, 941, 943, 944, 945, 946, - 947, 948, 949, 950, 952, 953, 954, 955, 956, 957, - 958, 959, 960, 962, 963, 965, 966, 968, 969, 971, - 972, 973, 974, 976, 976, 977, 979, 980, 980, 982, - 982, 982, 982, 982, 982, 983, 983, 984, 984, 985, - 985, 987, 987, 987, 987, 987, 987, 987, 987, 987, - 987, 987, 987, 987, 987, 987, 987, 987, 987, 987, - - 987, 987, 987, 987, 987, 987, 988, 989, 990, 991, - 992, 993, 994, 996, 997, 999, 1000, 1001, 1002, 1003, - 1004, 1005, 1007, 1008, 1010, 1011, 1012, 1014, 1015, 1017, - 1019, 1021, 1021, 1021, 1021, 1021, 1021, 1021, 1022, 1023, - 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, 1023, - 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, - 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, - 1024, 1024, 1024, 1024, 1024, 1025, 1026, 1027, 1028, 1029, - 1030, 1031, 1033, 1034, 1035, 1036, 1037, 1039, 1040, 1041, - 1042, 1043, 1044, 1045, 1045, 1045, 1046, 1046, 1046, 1046, - - 1046, 1046, 1046, 1048, 1049, 1049, 1049, 1050, 1050, 1050, - 1050, 1050, 1050, 1050, 1050, 1050, 1050, 1051, 1051, 1053, - 1055, 1057, 1059, 1061, 1063, 1065, 1067, 1069, 1071, 1073, - 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, 1073, - 1073, 1073, 1073, 1074, 1075, 1076, 1077, 1078, 1079, 1080, - 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1089, 1090, 1091, - 1091, 1091, 1091, 1091, 1091, 1091, 1092, 1092, 1094, 1094, - 1094, 1094, 1094, 1094, 1095, 1095, 1095, 1095, 1095, 1095, - 1097, 1099, 1101, 1103, 1105, 1107, 1109, 1111, 1113, 1115, - 1117, 1119, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, - - 1128, 1129, 1130, 1132, 1133, 1134, 1135, 1136, 1137, 1137, - 1137, 1138, 1138, 1139, 1140, 1141, 1141, 1141, 1141, 1142, - 1143, 1143, 1143, 1143, 1143, 1143, 1143, 1145, 1146, 1147, - 1148, 1149, 1150, 1151, 1152, 1154, 1156, 1157, 1159, 1160, - 1162, 1163, 1164, 1165, 1165, 1166, 1167, 1167, 1167, 1167, - 1167, 1167, 1167, 1167, 1168, 1169, 1170, 1172, 1173, 1174, - 1175, 1176, 1178, 1179, 1180, 1181, 1182, 1182, 1182, 1182, - 1182, 1183, 1184, 1185, 1186, 1187, 1188, 1189, 1190, 1192, - 1193, 1193, 1194, 1194, 1195, 1196, 1197, 1198, 1199, 1201, - 1202, 1203, 1204, 1205, 1206, 1208, 1210, 1211, 1212, 1213, - - 1215, 1217, 1218, 1219, 1221, 1223, 1223 + 0, 0, 0, 0, 0, 0, 246, 246, 40, 40, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 21, 21, + 239, 239, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 21, 21, + 250, 250, 239, 239, 254, 252, 9, 20, 252, 18, + 1, 19, 252, 252, 252, 252, 17, 163, 148, 149, + 163, 141, 163, 160, 161, 162, 162, 163, 163, 163, + 162, 147, 137, 163, 163, 139, 140, 135, 136, 135, + 134, 133, 134, 246, 247, 247, 40, 42, 40, 41, + + 40, 40, 41, 41, 41, 50, 49, 51, 252, 169, + 169, 164, 169, 165, 166, 168, 170, 218, 219, 218, + 216, 215, 217, 171, 173, 171, 172, 171, 185, 185, + 185, 185, 187, 189, 187, 187, 187, 187, 188, 228, + 233, 228, 232, 231, 234, 229, 229, 229, 234, 234, + 226, 227, 252, 130, 252, 21, 23, 21, 22, 22, + 22, 235, 241, 235, 236, 242, 242, 242, 224, 224, + 225, 224, 224, 224, 224, 224, 224, 224, 129, 53, + 52, 129, 129, 129, 129, 54, 129, 129, 129, 129, + 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, + + 129, 129, 129, 129, 129, 129, 129, 36, 33, 36, + 34, 48, 45, 252, 48, 48, 44, 43, 175, 174, + 176, 177, 178, 179, 180, 181, 182, 31, 32, 31, + 30, 28, 29, 28, 27, 22, 250, 251, 251, 237, + 237, 238, 9, 20, 0, 18, 1, 19, 0, 0, + 0, 16, 10, 0, 0, 0, 0, 4, 16, 5, + 0, 2, 17, 148, 149, 0, 0, 0, 143, 0, + 159, 157, 0, 153, 153, 0, 243, 243, 243, 0, + 0, 142, 0, 147, 137, 0, 0, 0, 139, 140, + 152, 138, 0, 136, 134, 133, 131, 132, 246, 244, + + 245, 40, 42, 40, 40, 37, 38, 0, 50, 49, + 51, 0, 164, 0, 164, 167, 168, 219, 215, 173, + 0, 183, 184, 189, 186, 228, 233, 0, 0, 221, + 229, 229, 229, 0, 130, 0, 21, 23, 24, 235, + 241, 240, 239, 240, 0, 0, 225, 220, 0, 0, + 53, 52, 0, 128, 0, 0, 129, 129, 129, 129, + 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, + 129, 129, 129, 129, 129, 129, 55, 129, 129, 129, + 129, 129, 129, 129, 129, 129, 129, 129, 0, 35, + 34, 48, 45, 46, 47, 31, 32, 29, 26, 25, + + 250, 248, 249, 237, 0, 16, 10, 0, 14, 0, + 0, 0, 0, 0, 4, 16, 5, 0, 6, 0, + 144, 0, 145, 0, 158, 0, 153, 153, 0, 153, + 153, 153, 243, 243, 155, 154, 0, 156, 138, 146, + 0, 152, 0, 131, 132, 40, 40, 0, 39, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 230, 229, 229, 0, 0, 220, 0, 0, + 0, 0, 129, 129, 129, 129, 129, 129, 65, 129, + 129, 129, 70, 129, 129, 129, 129, 129, 129, 129, + 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, + + 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, + 129, 129, 129, 129, 129, 129, 129, 129, 0, 0, + 0, 0, 14, 0, 0, 0, 0, 0, 0, 4, + 8, 5, 0, 153, 153, 153, 153, 153, 153, 153, + 243, 156, 0, 0, 40, 40, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 229, 229, + 0, 0, 56, 57, 129, 129, 129, 129, 129, 129, + 129, 129, 129, 129, 71, 72, 129, 129, 129, 129, + 77, 78, 129, 129, 129, 129, 129, 129, 129, 83, + + 129, 129, 129, 129, 129, 129, 129, 129, 129, 92, + 129, 129, 129, 129, 129, 129, 129, 129, 129, 0, + 0, 0, 0, 15, 0, 0, 0, 0, 0, 8, + 8, 8, 0, 153, 153, 153, 153, 153, 153, 153, + 0, 0, 40, 40, 214, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 229, 229, + 0, 0, 58, 129, 60, 129, 62, 129, 129, 129, + 129, 68, 129, 129, 129, 73, 129, 129, 129, 129, + 129, 129, 129, 129, 129, 129, 129, 86, 129, 129, + + 129, 129, 90, 129, 129, 129, 129, 129, 129, 129, + 129, 129, 129, 0, 0, 0, 0, 3, 0, 0, + 0, 8, 7, 8, 0, 153, 153, 153, 0, 0, + 40, 40, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 222, 223, 222, 223, + 129, 61, 129, 129, 129, 129, 129, 129, 129, 125, + 129, 129, 129, 129, 129, 129, 129, 129, 123, 129, + 85, 129, 88, 129, 89, 129, 129, 129, 104, 0, + 129, 94, 129, 0, 95, 0, 0, 0, 0, 0, + + 12, 0, 13, 0, 151, 0, 150, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 129, 129, 129, 129, 129, 66, 129, 69, 129, + 129, 129, 129, 129, 129, 122, 129, 82, 129, 129, + 87, 129, 91, 102, 124, 0, 0, 0, 0, 0, + 0, 129, 129, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 150, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 129, 129, + + 129, 129, 129, 67, 129, 129, 129, 129, 79, 129, + 129, 129, 129, 129, 129, 0, 0, 113, 0, 0, + 0, 0, 0, 0, 93, 129, 0, 0, 114, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 11, 0, + 190, 191, 192, 193, 194, 195, 196, 197, 198, 199, + 200, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 129, 129, 129, 129, 129, 129, + 129, 129, 129, 129, 129, 129, 84, 129, 129, 0, + 0, 0, 0, 0, 0, 115, 0, 103, 0, 0, + 0, 0, 0, 116, 0, 0, 0, 0, 0, 201, + + 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, + 212, 0, 129, 129, 129, 129, 129, 121, 129, 129, + 75, 129, 129, 129, 129, 129, 0, 0, 109, 0, + 119, 117, 110, 0, 0, 0, 120, 118, 0, 0, + 0, 0, 0, 0, 213, 129, 129, 129, 129, 129, + 125, 74, 129, 81, 129, 126, 129, 105, 107, 0, + 106, 108, 0, 0, 0, 0, 0, 0, 0, 129, + 63, 129, 129, 129, 129, 76, 129, 111, 112, 97, + 0, 0, 0, 0, 98, 129, 129, 129, 129, 129, + 127, 96, 0, 100, 0, 129, 129, 129, 66, 129, + + 99, 101, 129, 64, 129, 129, 129, 67, 129, 129, + 80, 59, 0 } ; -static yyconst flex_int32_t yy_ec[256] = +static const YY_CHAR yy_ec[256] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 4, 4, 5, 1, 1, 1, 1, 1, 1, 1, @@ -680,742 +528,806 @@ static yyconst flex_int32_t yy_ec[256] = 1, 1, 1, 1, 1 } ; -static yyconst flex_int32_t yy_meta[85] = +static const YY_CHAR yy_meta[85] = { 0, - 1, 1, 2, 1, 3, 4, 1, 1, 1, 5, - 1, 6, 1, 7, 1, 8, 1, 5, 9, 9, - 9, 9, 10, 1, 1, 1, 1, 11, 11, 11, - 11, 11, 11, 12, 12, 12, 12, 12, 12, 12, - 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, - 12, 12, 13, 14, 15, 1, 16, 11, 11, 11, - 11, 11, 11, 12, 12, 12, 12, 12, 12, 12, - 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, - 12, 5, 1, 17 + 1, 1, 2, 1, 3, 4, 1, 1, 5, 6, + 1, 7, 8, 9, 1, 10, 1, 11, 12, 12, + 12, 12, 13, 1, 1, 1, 1, 14, 14, 14, + 14, 14, 14, 15, 15, 15, 15, 15, 15, 15, + 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, + 15, 15, 16, 17, 18, 1, 19, 14, 14, 14, + 14, 14, 14, 15, 15, 15, 15, 15, 15, 15, + 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, + 15, 20, 1, 21 } ; -static yyconst flex_int16_t yy_base[1201] = +static const flex_int16_t yy_base[1221] = { 0, - 0, 84, 167, 250, 171, 184, 174, 179, 192, 233, - 196, 200, 334, 0, 3343, 3340, 203, 416, 206, 211, - 187, 216, 276, 417, 500, 0, 210, 223, 421, 427, - 436, 440, 583, 588, 669, 0, 277, 299, 584, 751, - 579, 580, 576, 732, 279, 305, 310, 444, 3378, 3975, - 228, 3975, 3371, 0, 322, 3975, 3358, 423, 827, 3328, - 0, 3975, 755, 3975, 3337, 3975, 448, 3312, 3975, 3975, - 3323, 3291, 222, 408, 444, 764, 3975, 3311, 230, 3289, - 3975, 3975, 3975, 3306, 0, 3306, 164, 3304, 3975, 3236, - 3217, 3975, 3975, 3266, 239, 119, 3215, 3212, 3180, 0, - - 3248, 3975, 3243, 3975, 476, 3227, 3222, 3975, 3168, 0, - 3975, 3975, 3975, 3203, 3975, 464, 3975, 3975, 3975, 3186, - 3975, 742, 3975, 3161, 751, 180, 3975, 3975, 3171, 0, - 3149, 757, 3975, 0, 3975, 3149, 3975, 200, 3138, 0, - 429, 241, 3097, 3092, 3975, 3975, 306, 3975, 323, 3975, - 3975, 3126, 3108, 3072, 3069, 0, 3975, 3115, 3975, 0, - 3975, 446, 3975, 3114, 3031, 3098, 435, 371, 3045, 3026, - 3975, 3076, 3975, 3074, 3070, 439, 440, 3975, 578, 751, - 586, 562, 735, 752, 0, 572, 577, 588, 786, 749, - 396, 809, 727, 582, 747, 753, 764, 769, 580, 3975, - - 3975, 3067, 588, 3975, 3975, 3053, 3002, 2996, 3975, 3975, - 3975, 3975, 3975, 3975, 3975, 3975, 3975, 3975, 3975, 0, - 3975, 3046, 3975, 3975, 3975, 3018, 2986, 837, 3975, 2998, - 0, 847, 3975, 2997, 817, 777, 0, 0, 891, 903, - 912, 924, 0, 774, 0, 451, 3975, 0, 858, 3975, - 2996, 2914, 472, 3975, 2974, 2953, 3975, 791, 236, 822, - 899, 3975, 275, 0, 2873, 2872, 3975, 2871, 949, 3975, - 2949, 2850, 2918, 2906, 3975, 0, 3975, 796, 3975, 0, - 0, 2925, 0, 0, 2597, 3975, 3975, 3975, 3975, 795, - 794, 3975, 3975, 484, 0, 2597, 3975, 877, 2596, 2594, - - 2594, 3975, 0, 3975, 918, 3975, 1005, 3975, 3975, 3975, - 3975, 0, 3975, 611, 3975, 0, 3975, 0, 853, 851, - 3975, 3975, 490, 3975, 608, 3975, 3975, 3975, 3975, 0, - 3975, 3975, 596, 2510, 3975, 0, 3975, 3975, 2588, 3975, - 2581, 3975, 894, 906, 0, 911, 717, 727, 923, 728, - 2571, 882, 930, 889, 902, 916, 917, 940, 928, 923, - 940, 933, 0, 932, 3975, 935, 939, 951, 956, 1059, - 964, 965, 1052, 955, 957, 1099, 2578, 3975, 1078, 3975, - 3975, 3975, 0, 3975, 3975, 3975, 987, 0, 0, 1087, - 3975, 2576, 1132, 985, 1046, 1058, 0, 1058, 0, 1009, - - 3975, 1016, 3975, 1057, 3975, 1099, 3975, 1068, 731, 1088, - 1095, 1178, 1244, 1280, 988, 0, 3975, 3975, 2492, 1162, - 3975, 3975, 1081, 0, 1086, 0, 0, 1098, 1105, 1100, - 3975, 1167, 1245, 1246, 1247, 1250, 2539, 1248, 1249, 1258, - 1244, 1251, 1259, 1321, 1233, 1224, 0, 1072, 1228, 1243, - 1261, 1287, 1298, 1289, 1298, 1287, 0, 1299, 1228, 1308, - 0, 1280, 1298, 1307, 1316, 1314, 1316, 2532, 1322, 1337, - 1338, 1340, 1342, 1342, 1348, 1353, 1356, 1347, 1357, 1362, - 1366, 1358, 1353, 1356, 1377, 1366, 1370, 1371, 1367, 1383, - 1384, 1379, 1391, 1392, 1381, 1388, 1397, 1275, 1455, 3975, - - 1439, 1463, 1444, 1415, 1412, 1415, 0, 1409, 0, 1429, - 1492, 1558, 1594, 1524, 2449, 1564, 1639, 3975, 3975, 1537, - 1556, 1560, 1407, 2427, 1558, 1563, 1559, 1564, 1572, 1584, - 1574, 1562, 1615, 1619, 1609, 1625, 1626, 1643, 1614, 1651, - 1662, 1658, 1664, 1665, 1616, 1616, 1637, 3975, 3975, 1638, - 1631, 2352, 1634, 1641, 1655, 1650, 1677, 1679, 1671, 1689, - 0, 0, 1690, 1677, 1681, 1697, 0, 2348, 1684, 1694, - 2274, 1686, 1685, 1695, 0, 1692, 1711, 1704, 1703, 1701, - 1713, 1703, 1704, 1712, 0, 1717, 1731, 1731, 1719, 1723, - 1722, 1741, 1726, 1742, 1734, 1747, 1741, 2241, 3975, 1464, - - 1485, 1729, 1743, 1740, 0, 1721, 1591, 2173, 1585, 2139, - 1771, 1807, 1417, 962, 1426, 1755, 2049, 1745, 1769, 3975, - 1774, 1782, 1789, 1775, 1796, 1791, 1810, 1800, 1820, 1822, - 1821, 1823, 1832, 1831, 1838, 1840, 1853, 1856, 1854, 1855, - 1863, 1865, 1861, 1846, 1862, 0, 1853, 1864, 0, 1857, - 0, 2008, 1866, 1862, 1869, 0, 1874, 1893, 1870, 0, - 1888, 1875, 1886, 1882, 1880, 1878, 1897, 1876, 1882, 1889, - 1889, 0, 1904, 1895, 1899, 1919, 0, 1907, 1909, 1908, - 1923, 1791, 1924, 1925, 1919, 1747, 1917, 1918, 1918, 1938, - 1924, 1726, 1599, 1927, 1937, 1970, 3975, 1702, 1652, 1923, - - 1755, 1941, 1625, 1618, 3975, 3975, 1961, 1977, 1966, 1969, - 1956, 1979, 1983, 1986, 1989, 1984, 1992, 1987, 1994, 1990, - 1988, 1995, 2007, 2004, 2016, 2022, 1996, 2028, 2018, 2026, - 0, 0, 1620, 1990, 2009, 0, 2035, 2020, 2035, 2029, - 2024, 2025, 2029, 1589, 2049, 2041, 2052, 2048, 2053, 2054, - 2044, 2057, 0, 2064, 0, 2048, 0, 1576, 0, 2064, - 2070, 2056, 0, 2096, 2062, 0, 2067, 2108, 0, 1531, - 2072, 2078, 1438, 1853, 3975, 2105, 3975, 2068, 3975, 1463, - 3975, 1407, 1402, 1348, 1345, 1314, 1307, 1269, 1260, 1256, - 1210, 1158, 2106, 2111, 2097, 2118, 2122, 2129, 2125, 2140, - - 2131, 2136, 2141, 2143, 2156, 2131, 2138, 2147, 2101, 2151, - 2138, 2153, 0, 2141, 0, 2144, 2165, 2153, 2159, 2158, - 2165, 0, 2165, 0, 2167, 2169, 0, 2178, 0, 0, - 0, 2183, 2167, 2179, 2210, 2178, 2189, 2188, 2189, 2202, - 2186, 2194, 2218, 2196, 2202, 1119, 1114, 2206, 2118, 3975, - 1106, 1100, 1081, 1068, 1065, 1061, 1057, 972, 968, 965, - 914, 925, 893, 881, 874, 869, 865, 861, 854, 843, - 807, 802, 776, 2235, 2212, 2226, 2221, 2227, 2239, 2238, - 2228, 0, 2228, 2239, 2242, 2252, 0, 2238, 2244, 2249, - 2244, 2258, 2263, 2269, 2255, 3975, 2263, 2265, 2265, 2281, - - 2265, 2262, 0, 2285, 2288, 2274, 3975, 2277, 2280, 2295, - 2279, 2280, 2283, 2303, 2283, 2330, 3975, 2335, 3975, 3975, - 3975, 3975, 3975, 3975, 3975, 3975, 3975, 3975, 3975, 735, - 612, 608, 598, 441, 374, 261, 245, 202, 152, 149, - 137, 165, 2296, 2303, 2304, 2320, 2326, 2316, 2324, 2329, - 2324, 2316, 2319, 2335, 2324, 2327, 0, 2332, 2328, 2327, - 2332, 2345, 2348, 2352, 2344, 3975, 2338, 0, 2338, 2343, - 2357, 2362, 2357, 3975, 2371, 2356, 2359, 2358, 2380, 3975, - 3975, 3975, 3975, 3975, 3975, 3975, 3975, 3975, 3975, 3975, - 3975, 128, 2384, 2382, 2373, 2387, 2376, 2378, 2378, 0, - - 2395, 2396, 0, 2385, 2384, 2405, 2403, 2401, 2405, 2413, - 3975, 2401, 3975, 3975, 3975, 2409, 2416, 2404, 3975, 3975, - 2400, 2422, 2422, 2414, 2417, 2417, 3975, 2421, 2421, 2418, - 2424, 2441, 2442, 2443, 0, 0, 2453, 0, 2436, 0, - 2451, 3975, 3975, 2445, 3975, 3975, 2446, 2457, 2445, 2461, - 2464, 2462, 2468, 2473, 2466, 2460, 0, 2462, 2459, 2461, - 2483, 0, 2463, 3975, 3975, 3975, 2484, 2488, 2476, 2482, - 3975, 2495, 2485, 2497, 2495, 2501, 2506, 2493, 0, 3975, - 2496, 3975, 2508, 2498, 2506, 2503, 2506, 2505, 0, 2520, - 3975, 3975, 2522, 2514, 0, 0, 2529, 2514, 2515, 0, - - 0, 2533, 2539, 0, 0, 3975, 2601, 2618, 2635, 2652, - 2669, 2686, 2703, 2720, 2737, 2754, 2771, 2788, 2805, 2822, - 2839, 2856, 2873, 2890, 2907, 2917, 2933, 2942, 2958, 2975, - 2986, 3002, 3019, 3036, 3053, 3063, 3079, 3096, 3113, 3127, - 3137, 3153, 3170, 3187, 3204, 3215, 2009, 3227, 3244, 3254, - 3270, 3287, 3294, 3300, 3316, 3326, 3342, 3359, 3376, 2564, - 3386, 3403, 3420, 3437, 3454, 3471, 3488, 3505, 3522, 3532, - 3548, 3562, 3572, 3588, 3605, 3622, 3639, 3650, 3662, 3679, - 3696, 3713, 3730, 3740, 3749, 3765, 3782, 3799, 2571, 3809, - 3826, 3843, 3860, 3877, 3885, 3890, 3906, 3923, 3940, 3957 - + 0, 84, 167, 250, 171, 184, 135, 142, 220, 231, + 196, 200, 334, 0, 3627, 3625, 211, 416, 203, 212, + 189, 225, 266, 417, 500, 0, 207, 208, 234, 421, + 424, 436, 583, 588, 669, 0, 294, 304, 584, 751, + 579, 580, 417, 576, 287, 306, 241, 441, 595, 608, + 169, 238, 440, 754, 3680, 4511, 325, 4511, 3676, 0, + 446, 4511, 3673, 430, 827, 3661, 0, 4511, 758, 4511, + 3650, 4511, 453, 3621, 4511, 4511, 3619, 3584, 129, 746, + 445, 766, 4511, 3604, 198, 3582, 4511, 4511, 4511, 3600, + 0, 3599, 214, 0, 3506, 3483, 0, 4511, 3532, 4511, + + 420, 119, 3481, 3478, 3446, 0, 3526, 4511, 3520, 4511, + 482, 3520, 3518, 4511, 3455, 0, 4511, 4511, 4511, 3504, + 4511, 598, 4511, 4511, 4511, 3499, 4511, 754, 4511, 3477, + 759, 180, 4511, 4511, 3467, 0, 3442, 762, 4511, 0, + 4511, 3459, 4511, 3406, 3434, 0, 562, 167, 3393, 3370, + 4511, 4511, 326, 4511, 420, 0, 4511, 3418, 3402, 3366, + 3342, 0, 4511, 3368, 4511, 3317, 444, 3314, 4511, 471, + 4511, 3354, 3271, 3337, 572, 189, 3295, 3285, 4511, 3332, + 4511, 3307, 3303, 585, 594, 4511, 746, 734, 744, 754, + 763, 770, 0, 755, 748, 763, 818, 789, 240, 822, + + 762, 381, 802, 791, 813, 824, 577, 4511, 4511, 3302, + 871, 0, 4511, 3302, 3250, 3231, 4511, 4511, 4511, 4511, + 4511, 4511, 4511, 4511, 4511, 4511, 4511, 0, 4511, 3279, + 4511, 4511, 4511, 3276, 3260, 3259, 0, 3221, 3214, 0, + 3264, 4511, 835, 4511, 3262, 0, 903, 4511, 3257, 842, + 817, 0, 0, 910, 914, 918, 922, 0, 814, 0, + 457, 4511, 0, 943, 4511, 3241, 3141, 483, 4511, 3217, + 3212, 4511, 826, 556, 903, 930, 4511, 757, 0, 3134, + 3131, 4511, 3129, 964, 4511, 3190, 3110, 3174, 3161, 4511, + 0, 4511, 896, 4511, 0, 3172, 0, 0, 0, 4511, + + 4511, 0, 4511, 910, 913, 4511, 4511, 602, 0, 3169, + 4511, 957, 3164, 3161, 3127, 4511, 0, 4511, 976, 4511, + 1020, 4511, 4511, 4511, 4511, 0, 4511, 3116, 0, 4511, + 0, 926, 930, 644, 4511, 662, 0, 4511, 4511, 0, + 4511, 4511, 3071, 3121, 794, 3037, 4511, 0, 934, 932, + 3117, 4511, 3091, 4511, 938, 939, 0, 940, 738, 956, + 802, 3059, 876, 978, 933, 933, 939, 948, 964, 1030, + 938, 958, 976, 968, 0, 996, 4511, 999, 1057, 1068, + 981, 1079, 1077, 1080, 1074, 1068, 1070, 1120, 3062, 4511, + 1014, 0, 4511, 4511, 4511, 0, 4511, 4511, 4511, 4511, + + 0, 4511, 4511, 0, 1078, 0, 0, 1153, 4511, 3063, + 1166, 1077, 1076, 1091, 0, 1089, 0, 1018, 4511, 1022, + 4511, 1025, 4511, 1035, 4511, 1091, 1067, 1138, 1162, 1242, + 1177, 1308, 1105, 0, 4511, 4511, 2954, 1198, 4511, 4511, + 1144, 0, 1137, 0, 0, 1161, 1156, 1123, 4511, 1202, + 1308, 1309, 1310, 1319, 3013, 1312, 1311, 1327, 1320, 1321, + 1323, 1382, 4511, 1172, 1166, 2589, 2537, 0, 1178, 1169, + 1169, 1298, 1315, 1324, 1330, 1321, 1330, 1323, 0, 1341, + 1332, 1348, 0, 1346, 1350, 1348, 1361, 1350, 1367, 2573, + 1370, 1366, 1380, 1382, 1382, 1385, 1378, 1387, 1391, 1400, + + 1393, 1403, 1406, 1414, 1400, 1401, 1404, 1429, 1419, 1424, + 1428, 1425, 1436, 1435, 1430, 1441, 1442, 1432, 1432, 1450, + 1209, 1508, 4511, 1215, 1512, 1219, 1461, 1455, 1451, 0, + 1143, 0, 1461, 1534, 1600, 1636, 204, 2525, 1606, 1681, + 4511, 4511, 1453, 1463, 1591, 1442, 2524, 1599, 1604, 1600, + 1607, 1605, 1611, 1608, 1650, 1620, 1606, 1614, 1613, 1654, + 1663, 1652, 1661, 1666, 1682, 1664, 1693, 1694, 1655, 1674, + 1662, 1675, 4511, 4511, 1683, 1676, 1677, 1683, 1697, 1692, + 1731, 1711, 1702, 1718, 0, 0, 1719, 1706, 1716, 1735, + 0, 0, 2553, 1722, 1732, 2540, 1725, 1722, 1733, 0, + + 1727, 1747, 1740, 1739, 1735, 1752, 1739, 1740, 1746, 0, + 1750, 1763, 1760, 1750, 1752, 1759, 1777, 1762, 1778, 1769, + 1783, 1778, 2514, 4511, 1224, 1230, 1772, 1783, 1780, 0, + 1507, 1234, 2364, 732, 2273, 1809, 1845, 1430, 1076, 1585, + 1797, 2286, 1785, 1807, 4511, 1811, 1814, 1829, 1835, 1821, + 1808, 1822, 1845, 1859, 1860, 1862, 1868, 1869, 1870, 1825, + 1888, 1890, 1876, 1891, 1874, 1902, 1894, 1898, 1795, 1891, + 1882, 1899, 0, 1887, 0, 1892, 0, 2260, 1900, 1891, + 1909, 0, 1904, 2253, 1902, 0, 1916, 1907, 1918, 2227, + 1912, 1909, 1924, 2201, 1908, 1918, 1922, 0, 1934, 1925, + + 1931, 1947, 0, 1936, 1942, 1941, 1953, 2103, 1957, 1958, + 1952, 2085, 1950, 1951, 1950, 1969, 1956, 2133, 1515, 1961, + 1971, 2002, 4511, 2117, 2038, 1981, 1592, 1842, 2025, 1983, + 0, 0, 1972, 1990, 1999, 1987, 1994, 2008, 2005, 2007, + 2015, 2023, 2016, 2021, 2017, 2024, 2022, 2026, 2030, 2029, + 2037, 2035, 2045, 2051, 2054, 2061, 0, 0, 4511, 4511, + 1922, 0, 2049, 2039, 2050, 2053, 2051, 2051, 2054, 1831, + 2073, 2064, 2077, 2073, 2081, 2082, 2072, 2085, 0, 2091, + 0, 2074, 0, 1824, 0, 2091, 2094, 2082, 0, 2116, + 2088, 0, 2092, 2133, 0, 1728, 2097, 2095, 1714, 1678, + + 4511, 2135, 4511, 2096, 4511, 1726, 4511, 1703, 1612, 1601, + 1514, 1500, 1477, 1377, 1373, 1333, 1274, 1203, 2133, 2128, + 2148, 2151, 2144, 2150, 2156, 2158, 2161, 2163, 2184, 2167, + 2164, 2157, 2151, 2159, 2158, 2173, 0, 2165, 0, 2166, + 2182, 2173, 2179, 2178, 2186, 0, 2185, 0, 2187, 2193, + 0, 2202, 0, 0, 0, 2204, 2187, 2201, 2224, 2200, + 2222, 2213, 2219, 2230, 2199, 2227, 2239, 2222, 2225, 1162, + 1158, 2228, 2278, 4511, 1112, 1109, 1081, 1063, 1057, 984, + 976, 969, 923, 913, 910, 931, 895, 891, 887, 881, + 874, 856, 848, 843, 840, 804, 788, 2259, 2248, 2258, + + 2265, 2264, 2241, 0, 2254, 2265, 2268, 2279, 0, 2262, + 2268, 2271, 2266, 2278, 2283, 2289, 2273, 4511, 2280, 2281, + 2281, 2300, 2283, 2281, 0, 2303, 2307, 2292, 4511, 2302, + 2304, 2319, 2303, 2307, 2309, 2328, 2309, 2357, 4511, 2362, + 4511, 4511, 4511, 4511, 4511, 4511, 4511, 4511, 4511, 4511, + 4511, 746, 725, 597, 577, 441, 426, 420, 267, 253, + 247, 230, 183, 181, 2317, 2338, 2342, 2330, 2336, 2343, + 2339, 2331, 2334, 2350, 2341, 2345, 0, 2350, 2346, 2344, + 2349, 2361, 2364, 2367, 2359, 4511, 2357, 0, 2358, 2362, + 2379, 2383, 2375, 4511, 2388, 2375, 2382, 2377, 2389, 4511, + + 4511, 4511, 4511, 4511, 4511, 4511, 4511, 4511, 4511, 4511, + 4511, 122, 2399, 2398, 2382, 2391, 2391, 0, 2407, 2408, + 0, 2397, 2398, 2420, 2417, 2414, 2418, 2426, 4511, 2414, + 4511, 4511, 4511, 2422, 2429, 2419, 4511, 4511, 2417, 2437, + 2435, 2425, 2428, 2428, 4511, 2431, 2445, 2445, 2447, 2452, + 0, 0, 2461, 0, 2444, 0, 2459, 4511, 4511, 2452, + 4511, 4511, 2454, 2465, 2452, 2467, 2471, 2470, 2476, 2481, + 0, 2468, 2465, 2465, 2485, 0, 2465, 4511, 4511, 4511, + 2489, 2491, 2479, 2488, 4511, 2501, 2491, 2498, 2503, 2490, + 0, 4511, 2497, 4511, 2510, 2500, 2502, 2500, 0, 2514, + + 4511, 4511, 2516, 0, 2523, 2508, 2509, 0, 2528, 2531, + 0, 0, 4511, 2593, 2614, 2635, 2656, 2677, 2698, 2719, + 2740, 2761, 2782, 2803, 2824, 2845, 2866, 2887, 2908, 2929, + 2950, 2971, 2992, 3013, 3025, 3044, 3055, 3074, 3095, 3108, + 3127, 3148, 3169, 3190, 3202, 3221, 3242, 3263, 3280, 3292, + 3311, 3332, 3353, 3374, 3395, 3408, 2553, 3423, 3444, 3463, + 3484, 3505, 3517, 3536, 3557, 2569, 3057, 3578, 3590, 3609, + 3630, 3651, 2558, 3663, 3684, 3705, 3726, 3747, 3768, 3789, + 3810, 3831, 3843, 3862, 3879, 3891, 3910, 3931, 3952, 3973, + 3994, 4007, 4022, 4043, 4062, 4083, 4104, 4125, 4146, 4167, + + 4179, 4189, 4208, 4229, 4250, 2561, 4262, 4283, 4304, 4325, + 4346, 4367, 3028, 4379, 4398, 4419, 4432, 4447, 4468, 4489 } ; -static yyconst flex_int16_t yy_def[1201] = +static const flex_int16_t yy_def[1221] = { 0, - 1106, 1106, 1107, 1107, 1108, 1109, 1110, 1110, 1111, 1111, - 1112, 1112, 1106, 13, 1113, 1113, 1114, 1114, 1115, 1115, - 1116, 1116, 1117, 1117, 1106, 25, 1118, 1118, 1119, 1119, - 1120, 1120, 1121, 1121, 1106, 35, 1122, 1122, 1123, 1123, - 1113, 1113, 1113, 1113, 1124, 1124, 1125, 1125, 1106, 1106, - 1106, 1106, 1106, 1126, 1106, 1106, 1106, 1106, 1127, 1106, - 1128, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1129, 1130, 1131, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1132, 1133, 1132, 1134, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1135, - - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1136, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1130, 1106, 1106, 1130, 1137, 1106, 1106, 1106, 1138, - 1106, 1130, 1106, 1139, 1106, 1139, 1106, 1140, 1106, 1141, - 1141, 1141, 1106, 1106, 1106, 1106, 1142, 1106, 1142, 1106, - 1106, 1106, 1106, 1106, 1106, 1143, 1106, 1143, 1106, 1144, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1145, 1106, 1106, 1106, 1146, 1146, - 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1147, - 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1106, - - 1106, 1148, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1149, - 1106, 1149, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1150, 1106, 1106, 1106, 1106, 1106, 1151, 1152, 1106, 1106, - 1106, 1106, 1153, 1151, 1154, 1155, 1106, 1156, 1106, 1106, - 1106, 1106, 1157, 1106, 1106, 1106, 1106, 1106, 1158, 1158, - 1159, 1106, 1106, 1160, 1106, 1106, 1106, 1161, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1162, 1106, 1106, 1106, 1163, - 1164, 1164, 1165, 1166, 1167, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1168, 1169, 1106, 1106, 1106, 1106, 1106, - - 1106, 1106, 1170, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1171, 1106, 1172, 1106, 1172, 1106, 1173, 1173, 1173, - 1106, 1106, 1174, 1106, 1174, 1106, 1106, 1106, 1106, 1175, - 1106, 1106, 1106, 1106, 1106, 1176, 1106, 1106, 1106, 1106, - 1177, 1106, 1106, 1106, 1178, 1178, 1178, 1178, 1178, 1178, - 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, - 1178, 1178, 1178, 1178, 1106, 1178, 1178, 1178, 1178, 1178, - 1178, 1178, 1178, 1178, 1178, 1178, 1179, 1106, 1106, 1106, - 1106, 1106, 1180, 1106, 1106, 1106, 1106, 1181, 1182, 1183, - 1106, 1106, 1106, 1106, 1106, 1106, 1184, 1181, 1185, 1186, - - 1106, 1186, 1106, 1187, 1106, 1187, 1106, 1106, 1188, 1188, - 1188, 1106, 1188, 1188, 1106, 1189, 1106, 1106, 1190, 1106, - 1106, 1106, 1106, 1191, 1106, 1192, 1193, 1106, 1106, 1194, - 1106, 1194, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1196, 1196, 1197, 1106, 1106, 1178, - 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, - 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, - 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, - 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, - 1178, 1178, 1178, 1178, 1178, 1106, 1106, 1183, 1183, 1106, - - 1183, 1183, 1106, 1106, 1106, 1106, 1184, 1198, 1185, 1106, - 1106, 1188, 414, 412, 412, 1188, 414, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1196, 1196, 1106, 1106, 1178, - 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, - 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, - 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, - 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, - 1178, 1178, 1178, 1178, 1106, 1106, 1106, 1106, 1106, 1183, - - 1183, 1106, 1106, 1106, 1198, 1198, 1198, 1106, 511, 511, - 1188, 414, 1188, 1188, 1188, 1106, 1106, 1106, 1106, 1106, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1196, 1196, 1178, 1178, 1178, 1178, 1178, - 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, - 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, - 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, - 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1106, 1106, 1106, - 1106, 1106, 1199, 1106, 1106, 1198, 1106, 1198, 1106, 1188, - - 1188, 1188, 1106, 1106, 1106, 1106, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1196, 1196, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, - 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, - 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, - 1178, 1178, 1178, 1106, 1178, 1178, 1178, 1106, 1178, 1106, - 1106, 1106, 1106, 1199, 1106, 1199, 1106, 1106, 1106, 1106, - 1106, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, + 1113, 1113, 1114, 1114, 1115, 1116, 1117, 1117, 1118, 1118, + 1119, 1119, 1113, 13, 1120, 1120, 1121, 1121, 1122, 1122, + 1123, 1123, 1124, 1124, 1113, 25, 1125, 1125, 1126, 1126, + 1127, 1127, 1128, 1128, 1113, 35, 1129, 1129, 1130, 1130, + 1120, 1120, 1120, 1120, 1131, 1131, 1132, 1132, 1126, 1126, + 1133, 1133, 1134, 1134, 1113, 1113, 1113, 1113, 1113, 1135, + 1113, 1113, 1113, 1113, 1136, 1113, 1137, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1138, 1139, + 1140, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1141, 1113, 1141, 1142, 1113, 1113, 1143, 1113, 1143, 1113, + + 1143, 1143, 1113, 1113, 1113, 1144, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1145, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1139, 1113, 1113, + 1139, 1146, 1113, 1113, 1113, 1147, 1113, 1139, 1113, 1148, + 1113, 1148, 1113, 1149, 1113, 1150, 1150, 1150, 1113, 1113, + 1113, 1113, 1151, 1113, 1151, 1152, 1113, 1152, 1113, 1113, + 1113, 1153, 1113, 1153, 1113, 1113, 1154, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1155, 1113, 1113, 1113, 1156, 1156, 1156, 1156, + 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1157, 1156, 1156, + + 1156, 1156, 1156, 1156, 1156, 1156, 1156, 1113, 1113, 1158, + 1113, 1159, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1160, 1113, 1160, + 1113, 1113, 1113, 1113, 1113, 1113, 1161, 1113, 1113, 1162, + 1162, 1113, 1113, 1113, 1113, 1163, 1113, 1113, 1113, 1113, + 1113, 1164, 1165, 1113, 1113, 1113, 1113, 1166, 1164, 1167, + 1168, 1113, 1169, 1113, 1113, 1113, 1113, 1170, 1113, 1113, + 1113, 1113, 1113, 1171, 1171, 1172, 1113, 1113, 1173, 1113, + 1113, 1113, 1174, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1175, 1113, 1113, 1113, 1176, 1113, 1177, 1178, 1179, 1113, + + 1113, 1180, 1113, 1180, 1180, 1113, 1113, 1181, 1182, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1183, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1184, 1113, 1113, 1185, 1113, + 1186, 1186, 1186, 1187, 1113, 1187, 1188, 1113, 1113, 1189, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1190, 1113, 1113, + 1113, 1113, 1191, 1113, 1113, 1113, 1192, 1192, 1192, 1192, + 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, + 1192, 1192, 1192, 1192, 1192, 1192, 1113, 1192, 1192, 1192, + 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1193, 1113, + 1113, 1194, 1113, 1113, 1113, 1195, 1113, 1113, 1113, 1113, + + 1196, 1113, 1113, 1197, 1113, 1198, 1199, 1200, 1113, 1113, + 1113, 1113, 1113, 1113, 1201, 1198, 1202, 1203, 1113, 1203, + 1113, 1204, 1113, 1204, 1113, 1113, 1205, 1205, 1205, 1113, + 1205, 1205, 1113, 1206, 1113, 1113, 1207, 1113, 1113, 1113, + 1113, 1208, 1113, 1209, 1210, 1211, 1211, 1212, 1113, 1212, + 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, + 1213, 1213, 1113, 1214, 1214, 1113, 1215, 1216, 1113, 1113, + 1113, 1113, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, + 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, + 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, + + 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, + 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1113, 1113, + 1200, 1200, 1113, 1200, 1200, 1113, 1113, 1113, 1113, 1201, + 1218, 1202, 1113, 1113, 1205, 432, 430, 430, 1205, 432, + 1113, 1113, 1113, 1113, 1211, 1211, 1113, 1213, 1213, 1213, + 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, + 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1214, 1214, + 1113, 1113, 1113, 1113, 1217, 1217, 1217, 1217, 1217, 1217, + 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, + 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, + + 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, + 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1113, + 1113, 1113, 1113, 1113, 1200, 1200, 1113, 1113, 1113, 1218, + 1218, 1218, 1113, 534, 534, 1205, 432, 1205, 1205, 1205, + 1113, 1113, 1211, 1211, 1113, 1213, 1213, 1213, 1213, 1213, + 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, + 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1214, 1214, + 1113, 1113, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, + 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, + 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, + + 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, + 1217, 1217, 1217, 1113, 1113, 1113, 1113, 1113, 1219, 1113, + 1113, 1218, 1113, 1218, 1113, 1205, 1205, 1205, 1113, 1113, + 1211, 1211, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, + 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, + 1213, 1213, 1213, 1213, 1213, 1213, 1214, 1214, 1113, 1113, + 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, + 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, + 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1113, + 1217, 1217, 1217, 1113, 1217, 1113, 1113, 1113, 1113, 1219, + + 1113, 1219, 1113, 1113, 1113, 1113, 1113, 1213, 1213, 1213, + 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, + 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, + 1213, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, + 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, + 1217, 1217, 1217, 1217, 1217, 1113, 1113, 1113, 1113, 1113, + 1113, 1217, 1217, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1220, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1213, 1213, 1213, 1213, 1213, + 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1213, 1217, 1217, + + 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, + 1217, 1217, 1217, 1217, 1217, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1217, 1217, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1220, 1113, 1220, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1213, 1217, 1217, 1217, 1217, 1217, 1217, + 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1217, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, - 1195, 1195, 1195, 1195, 1195, 1178, 1178, 1178, 1178, 1178, - 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, - 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, - 1178, 1106, 1106, 1106, 1106, 1106, 1106, 1178, 1178, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1200, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, - 1195, 1195, 1195, 1195, 1178, 1178, 1178, 1178, 1178, 1178, - 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, - 1178, 1178, 1178, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - - 1106, 1106, 1178, 1178, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1200, 1106, 1200, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1195, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, - 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1178, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, - - 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1178, 1178, 1178, - 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, - 1178, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1178, 1178, 1178, 1178, 1178, 1178, 1178, - 1178, 1178, 1178, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1106, - 1106, 1106, 1106, 1178, 1178, 1178, 1178, 1178, 1178, 1178, - 1106, 1106, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, - - 1178, 1178, 1178, 1178, 1178, 0, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106 + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, + 1217, 1217, 1217, 1217, 1217, 1217, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1217, 1217, 1217, 1217, 1217, + 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1217, + 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1217, 1217, 1217, 1217, 1217, + 1217, 1113, 1113, 1113, 1113, 1217, 1217, 1217, 1217, 1217, + + 1113, 1113, 1217, 1217, 1217, 1217, 1217, 1217, 1217, 1217, + 1217, 1217, 0, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113 } ; -static yyconst flex_int16_t yy_nxt[4060] = +static const flex_int16_t yy_nxt[4596] = { 0, - 50, 51, 52, 50, 53, 50, 50, 50, 50, 50, - 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, - 50, 50, 50, 50, 50, 50, 50, 54, 54, 54, - 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, - 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, - 54, 54, 50, 50, 50, 50, 54, 54, 54, 54, - 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, - 54, 54, 54, 54, 54, 54, 54, 54, 54, 54, - 54, 50, 50, 50, 50, 55, 56, 50, 57, 50, - 58, 50, 59, 50, 50, 50, 50, 50, 50, 50, - - 50, 60, 50, 50, 50, 50, 50, 50, 50, 50, - 50, 61, 61, 61, 61, 61, 61, 61, 61, 61, - 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, - 61, 61, 61, 61, 61, 61, 50, 50, 50, 50, - 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, - 61, 61, 61, 61, 61, 61, 61, 61, 61, 61, - 61, 61, 61, 61, 61, 50, 50, 50, 63, 64, - 291, 65, 66, 83, 67, 84, 89, 68, 69, 70, - 70, 89, 1027, 70, 71, 86, 83, 992, 84, 50, - 72, 991, 87, 70, 93, 309, 94, 101, 102, 291, - - 103, 101, 102, 990, 103, 113, 989, 114, 119, 315, - 120, 121, 148, 119, 149, 120, 121, 115, 50, 73, - 74, 116, 116, 116, 116, 148, 90, 149, 91, 228, - 229, 90, 230, 91, 309, 93, 95, 94, 276, 124, - 125, 99, 126, 96, 97, 283, 98, 284, 75, 70, - 70, 76, 77, 316, 78, 66, 988, 67, 79, 122, - 68, 69, 70, 70, 122, 95, 70, 71, 124, 125, - 290, 126, 96, 80, 260, 261, 70, 95, 128, 201, - 129, 221, 202, 222, 96, 97, 117, 98, 410, 411, - 223, 130, 320, 415, 415, 203, 203, 203, 203, 987, - - 290, 201, 73, 74, 202, 81, 95, 221, 324, 222, - 325, 277, 225, 96, 226, 986, 223, 203, 203, 203, - 203, 320, 227, 232, 233, 324, 234, 325, 131, 132, - 133, 75, 70, 70, 104, 105, 106, 104, 107, 104, - 104, 104, 104, 104, 104, 104, 108, 104, 108, 104, - 104, 104, 104, 104, 104, 104, 104, 104, 104, 109, - 104, 110, 110, 110, 110, 110, 110, 110, 110, 110, - 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, - 110, 110, 110, 110, 110, 110, 104, 104, 104, 104, - 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, - - 110, 110, 110, 110, 110, 110, 110, 110, 110, 110, - 110, 110, 110, 110, 110, 104, 104, 104, 113, 128, - 114, 129, 291, 151, 235, 152, 263, 263, 985, 151, - 115, 152, 130, 153, 116, 116, 116, 116, 157, 153, - 158, 159, 157, 366, 158, 159, 225, 333, 226, 254, - 254, 291, 255, 401, 334, 402, 227, 265, 264, 266, - 319, 236, 267, 267, 267, 267, 290, 343, 344, 131, - 132, 133, 366, 154, 405, 155, 406, 298, 299, 154, - 300, 155, 305, 305, 305, 305, 431, 264, 432, 160, - 319, 236, 324, 160, 325, 984, 290, 343, 344, 117, - - 134, 134, 135, 134, 136, 137, 134, 134, 134, 138, - 134, 134, 134, 134, 134, 134, 134, 139, 134, 134, - 134, 134, 134, 134, 134, 134, 134, 140, 140, 140, - 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, - 140, 140, 140, 140, 141, 140, 140, 140, 140, 140, - 140, 142, 143, 134, 144, 134, 140, 140, 140, 140, - 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, - 140, 140, 140, 141, 140, 140, 140, 140, 140, 140, - 142, 145, 134, 146, 162, 163, 205, 164, 206, 162, - 163, 165, 164, 353, 211, 211, 165, 333, 216, 351, - - 166, 212, 212, 358, 334, 166, 379, 379, 379, 379, - 324, 217, 325, 352, 213, 213, 346, 359, 347, 360, - 315, 218, 348, 353, 214, 214, 219, 167, 371, 215, - 215, 376, 167, 358, 168, 169, 207, 170, 208, 168, - 169, 217, 170, 352, 213, 213, 346, 359, 347, 360, - 218, 348, 983, 214, 214, 219, 167, 371, 215, 215, - 376, 167, 982, 168, 316, 209, 981, 210, 168, 171, - 172, 173, 171, 174, 175, 171, 171, 171, 171, 171, - 171, 171, 171, 171, 171, 171, 171, 171, 176, 177, - 171, 171, 171, 178, 171, 171, 179, 180, 181, 182, - - 183, 184, 185, 186, 187, 185, 185, 188, 189, 190, - 191, 192, 185, 193, 194, 195, 196, 197, 198, 185, - 199, 171, 171, 171, 171, 171, 179, 180, 181, 182, - 183, 184, 185, 186, 187, 185, 185, 188, 189, 190, - 191, 192, 193, 194, 195, 196, 197, 198, 185, 199, - 171, 171, 171, 205, 216, 206, 249, 250, 370, 251, - 263, 263, 452, 252, 354, 269, 270, 217, 271, 263, - 263, 453, 272, 456, 372, 263, 263, 218, 349, 356, - 364, 273, 219, 410, 411, 355, 350, 274, 370, 980, - 365, 452, 264, 373, 354, 374, 375, 217, 941, 357, - - 453, 264, 456, 207, 372, 208, 218, 264, 349, 356, - 364, 219, 387, 361, 355, 398, 350, 362, 235, 275, - 365, 264, 408, 373, 940, 374, 375, 425, 357, 939, - 264, 428, 209, 429, 210, 238, 264, 253, 228, 229, - 367, 230, 387, 361, 412, 398, 253, 362, 232, 233, - 368, 234, 408, 369, 239, 236, 240, 425, 240, 249, - 250, 428, 251, 429, 240, 938, 252, 240, 241, 242, - 367, 240, 243, 244, 410, 411, 937, 245, 298, 299, - 368, 300, 369, 936, 239, 236, 240, 935, 240, 445, - 446, 934, 390, 391, 240, 392, 933, 240, 241, 242, - - 240, 243, 244, 932, 390, 391, 245, 392, 246, 393, - 393, 393, 393, 390, 391, 931, 392, 413, 413, 445, - 446, 393, 393, 393, 393, 390, 391, 458, 392, 448, - 393, 393, 393, 393, 461, 394, 305, 305, 305, 305, - 253, 449, 393, 393, 393, 393, 450, 930, 462, 414, - 269, 270, 454, 271, 395, 464, 458, 272, 459, 448, - 451, 463, 460, 461, 394, 396, 273, 465, 929, 455, - 466, 449, 274, 468, 467, 469, 450, 462, 414, 470, - 471, 472, 454, 473, 395, 464, 474, 476, 459, 451, - 463, 480, 460, 482, 481, 396, 475, 465, 455, 485, - - 466, 486, 468, 467, 275, 469, 262, 262, 470, 471, - 472, 401, 473, 402, 410, 411, 474, 476, 401, 928, - 402, 480, 927, 482, 481, 475, 926, 497, 485, 504, - 486, 253, 433, 434, 435, 436, 437, 437, 438, 437, - 437, 437, 437, 439, 437, 437, 437, 440, 437, 437, - 441, 437, 442, 437, 437, 443, 437, 497, 504, 405, - 444, 406, 433, 434, 435, 436, 437, 437, 438, 437, - 437, 437, 437, 439, 437, 437, 437, 440, 437, 441, - 437, 442, 437, 437, 443, 437, 477, 483, 499, 500, - 478, 501, 505, 506, 484, 479, 379, 379, 379, 379, - - 508, 405, 431, 406, 432, 502, 502, 502, 502, 510, - 511, 925, 520, 512, 512, 924, 477, 483, 548, 923, - 478, 505, 922, 506, 484, 479, 487, 521, 488, 522, - 508, 489, 490, 503, 391, 921, 392, 491, 492, 510, - 410, 411, 520, 493, 494, 513, 523, 548, 495, 409, - 393, 393, 393, 393, 920, 496, 487, 521, 488, 522, - 919, 489, 490, 519, 519, 519, 519, 491, 492, 431, - 914, 432, 493, 494, 513, 913, 523, 495, 409, 409, - 861, 409, 409, 409, 409, 409, 409, 409, 409, 409, - 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, - - 409, 409, 409, 409, 409, 514, 514, 514, 514, 514, - 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, - 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, - 410, 411, 860, 515, 409, 514, 514, 514, 514, 514, - 514, 514, 514, 514, 514, 514, 514, 514, 514, 514, - 514, 514, 514, 514, 514, 514, 514, 514, 514, 409, - 409, 409, 516, 516, 546, 547, 524, 524, 524, 524, - 524, 524, 524, 524, 549, 558, 550, 599, 859, 600, - 524, 524, 858, 525, 526, 528, 533, 527, 551, 535, - 530, 857, 529, 534, 546, 547, 410, 411, 517, 517, - - 517, 517, 531, 549, 558, 532, 550, 517, 517, 517, - 517, 517, 517, 525, 526, 528, 533, 527, 551, 535, - 530, 529, 552, 534, 560, 553, 554, 555, 556, 856, - 557, 531, 410, 411, 532, 559, 855, 517, 517, 517, - 517, 517, 517, 1106, 561, 562, 563, 565, 536, 537, - 538, 539, 552, 560, 540, 553, 554, 555, 556, 541, - 557, 564, 567, 542, 568, 559, 543, 854, 544, 569, - 853, 545, 570, 561, 571, 562, 563, 565, 536, 537, - 538, 539, 572, 573, 540, 574, 575, 576, 577, 541, - 564, 578, 567, 542, 568, 543, 581, 544, 582, 569, - - 545, 579, 570, 583, 571, 584, 585, 580, 586, 587, - 606, 588, 572, 573, 589, 574, 575, 576, 577, 590, - 591, 578, 592, 593, 852, 594, 581, 582, 598, 851, - 595, 579, 583, 596, 597, 584, 585, 580, 586, 587, - 588, 500, 602, 600, 589, 503, 391, 603, 392, 590, - 591, 619, 592, 593, 594, 604, 499, 500, 598, 501, - 595, 608, 596, 597, 601, 500, 599, 501, 600, 410, - 411, 259, 602, 502, 502, 502, 502, 603, 410, 411, - 619, 502, 502, 502, 502, 604, 601, 500, 850, 501, - 607, 608, 409, 409, 848, 409, 409, 409, 409, 409, - - 409, 409, 409, 409, 409, 409, 409, 409, 409, 409, - 409, 409, 409, 409, 409, 409, 409, 409, 409, 609, - 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, - 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, - 609, 609, 609, 609, 410, 411, 613, 610, 409, 609, - 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, - 609, 609, 609, 609, 609, 609, 609, 609, 609, 609, - 609, 609, 609, 409, 409, 409, 611, 611, 616, 409, - 524, 524, 614, 614, 524, 524, 524, 845, 617, 618, - 623, 828, 696, 697, 524, 698, 524, 625, 621, 626, - - 622, 775, 629, 776, 817, 624, 524, 700, 616, 628, - 410, 411, 612, 612, 612, 612, 410, 411, 617, 618, - 623, 612, 612, 612, 612, 612, 612, 625, 621, 626, - 622, 524, 629, 627, 624, 806, 524, 524, 524, 628, - 409, 524, 630, 781, 632, 644, 643, 524, 524, 636, - 780, 612, 612, 612, 612, 612, 612, 615, 615, 615, - 615, 631, 627, 633, 634, 524, 615, 615, 615, 615, - 615, 615, 630, 524, 632, 644, 643, 779, 646, 636, - 524, 645, 647, 635, 524, 649, 524, 524, 650, 651, - 652, 631, 653, 633, 634, 637, 615, 615, 615, 615, - - 615, 615, 639, 638, 697, 640, 641, 642, 646, 654, - 645, 647, 656, 635, 649, 655, 658, 650, 657, 651, - 652, 659, 606, 660, 637, 661, 662, 692, 664, 665, - 669, 639, 667, 638, 640, 668, 641, 642, 670, 654, - 671, 672, 656, 673, 675, 655, 658, 657, 674, 676, - 677, 659, 660, 678, 661, 679, 662, 664, 680, 665, - 669, 667, 681, 683, 668, 682, 684, 670, 685, 687, - 671, 672, 686, 673, 675, 688, 690, 674, 676, 677, - 693, 689, 691, 678, 694, 679, 695, 703, 680, 701, - 701, 705, 681, 683, 682, 684, 524, 524, 685, 687, - - 706, 686, 607, 768, 524, 688, 690, 410, 411, 693, - 689, 524, 691, 524, 694, 695, 708, 703, 524, 710, - 705, 707, 524, 410, 411, 702, 702, 702, 702, 709, - 706, 711, 524, 712, 702, 702, 702, 702, 702, 702, - 714, 713, 524, 524, 524, 524, 708, 764, 710, 715, - 707, 716, 717, 524, 524, 775, 718, 776, 721, 709, - 524, 711, 524, 712, 702, 702, 702, 702, 702, 702, - 714, 713, 719, 723, 720, 524, 524, 524, 524, 715, - 724, 716, 717, 524, 722, 524, 718, 524, 721, 726, - 728, 752, 731, 732, 734, 727, 730, 748, 733, 736, - - 741, 738, 719, 723, 720, 725, 735, 729, 743, 740, - 724, 739, 742, 722, 744, 745, 746, 747, 749, 726, - 728, 731, 750, 732, 734, 727, 730, 733, 751, 736, - 741, 738, 753, 754, 725, 755, 735, 729, 740, 756, - 739, 757, 742, 744, 758, 745, 746, 747, 749, 759, - 761, 750, 760, 762, 763, 765, 766, 767, 751, 769, - 770, 753, 754, 771, 755, 772, 773, 777, 778, 756, - 757, 696, 697, 758, 698, 410, 411, 409, 524, 759, - 761, 760, 762, 524, 763, 765, 766, 767, 524, 769, - 770, 524, 771, 410, 411, 772, 773, 777, 778, 524, - - 782, 524, 786, 784, 783, 524, 524, 785, 524, 524, - 524, 524, 524, 787, 524, 791, 524, 524, 524, 363, - 363, 807, 793, 737, 795, 802, 524, 788, 796, 524, - 782, 786, 789, 784, 783, 790, 792, 785, 524, 797, - 524, 794, 798, 787, 524, 791, 799, 800, 524, 804, - 524, 807, 793, 808, 795, 802, 788, 803, 796, 805, - 811, 789, 801, 809, 790, 792, 812, 813, 797, 814, - 794, 815, 798, 810, 704, 816, 799, 800, 818, 804, - 819, 820, 808, 821, 822, 823, 825, 803, 824, 805, - 811, 826, 801, 809, 827, 829, 812, 813, 814, 830, - - 815, 831, 838, 810, 816, 839, 846, 775, 818, 776, - 819, 820, 849, 821, 822, 823, 825, 824, 847, 524, - 917, 826, 918, 827, 864, 829, 832, 833, 524, 830, - 831, 834, 838, 524, 835, 839, 846, 836, 840, 841, - 524, 849, 837, 842, 524, 878, 843, 524, 847, 844, - 863, 524, 862, 524, 864, 865, 832, 833, 524, 868, - 866, 834, 524, 524, 835, 524, 875, 836, 840, 841, - 876, 837, 872, 842, 878, 867, 843, 870, 524, 844, - 863, 862, 871, 880, 869, 865, 882, 873, 877, 868, - 866, 874, 879, 881, 409, 883, 875, 884, 699, 885, - - 876, 886, 872, 887, 867, 888, 870, 889, 890, 891, - 892, 871, 880, 869, 894, 882, 873, 895, 877, 896, - 902, 874, 879, 881, 883, 901, 893, 884, 885, 903, - 904, 886, 887, 905, 907, 888, 906, 889, 890, 891, - 892, 897, 692, 911, 894, 898, 895, 912, 899, 896, - 902, 915, 943, 908, 901, 893, 909, 524, 900, 903, - 904, 944, 946, 905, 907, 906, 910, 945, 947, 948, - 950, 897, 911, 949, 951, 898, 912, 952, 899, 953, - 915, 942, 943, 908, 954, 955, 909, 900, 956, 666, - 957, 944, 946, 958, 959, 910, 945, 960, 947, 948, - - 950, 961, 949, 962, 951, 963, 964, 952, 965, 953, - 942, 966, 967, 954, 968, 955, 969, 971, 956, 957, - 970, 972, 973, 958, 959, 974, 975, 960, 976, 979, - 961, 977, 917, 962, 918, 963, 964, 917, 965, 918, - 966, 967, 993, 994, 968, 995, 969, 971, 978, 970, - 996, 972, 973, 997, 974, 975, 998, 976, 979, 999, - 1000, 977, 1001, 663, 1002, 1003, 1004, 648, 1005, 1006, - 1007, 993, 1008, 994, 1009, 995, 1010, 978, 1011, 1012, - 996, 1013, 1014, 997, 1015, 1016, 998, 1017, 1018, 999, - 1000, 1019, 1001, 1002, 1003, 1020, 1004, 1005, 1021, 1006, - - 1007, 1008, 1022, 1009, 1025, 1010, 1023, 1026, 1011, 1012, - 1024, 1013, 1014, 1015, 1016, 1028, 1017, 1029, 1018, 1030, - 1031, 1019, 1032, 1033, 1034, 1020, 1035, 1036, 1021, 1037, - 1038, 1022, 1039, 1025, 1040, 1023, 1041, 1026, 1042, 1024, - 1043, 1044, 1045, 1046, 1047, 1028, 1048, 1029, 1030, 1049, - 1031, 1032, 1033, 1034, 1050, 1057, 1035, 1036, 1037, 1038, - 1051, 1052, 1039, 1053, 1040, 1054, 1041, 1055, 1042, 1056, - 1043, 1044, 1045, 1046, 1047, 1048, 1058, 1059, 1060, 1049, - 1061, 620, 1062, 1063, 1050, 1057, 1064, 1065, 1066, 1051, - 1052, 1067, 1053, 1068, 1054, 1069, 1055, 1070, 1056, 1071, - - 1072, 1073, 1074, 1075, 409, 1076, 1058, 1059, 1060, 1077, - 1061, 1062, 1078, 1063, 1079, 1080, 1064, 1065, 1066, 1081, - 1067, 1082, 1083, 1068, 1084, 1069, 1085, 1070, 1086, 1071, - 1072, 1073, 1074, 1075, 1076, 1087, 1088, 1089, 1077, 1090, - 1091, 1092, 1078, 1079, 1093, 1080, 1094, 566, 1095, 1081, - 1082, 1096, 1083, 1097, 1084, 1098, 1085, 1099, 1086, 1100, - 1101, 524, 1102, 1103, 1104, 1087, 1088, 1089, 1090, 1091, - 1105, 1092, 416, 1093, 416, 420, 1094, 1095, 391, 518, - 1096, 518, 1097, 378, 457, 1098, 342, 1099, 1100, 339, - 1101, 1102, 1103, 336, 1104, 301, 299, 301, 296, 286, - - 1105, 62, 62, 62, 62, 62, 62, 62, 62, 62, - 62, 62, 62, 62, 62, 62, 62, 62, 82, 82, - 82, 82, 82, 82, 82, 82, 82, 82, 82, 82, - 82, 82, 82, 82, 82, 85, 85, 85, 85, 85, - 85, 85, 85, 85, 85, 85, 85, 85, 85, 85, - 85, 85, 88, 88, 88, 88, 88, 88, 88, 88, - 88, 88, 88, 88, 88, 88, 88, 88, 88, 92, - 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, - 92, 92, 92, 92, 92, 92, 100, 100, 100, 100, - 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, - - 100, 100, 100, 50, 50, 50, 50, 50, 50, 50, - 50, 50, 50, 50, 50, 50, 50, 50, 50, 50, - 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, - 112, 112, 112, 112, 112, 112, 112, 118, 118, 118, + 56, 57, 58, 56, 59, 56, 56, 56, 56, 56, + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, + 56, 56, 56, 56, 56, 56, 56, 60, 60, 60, + 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, + 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, + 60, 60, 56, 56, 56, 56, 60, 60, 60, 60, + 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, + 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, + 60, 56, 56, 56, 56, 61, 62, 56, 63, 56, + 64, 56, 65, 56, 56, 56, 56, 56, 56, 56, + + 56, 66, 56, 56, 56, 56, 56, 56, 56, 56, + 56, 67, 67, 67, 67, 67, 67, 67, 67, 67, + 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, + 67, 67, 67, 67, 67, 67, 56, 56, 56, 56, + 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, + 67, 67, 67, 67, 67, 67, 67, 67, 67, 67, + 67, 67, 67, 67, 67, 56, 56, 56, 69, 70, + 305, 71, 72, 89, 73, 90, 1045, 74, 75, 76, + 76, 275, 276, 76, 77, 92, 89, 95, 90, 96, + 78, 56, 93, 76, 95, 323, 96, 107, 108, 305, + + 109, 107, 108, 1012, 109, 125, 291, 126, 127, 154, + 154, 155, 155, 119, 125, 120, 126, 127, 333, 79, + 80, 238, 98, 239, 99, 121, 638, 56, 100, 122, + 122, 122, 122, 98, 323, 99, 157, 1011, 158, 105, + 350, 130, 131, 233, 132, 234, 159, 333, 81, 76, + 76, 82, 83, 235, 84, 72, 128, 73, 85, 427, + 74, 75, 76, 76, 101, 128, 76, 77, 134, 350, + 135, 102, 103, 86, 104, 101, 76, 130, 131, 292, + 132, 136, 102, 103, 1010, 104, 160, 378, 161, 229, + 238, 230, 239, 101, 123, 297, 209, 298, 231, 210, + + 102, 1009, 79, 80, 101, 87, 209, 1008, 229, 210, + 230, 102, 211, 211, 211, 211, 378, 231, 137, 138, + 139, 1007, 211, 211, 211, 211, 243, 244, 335, 245, + 336, 81, 76, 76, 110, 111, 112, 110, 113, 110, + 110, 110, 110, 110, 110, 110, 114, 110, 114, 110, + 110, 110, 110, 110, 110, 110, 110, 110, 110, 115, + 110, 116, 116, 116, 116, 116, 116, 116, 116, 116, + 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, + 116, 116, 116, 116, 116, 116, 110, 110, 110, 110, + 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, + + 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, + 116, 116, 116, 116, 116, 110, 110, 110, 119, 134, + 120, 135, 335, 157, 336, 158, 163, 383, 164, 165, + 121, 250, 136, 159, 122, 122, 122, 122, 163, 224, + 164, 165, 163, 233, 241, 234, 343, 247, 248, 242, + 249, 304, 225, 235, 269, 269, 383, 270, 280, 419, + 281, 420, 226, 282, 282, 282, 282, 227, 251, 137, + 138, 139, 345, 160, 1006, 161, 166, 167, 168, 346, + 1005, 304, 225, 312, 313, 423, 314, 424, 166, 167, + 168, 226, 166, 167, 168, 1004, 227, 344, 251, 123, + + 140, 140, 141, 140, 142, 143, 140, 140, 140, 144, + 140, 140, 140, 140, 140, 140, 140, 145, 140, 140, + 140, 140, 140, 140, 140, 140, 140, 146, 146, 146, + 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, + 146, 146, 146, 146, 147, 146, 146, 146, 146, 146, + 146, 148, 149, 140, 150, 140, 146, 146, 146, 146, + 146, 146, 146, 146, 146, 146, 146, 146, 146, 146, + 146, 146, 146, 147, 146, 146, 146, 146, 146, 146, + 148, 151, 140, 152, 170, 171, 213, 172, 214, 170, + 171, 173, 172, 332, 219, 219, 173, 157, 224, 158, + + 174, 220, 220, 349, 449, 174, 450, 236, 428, 429, + 157, 225, 158, 355, 221, 221, 319, 319, 319, 319, + 236, 226, 356, 332, 222, 222, 227, 175, 388, 223, + 223, 1003, 175, 349, 176, 177, 215, 178, 216, 176, + 177, 225, 178, 355, 221, 221, 335, 160, 336, 161, + 226, 1002, 356, 222, 222, 227, 175, 388, 223, 223, + 160, 175, 161, 176, 335, 217, 336, 218, 176, 179, + 180, 181, 179, 182, 183, 179, 179, 179, 179, 179, + 179, 179, 179, 179, 179, 179, 179, 179, 184, 185, + 179, 179, 179, 186, 179, 179, 187, 188, 189, 190, + + 191, 192, 193, 194, 195, 193, 193, 196, 197, 198, + 199, 200, 193, 201, 202, 203, 204, 205, 206, 193, + 207, 179, 179, 179, 179, 179, 187, 188, 189, 190, + 191, 192, 193, 194, 195, 193, 193, 196, 197, 198, + 199, 200, 201, 202, 203, 204, 205, 206, 193, 207, + 179, 179, 179, 213, 726, 214, 163, 362, 241, 264, + 265, 360, 266, 242, 278, 278, 267, 284, 285, 361, + 286, 363, 278, 278, 287, 433, 433, 278, 278, 1001, + 278, 278, 475, 288, 358, 364, 369, 427, 370, 289, + 359, 360, 365, 382, 371, 345, 279, 367, 372, 361, + + 1000, 363, 346, 215, 279, 216, 166, 167, 168, 279, + 963, 475, 279, 366, 358, 364, 369, 368, 370, 359, + 376, 290, 365, 382, 371, 279, 962, 367, 372, 384, + 377, 385, 217, 279, 218, 253, 243, 244, 279, 245, + 268, 279, 366, 250, 386, 373, 368, 478, 268, 374, + 376, 387, 405, 379, 254, 416, 255, 426, 255, 384, + 377, 385, 961, 380, 255, 960, 381, 255, 256, 257, + 959, 255, 258, 259, 386, 373, 478, 260, 958, 374, + 251, 387, 405, 379, 254, 416, 255, 426, 255, 391, + 391, 391, 391, 380, 255, 381, 957, 255, 256, 257, + + 255, 258, 259, 956, 247, 248, 260, 249, 261, 955, + 251, 408, 409, 954, 410, 408, 409, 953, 410, 408, + 409, 480, 410, 408, 409, 430, 410, 443, 411, 411, + 411, 411, 411, 411, 411, 411, 411, 411, 411, 411, + 411, 411, 411, 411, 264, 265, 446, 266, 431, 431, + 480, 267, 447, 952, 412, 428, 429, 443, 312, 313, + 413, 314, 464, 414, 951, 284, 285, 950, 286, 465, + 469, 470, 287, 471, 472, 473, 446, 949, 483, 484, + 432, 288, 447, 412, 485, 476, 486, 289, 490, 474, + 413, 487, 464, 414, 319, 319, 319, 319, 491, 465, + + 469, 470, 477, 471, 472, 473, 481, 483, 484, 432, + 482, 492, 499, 485, 493, 476, 486, 490, 474, 290, + 419, 487, 420, 948, 419, 268, 420, 423, 491, 424, + 947, 477, 391, 391, 391, 391, 481, 423, 946, 424, + 482, 492, 499, 493, 494, 495, 268, 451, 452, 453, + 454, 455, 455, 456, 455, 455, 455, 455, 457, 455, + 455, 455, 458, 455, 455, 459, 455, 460, 455, 455, + 461, 455, 488, 494, 495, 462, 489, 451, 452, 453, + 454, 455, 455, 456, 455, 455, 455, 455, 457, 455, + 455, 455, 458, 455, 459, 455, 460, 455, 455, 461, + + 455, 496, 488, 497, 503, 489, 500, 504, 505, 506, + 501, 945, 508, 498, 509, 502, 507, 944, 520, 428, + 429, 527, 528, 277, 277, 449, 529, 450, 428, 429, + 496, 531, 533, 497, 503, 943, 500, 504, 505, 506, + 501, 508, 498, 509, 631, 502, 507, 510, 520, 511, + 527, 528, 512, 513, 522, 523, 529, 524, 514, 515, + 534, 531, 533, 942, 516, 517, 941, 526, 409, 518, + 410, 525, 525, 525, 525, 543, 519, 510, 544, 511, + 535, 535, 512, 513, 411, 411, 411, 411, 514, 515, + 428, 429, 545, 516, 517, 539, 539, 546, 518, 542, + + 542, 542, 542, 569, 449, 543, 450, 570, 544, 571, + 572, 624, 536, 625, 936, 573, 427, 523, 935, 625, + 526, 409, 545, 410, 632, 885, 624, 546, 625, 428, + 429, 626, 523, 569, 524, 722, 723, 570, 724, 571, + 572, 536, 427, 427, 573, 427, 427, 427, 427, 427, + 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, + 427, 427, 427, 427, 427, 427, 427, 427, 427, 537, + 537, 537, 537, 537, 537, 537, 537, 537, 537, 537, + 537, 537, 537, 537, 537, 537, 537, 537, 537, 537, + 537, 537, 537, 537, 428, 429, 884, 538, 427, 537, + + 537, 537, 537, 537, 537, 537, 537, 537, 537, 537, + 537, 537, 537, 537, 537, 537, 537, 537, 537, 537, + 537, 537, 537, 427, 427, 427, 540, 540, 540, 540, + 547, 547, 547, 547, 547, 540, 540, 540, 540, 540, + 540, 547, 547, 547, 574, 547, 548, 549, 575, 547, + 550, 576, 553, 558, 551, 883, 552, 577, 578, 579, + 428, 429, 556, 557, 580, 540, 540, 540, 540, 540, + 540, 554, 581, 574, 555, 583, 548, 549, 575, 582, + 550, 576, 553, 558, 551, 552, 586, 577, 578, 579, + 584, 587, 556, 557, 580, 882, 585, 588, 589, 881, + + 554, 591, 581, 555, 1113, 583, 592, 593, 582, 559, + 560, 561, 562, 594, 595, 563, 586, 596, 597, 584, + 564, 587, 598, 599, 565, 585, 588, 566, 589, 567, + 600, 591, 568, 601, 602, 603, 592, 593, 606, 559, + 560, 561, 562, 594, 595, 563, 607, 596, 597, 604, + 564, 608, 598, 599, 565, 605, 566, 609, 567, 610, + 600, 568, 611, 601, 602, 603, 612, 614, 606, 613, + 615, 616, 617, 618, 620, 607, 619, 621, 622, 604, + 608, 623, 428, 429, 274, 605, 644, 609, 627, 610, + 628, 629, 611, 633, 641, 642, 612, 614, 613, 880, + + 615, 616, 617, 618, 620, 619, 621, 622, 631, 522, + 523, 623, 524, 626, 523, 644, 524, 801, 627, 802, + 628, 629, 879, 633, 641, 642, 525, 525, 525, 525, + 525, 525, 525, 525, 427, 427, 878, 427, 427, 427, + 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, + 427, 427, 427, 427, 427, 427, 427, 427, 427, 427, + 427, 634, 634, 634, 634, 634, 634, 634, 634, 634, + 634, 634, 634, 634, 634, 634, 634, 634, 634, 634, + 634, 634, 634, 634, 634, 634, 428, 429, 632, 635, + 427, 634, 634, 634, 634, 634, 634, 634, 634, 634, + + 634, 634, 634, 634, 634, 634, 634, 634, 634, 634, + 634, 634, 634, 634, 634, 427, 427, 427, 636, 636, + 643, 547, 547, 877, 639, 639, 547, 547, 547, 547, + 547, 648, 651, 547, 876, 547, 547, 428, 429, 646, + 650, 647, 547, 653, 428, 429, 649, 655, 656, 657, + 643, 658, 428, 429, 637, 637, 637, 637, 428, 429, + 652, 648, 651, 637, 637, 637, 637, 637, 637, 646, + 650, 647, 547, 653, 547, 649, 547, 655, 656, 657, + 801, 658, 802, 547, 669, 547, 547, 661, 547, 652, + 654, 671, 659, 637, 637, 637, 637, 637, 637, 640, + + 640, 640, 640, 660, 547, 662, 666, 663, 640, 640, + 640, 640, 640, 640, 669, 547, 547, 661, 670, 672, + 654, 671, 659, 673, 668, 875, 664, 674, 675, 665, + 676, 677, 678, 660, 662, 667, 666, 663, 640, 640, + 640, 640, 640, 640, 682, 684, 679, 670, 672, 683, + 685, 874, 686, 673, 668, 664, 674, 675, 665, 676, + 687, 677, 678, 680, 688, 667, 690, 691, 695, 681, + 872, 693, 694, 696, 682, 684, 697, 698, 683, 699, + 685, 686, 700, 701, 869, 702, 703, 704, 705, 687, + 706, 707, 709, 680, 688, 690, 708, 691, 695, 681, + + 693, 694, 696, 710, 711, 713, 697, 698, 712, 699, + 714, 700, 716, 701, 702, 703, 715, 704, 705, 717, + 706, 707, 709, 719, 720, 708, 721, 727, 727, 729, + 547, 731, 710, 547, 711, 713, 547, 712, 732, 852, + 714, 757, 716, 547, 547, 715, 841, 547, 734, 717, + 738, 547, 719, 739, 720, 721, 737, 547, 733, 729, + 731, 428, 429, 728, 728, 728, 728, 547, 732, 735, + 757, 748, 728, 728, 728, 728, 728, 728, 734, 736, + 738, 547, 547, 739, 547, 740, 737, 733, 741, 742, + 547, 547, 547, 743, 428, 429, 547, 747, 547, 735, + + 748, 744, 728, 728, 728, 728, 728, 728, 736, 745, + 547, 746, 547, 547, 753, 740, 547, 750, 741, 742, + 547, 749, 758, 743, 547, 751, 752, 747, 759, 754, + 760, 744, 761, 756, 762, 764, 755, 832, 766, 745, + 767, 746, 768, 771, 753, 765, 770, 750, 772, 773, + 775, 749, 758, 776, 751, 777, 752, 759, 779, 754, + 760, 761, 780, 756, 762, 764, 755, 766, 781, 782, + 767, 783, 768, 771, 765, 770, 784, 785, 772, 773, + 775, 786, 776, 787, 789, 777, 788, 779, 791, 792, + 793, 780, 795, 796, 547, 797, 798, 781, 799, 782, + + 783, 803, 804, 722, 723, 784, 724, 785, 807, 547, + 786, 808, 547, 787, 789, 788, 547, 809, 791, 792, + 793, 547, 795, 796, 797, 811, 798, 547, 799, 547, + 547, 803, 804, 428, 429, 427, 810, 547, 547, 547, + 812, 808, 813, 547, 547, 547, 547, 809, 547, 814, + 806, 547, 547, 815, 817, 811, 819, 547, 821, 547, + 818, 816, 822, 805, 820, 824, 810, 547, 826, 812, + 823, 825, 813, 547, 828, 827, 547, 833, 814, 835, + 829, 836, 815, 547, 817, 830, 819, 834, 821, 818, + 816, 837, 822, 820, 831, 824, 838, 839, 826, 823, + + 840, 825, 842, 843, 828, 827, 844, 833, 845, 835, + 829, 836, 846, 847, 849, 830, 848, 834, 850, 723, + 851, 837, 853, 854, 831, 838, 839, 855, 862, 840, + 863, 870, 842, 843, 718, 871, 844, 801, 845, 802, + 873, 794, 846, 847, 849, 848, 856, 857, 850, 851, + 547, 858, 853, 854, 859, 547, 855, 860, 862, 790, + 863, 870, 861, 864, 865, 871, 547, 887, 866, 873, + 547, 867, 547, 547, 868, 888, 856, 857, 547, 886, + 547, 858, 890, 547, 859, 547, 547, 860, 889, 547, + 892, 861, 899, 864, 865, 900, 891, 887, 866, 898, + + 901, 867, 893, 902, 868, 888, 547, 894, 886, 895, + 904, 897, 890, 903, 906, 896, 778, 905, 889, 907, + 892, 908, 899, 909, 900, 891, 910, 911, 912, 898, + 901, 893, 902, 913, 914, 916, 894, 917, 895, 904, + 897, 918, 774, 903, 906, 896, 905, 923, 907, 928, + 915, 908, 909, 924, 925, 919, 910, 911, 912, 920, + 926, 927, 921, 913, 914, 916, 917, 929, 769, 933, + 934, 918, 922, 937, 930, 763, 923, 931, 928, 915, + 939, 547, 940, 924, 925, 919, 969, 932, 965, 920, + 926, 927, 921, 966, 967, 968, 970, 929, 933, 934, + + 971, 922, 937, 972, 930, 964, 973, 931, 974, 975, + 976, 730, 977, 978, 979, 969, 932, 980, 965, 981, + 982, 983, 984, 966, 967, 968, 970, 985, 427, 986, + 971, 987, 988, 972, 964, 989, 973, 974, 990, 975, + 976, 977, 991, 978, 979, 992, 993, 980, 981, 994, + 982, 983, 984, 995, 996, 999, 997, 985, 986, 939, + 987, 940, 988, 1013, 939, 989, 940, 990, 1014, 1015, + 1016, 1017, 991, 998, 1018, 992, 993, 1019, 994, 1020, + 1021, 1022, 995, 996, 999, 1023, 997, 1024, 1025, 725, + 1026, 1027, 1013, 1028, 1029, 1030, 1031, 1032, 1014, 1015, + + 1016, 1017, 998, 1033, 1018, 1034, 1035, 1019, 1020, 1021, + 1036, 1022, 1037, 1038, 1023, 1039, 1044, 1024, 1025, 1026, + 1027, 1040, 1028, 1043, 1029, 1030, 1031, 1032, 1048, 1041, + 1046, 1047, 1033, 1042, 1034, 1035, 1049, 1050, 1051, 1052, + 1036, 1053, 1037, 1038, 1054, 1039, 1044, 1055, 1056, 1057, + 1040, 1058, 1043, 1059, 1060, 1061, 1062, 1048, 1041, 1063, + 1046, 1047, 1042, 1064, 1065, 1049, 1050, 1066, 1051, 1052, + 1053, 1067, 1068, 1054, 1069, 1070, 1071, 1055, 1056, 1057, + 1072, 1058, 1073, 1059, 1060, 1061, 1062, 1074, 1075, 1063, + 1076, 1077, 1064, 1078, 1065, 1079, 1080, 1066, 1081, 1082, + + 1067, 1068, 1083, 1069, 1070, 1084, 1071, 1085, 1086, 1087, + 1072, 1088, 1073, 1089, 1090, 718, 1091, 1074, 1075, 1076, + 1092, 1077, 1093, 1078, 1094, 1079, 1080, 1081, 1095, 1082, + 1096, 1097, 1083, 1098, 1099, 1084, 1100, 1085, 1086, 1087, + 1088, 1101, 1089, 1102, 1090, 1091, 1103, 1104, 1105, 1106, + 1092, 1107, 1093, 1094, 1108, 692, 1109, 1110, 1095, 1111, + 1096, 1097, 1112, 1098, 1099, 1100, 375, 375, 689, 434, + 1101, 434, 541, 1102, 541, 1103, 1104, 1105, 645, 1106, + 427, 1107, 415, 415, 1108, 1109, 1110, 415, 590, 1111, + 344, 343, 1112, 68, 68, 68, 68, 68, 68, 68, + + 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, + 68, 68, 68, 68, 88, 88, 88, 88, 88, 88, + 88, 88, 88, 88, 88, 88, 88, 88, 88, 88, + 88, 88, 88, 88, 88, 91, 91, 91, 91, 91, + 91, 91, 91, 91, 91, 91, 91, 91, 91, 91, + 91, 91, 91, 91, 91, 91, 94, 94, 94, 94, + 94, 94, 94, 94, 94, 94, 94, 94, 94, 94, + 94, 94, 94, 94, 94, 94, 94, 97, 97, 97, + 97, 97, 97, 97, 97, 97, 97, 97, 97, 97, + 97, 97, 97, 97, 97, 97, 97, 97, 106, 106, + + 106, 106, 106, 106, 106, 106, 106, 106, 106, 106, + 106, 106, 106, 106, 106, 106, 106, 106, 106, 56, + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, + 56, 56, 56, 56, 56, 56, 56, 56, 56, 56, + 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, 118, - 118, 118, 118, 118, 123, 123, 123, 123, 123, 123, - 123, 123, 123, 123, 123, 123, 123, 123, 123, 123, - 123, 127, 127, 127, 127, 127, 127, 127, 127, 127, - 127, 127, 127, 127, 127, 127, 127, 127, 147, 147, - 147, 147, 147, 147, 147, 147, 147, 147, 147, 147, - - 147, 147, 147, 147, 147, 150, 150, 150, 150, 150, - 150, 150, 150, 150, 150, 150, 150, 150, 150, 150, - 150, 150, 156, 156, 156, 156, 156, 156, 156, 156, - 156, 156, 156, 156, 156, 156, 156, 156, 156, 161, - 161, 161, 161, 161, 161, 161, 161, 161, 161, 161, - 161, 161, 161, 161, 161, 161, 200, 200, 200, 200, - 200, 200, 200, 200, 200, 200, 200, 200, 200, 200, - 200, 200, 200, 204, 204, 204, 204, 204, 204, 204, - 204, 204, 204, 204, 204, 204, 204, 204, 204, 204, - 220, 220, 220, 220, 220, 220, 220, 220, 220, 220, - - 220, 220, 220, 220, 220, 220, 220, 224, 224, 224, - 224, 224, 224, 224, 224, 224, 224, 224, 224, 224, - 224, 224, 224, 224, 231, 231, 282, 231, 231, 423, - 422, 421, 231, 237, 237, 237, 237, 237, 237, 237, - 237, 237, 237, 237, 237, 237, 237, 237, 237, 248, - 248, 270, 248, 248, 420, 418, 417, 248, 259, 407, - 259, 259, 259, 259, 259, 259, 259, 259, 259, 259, - 259, 259, 259, 259, 259, 262, 254, 262, 262, 262, - 262, 262, 262, 262, 262, 262, 262, 262, 262, 262, - 262, 262, 268, 268, 268, 403, 268, 268, 250, 233, - - 229, 268, 280, 386, 280, 280, 280, 280, 280, 280, - 280, 280, 280, 280, 280, 280, 280, 280, 280, 281, - 385, 281, 281, 281, 281, 281, 281, 281, 281, 281, - 281, 281, 281, 281, 281, 281, 285, 285, 285, 285, - 285, 285, 285, 285, 285, 285, 285, 285, 384, 285, - 382, 285, 285, 295, 381, 380, 295, 295, 295, 295, + 118, 124, 124, 124, 124, 124, 124, 124, 124, 124, + 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, + 124, 124, 129, 129, 129, 129, 129, 129, 129, 129, + 129, 129, 129, 129, 129, 129, 129, 129, 129, 129, + + 129, 129, 129, 133, 133, 133, 133, 133, 133, 133, + 133, 133, 133, 133, 133, 133, 133, 133, 133, 133, + 133, 133, 133, 133, 153, 153, 153, 153, 153, 153, + 153, 153, 153, 153, 153, 153, 153, 153, 153, 153, + 153, 153, 153, 153, 153, 156, 156, 156, 156, 156, + 156, 156, 156, 156, 156, 156, 156, 156, 156, 156, + 156, 156, 156, 156, 156, 156, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 162, 162, 162, + 162, 162, 162, 162, 162, 162, 162, 169, 169, 169, + 169, 169, 169, 169, 169, 169, 169, 169, 169, 169, + + 169, 169, 169, 169, 169, 169, 169, 169, 208, 208, + 208, 208, 208, 208, 208, 208, 208, 208, 208, 208, + 208, 208, 208, 208, 208, 208, 208, 208, 208, 212, + 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, + 212, 212, 212, 212, 212, 212, 212, 212, 212, 212, + 228, 228, 228, 228, 228, 228, 228, 228, 228, 228, + 228, 228, 228, 228, 228, 228, 228, 228, 228, 228, + 228, 232, 232, 232, 232, 232, 232, 232, 232, 232, + 232, 232, 232, 232, 232, 232, 232, 232, 232, 232, + 232, 232, 237, 237, 237, 237, 237, 237, 237, 237, + + 237, 237, 237, 237, 237, 237, 237, 237, 237, 237, + 237, 237, 237, 240, 240, 240, 240, 240, 240, 240, + 240, 240, 240, 240, 240, 240, 240, 240, 240, 240, + 240, 240, 240, 240, 246, 547, 246, 438, 246, 246, + 455, 455, 455, 246, 252, 252, 252, 252, 252, 252, + 252, 252, 252, 252, 252, 252, 252, 252, 252, 252, + 252, 252, 252, 252, 263, 409, 263, 390, 263, 263, + 417, 417, 479, 263, 274, 417, 274, 274, 274, 274, + 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, + 274, 274, 274, 274, 274, 277, 354, 277, 277, 277, + + 277, 277, 277, 277, 277, 277, 277, 277, 277, 277, + 277, 277, 277, 277, 277, 277, 283, 283, 351, 283, + 348, 283, 283, 467, 466, 463, 283, 295, 315, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, - 303, 303, 378, 303, 303, 342, 340, 339, 303, 308, - 338, 308, 308, 308, 308, 308, 308, 308, 308, 308, - 308, 308, 308, 308, 308, 308, 311, 337, 311, 311, - - 311, 311, 311, 311, 311, 311, 311, 311, 311, 311, - 317, 311, 311, 312, 336, 312, 335, 331, 312, 312, - 312, 312, 312, 329, 328, 327, 312, 314, 326, 314, - 314, 314, 314, 314, 314, 314, 314, 314, 314, 314, - 314, 314, 314, 314, 318, 318, 322, 318, 318, 321, - 317, 313, 318, 323, 323, 323, 323, 323, 323, 323, - 323, 323, 323, 323, 323, 323, 323, 323, 323, 323, - 330, 307, 330, 310, 330, 330, 330, 330, 330, 330, - 330, 330, 330, 307, 330, 330, 330, 332, 306, 332, - 332, 332, 332, 332, 332, 332, 332, 332, 332, 332, - - 332, 332, 332, 332, 341, 304, 341, 341, 341, 341, - 341, 341, 341, 341, 341, 341, 341, 341, 341, 341, - 341, 345, 345, 302, 299, 345, 345, 377, 301, 377, - 377, 377, 377, 377, 377, 377, 377, 377, 377, 377, - 377, 377, 377, 377, 383, 297, 383, 383, 383, 296, - 383, 383, 383, 383, 383, 383, 383, 383, 383, 383, - 383, 231, 231, 294, 231, 231, 293, 292, 289, 231, - 388, 288, 388, 388, 388, 388, 388, 388, 388, 388, - 388, 388, 388, 388, 388, 388, 388, 389, 287, 389, + 295, 295, 295, 295, 295, 295, 295, 295, 299, 299, + 299, 299, 299, 299, 299, 299, 299, 299, 299, 299, + 299, 299, 299, 313, 299, 315, 299, 299, 299, 302, + 310, 302, 302, 296, 302, 302, 302, 302, 302, 302, + 302, 302, 302, 302, 441, 302, 440, 302, 302, 302, + 309, 439, 285, 309, 309, 309, 309, 309, 309, 309, + + 309, 309, 309, 309, 309, 309, 309, 309, 309, 309, + 309, 317, 438, 317, 436, 317, 317, 435, 425, 269, + 317, 322, 421, 322, 322, 322, 322, 322, 322, 322, + 322, 322, 322, 322, 322, 322, 322, 322, 322, 322, + 322, 322, 325, 265, 325, 325, 325, 325, 325, 325, + 325, 325, 325, 325, 325, 325, 325, 325, 325, 248, + 325, 325, 325, 326, 244, 326, 341, 326, 403, 326, + 326, 326, 326, 402, 326, 326, 400, 399, 398, 326, + 328, 397, 328, 328, 328, 395, 328, 328, 328, 328, + 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, + + 328, 331, 394, 331, 393, 331, 331, 390, 354, 352, + 331, 334, 334, 334, 334, 334, 334, 334, 334, 334, + 334, 334, 334, 334, 334, 334, 334, 334, 334, 334, + 334, 334, 337, 351, 337, 337, 337, 337, 337, 307, + 337, 337, 337, 337, 337, 337, 337, 306, 337, 330, + 337, 337, 337, 340, 348, 340, 347, 340, 340, 340, + 340, 340, 340, 340, 340, 340, 340, 340, 307, 306, + 341, 340, 340, 340, 342, 342, 342, 342, 342, 342, + 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, + 342, 342, 342, 342, 342, 353, 307, 353, 353, 353, + + 353, 353, 353, 353, 353, 353, 353, 353, 353, 353, + 353, 353, 353, 353, 353, 353, 357, 357, 306, 339, + 338, 357, 357, 389, 307, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, - - 389, 389, 389, 389, 397, 397, 286, 282, 279, 397, - 399, 399, 278, 270, 258, 399, 400, 400, 400, 400, - 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, - 400, 400, 400, 248, 248, 257, 248, 248, 256, 250, - 247, 248, 404, 404, 404, 404, 404, 404, 404, 404, - 404, 404, 404, 404, 404, 404, 404, 404, 404, 409, - 233, 409, 409, 409, 409, 409, 409, 409, 409, 409, - 409, 409, 409, 229, 409, 409, 259, 1106, 259, 259, - 259, 259, 259, 259, 259, 259, 259, 259, 259, 259, - 259, 259, 259, 419, 419, 111, 419, 419, 111, 1106, - - 1106, 419, 419, 424, 1106, 424, 424, 424, 424, 424, - 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, - 280, 1106, 280, 280, 280, 280, 280, 280, 280, 280, - 280, 280, 280, 280, 280, 280, 280, 281, 1106, 281, - 281, 281, 281, 281, 281, 281, 281, 281, 281, 281, - 281, 281, 281, 281, 426, 1106, 426, 426, 426, 426, - 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, - 426, 427, 1106, 427, 427, 427, 427, 427, 427, 427, - 427, 427, 427, 427, 427, 427, 427, 427, 285, 285, - 285, 285, 285, 285, 285, 285, 285, 285, 285, 285, - - 1106, 285, 1106, 285, 285, 430, 430, 430, 430, 430, - 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, - 430, 430, 295, 1106, 1106, 295, 295, 295, 295, 295, - 295, 295, 295, 295, 295, 295, 295, 295, 295, 303, - 303, 1106, 303, 303, 1106, 1106, 1106, 303, 312, 1106, - 312, 1106, 1106, 312, 312, 312, 312, 312, 1106, 1106, - 1106, 312, 314, 1106, 314, 314, 314, 314, 314, 314, - 314, 314, 314, 314, 314, 314, 314, 314, 314, 318, - 318, 1106, 318, 318, 1106, 1106, 1106, 318, 323, 323, - 323, 323, 323, 323, 323, 323, 323, 323, 323, 323, - - 323, 323, 323, 323, 323, 330, 1106, 330, 1106, 330, - 330, 330, 330, 330, 330, 330, 330, 330, 1106, 330, - 330, 330, 447, 1106, 447, 447, 447, 447, 447, 447, - 447, 447, 447, 447, 447, 447, 447, 447, 447, 341, - 1106, 341, 341, 341, 341, 341, 341, 341, 341, 341, - 341, 341, 341, 341, 341, 341, 345, 345, 1106, 1106, - 345, 345, 377, 1106, 377, 377, 377, 377, 377, 377, - 377, 377, 377, 377, 377, 377, 377, 377, 377, 383, - 1106, 383, 383, 383, 1106, 383, 383, 383, 383, 383, - 383, 383, 383, 383, 383, 383, 388, 1106, 388, 388, - - 388, 388, 388, 388, 388, 388, 388, 388, 388, 388, - 388, 388, 388, 389, 1106, 389, 389, 389, 389, 389, + 389, 389, 389, 389, 392, 306, 330, 392, 392, 392, + 392, 392, 392, 392, 392, 392, 392, 392, 392, 329, + 392, 327, 392, 396, 321, 396, 396, 396, 396, 324, + 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, + 396, 396, 396, 396, 401, 401, 401, 401, 401, 401, + 401, 401, 401, 401, 401, 401, 401, 401, 401, 321, + + 401, 320, 401, 401, 401, 404, 318, 404, 404, 404, + 316, 404, 404, 404, 404, 404, 404, 404, 404, 404, + 313, 315, 311, 404, 404, 404, 246, 310, 246, 308, + 246, 246, 307, 306, 303, 246, 406, 301, 406, 406, + 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, + 406, 406, 406, 406, 406, 406, 406, 407, 300, 407, + 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, + 407, 407, 407, 407, 407, 407, 407, 407, 418, 418, + 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, + 418, 418, 418, 418, 418, 418, 418, 418, 418, 263, + + 296, 263, 294, 263, 263, 293, 285, 273, 263, 422, + 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, + 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, + 427, 272, 427, 427, 427, 427, 427, 427, 427, 427, + 427, 427, 427, 427, 427, 427, 427, 271, 427, 427, + 427, 274, 265, 274, 274, 274, 274, 274, 274, 274, + 274, 274, 274, 274, 274, 274, 274, 274, 274, 274, + 274, 274, 437, 262, 437, 248, 437, 437, 244, 1113, + 117, 437, 117, 437, 442, 1113, 442, 442, 442, 442, + 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, + + 442, 442, 442, 442, 442, 295, 1113, 295, 295, 295, + 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, + 295, 295, 295, 295, 295, 295, 444, 1113, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 445, 1113, 445, + 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, + 445, 445, 445, 445, 445, 445, 445, 445, 299, 299, + 299, 299, 299, 299, 299, 299, 299, 299, 299, 299, + 299, 299, 299, 1113, 299, 1113, 299, 299, 299, 302, + 1113, 302, 302, 1113, 302, 302, 302, 302, 302, 302, + + 302, 302, 302, 302, 1113, 302, 1113, 302, 302, 302, + 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, + 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, + 448, 309, 1113, 1113, 309, 309, 309, 309, 309, 309, + 309, 309, 309, 309, 309, 309, 309, 309, 309, 309, + 309, 309, 317, 1113, 317, 1113, 317, 317, 1113, 1113, + 1113, 317, 326, 1113, 326, 1113, 326, 1113, 326, 326, + 326, 326, 1113, 326, 326, 1113, 1113, 1113, 326, 328, + 1113, 328, 328, 328, 328, 328, 328, 328, 328, 328, + 328, 328, 328, 328, 328, 328, 328, 328, 328, 328, + + 331, 1113, 331, 1113, 331, 331, 1113, 1113, 1113, 331, + 334, 334, 334, 334, 334, 334, 334, 334, 334, 334, + 334, 334, 334, 334, 334, 334, 334, 334, 334, 334, + 334, 337, 1113, 337, 337, 337, 337, 337, 1113, 337, + 337, 337, 337, 337, 337, 337, 1113, 337, 1113, 337, + 337, 337, 340, 1113, 340, 1113, 340, 340, 340, 340, + 340, 340, 340, 340, 340, 340, 340, 1113, 1113, 1113, + 340, 340, 340, 468, 1113, 468, 468, 468, 468, 468, + 468, 468, 468, 468, 468, 468, 468, 468, 468, 468, + 468, 468, 468, 468, 353, 1113, 353, 353, 353, 353, + + 353, 353, 353, 353, 353, 353, 353, 353, 353, 353, + 353, 353, 353, 353, 353, 357, 357, 1113, 1113, 1113, + 357, 357, 389, 1113, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, 389, - 498, 498, 498, 498, 498, 498, 498, 498, 498, 498, - 498, 498, 498, 498, 498, 498, 498, 507, 507, 1106, - 507, 507, 1106, 1106, 1106, 507, 509, 509, 1106, 509, - 509, 1106, 1106, 1106, 509, 400, 400, 400, 400, 400, - 400, 400, 400, 400, 400, 400, 400, 400, 400, 400, - 400, 400, 404, 404, 404, 404, 404, 404, 404, 404, - 404, 404, 404, 404, 404, 404, 404, 404, 404, 409, - - 1106, 409, 409, 409, 409, 409, 409, 409, 409, 409, - 409, 409, 409, 1106, 409, 409, 419, 419, 1106, 419, - 419, 1106, 1106, 1106, 419, 419, 424, 1106, 424, 424, - 424, 424, 424, 424, 424, 424, 424, 424, 424, 424, - 424, 424, 424, 426, 1106, 426, 426, 426, 426, 426, - 426, 426, 426, 426, 426, 426, 426, 426, 426, 426, - 427, 1106, 427, 427, 427, 427, 427, 427, 427, 427, - 427, 427, 427, 427, 427, 427, 427, 430, 430, 430, - 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, - 430, 430, 430, 430, 437, 437, 437, 318, 318, 1106, - - 318, 318, 1106, 1106, 1106, 318, 447, 1106, 447, 447, - 447, 447, 447, 447, 447, 447, 447, 447, 447, 447, - 447, 447, 447, 605, 1106, 605, 605, 605, 605, 605, - 605, 605, 605, 605, 605, 605, 605, 605, 605, 605, - 774, 774, 774, 774, 774, 774, 774, 774, 774, 774, - 774, 774, 774, 774, 774, 774, 774, 916, 916, 916, - 916, 916, 916, 916, 916, 916, 916, 916, 916, 916, - 916, 916, 916, 916, 49, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106 + 389, 389, 389, 392, 1113, 1113, 392, 392, 392, 392, + 392, 392, 392, 392, 392, 392, 392, 392, 1113, 392, + 1113, 392, 396, 1113, 396, 396, 396, 396, 1113, 396, + 396, 396, 396, 396, 396, 396, 396, 396, 396, 396, + 396, 396, 396, 401, 401, 401, 401, 401, 401, 401, + 401, 401, 401, 401, 401, 401, 401, 401, 1113, 401, + + 1113, 401, 401, 401, 404, 1113, 404, 404, 404, 1113, + 404, 404, 404, 404, 404, 404, 404, 404, 404, 1113, + 1113, 1113, 404, 404, 404, 406, 1113, 406, 406, 406, + 406, 406, 406, 406, 406, 406, 406, 406, 406, 406, + 406, 406, 406, 406, 406, 406, 407, 1113, 407, 407, + 407, 407, 407, 407, 407, 407, 407, 407, 407, 407, + 407, 407, 407, 407, 407, 407, 407, 521, 521, 521, + 521, 521, 521, 521, 521, 521, 521, 521, 521, 521, + 521, 521, 521, 521, 521, 521, 521, 521, 530, 1113, + 530, 1113, 530, 530, 1113, 1113, 1113, 530, 532, 1113, + + 532, 1113, 532, 532, 1113, 1113, 1113, 532, 418, 418, + 418, 418, 418, 418, 418, 418, 418, 418, 418, 418, + 418, 418, 418, 418, 418, 418, 418, 418, 418, 422, + 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, + 422, 422, 422, 422, 422, 422, 422, 422, 422, 422, + 427, 1113, 427, 427, 427, 427, 427, 427, 427, 427, + 427, 427, 427, 427, 427, 427, 427, 1113, 427, 427, + 427, 437, 1113, 437, 1113, 437, 437, 1113, 1113, 1113, + 437, 1113, 437, 442, 1113, 442, 442, 442, 442, 442, + 442, 442, 442, 442, 442, 442, 442, 442, 442, 442, + + 442, 442, 442, 442, 444, 1113, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 444, 444, 444, 444, 444, + 444, 444, 444, 444, 444, 445, 1113, 445, 445, 445, + 445, 445, 445, 445, 445, 445, 445, 445, 445, 445, + 445, 445, 445, 445, 445, 445, 302, 1113, 302, 302, + 1113, 302, 302, 302, 302, 302, 302, 302, 302, 302, + 302, 1113, 302, 1113, 302, 302, 302, 448, 448, 448, + 448, 448, 448, 448, 448, 448, 448, 448, 448, 448, + 448, 448, 448, 448, 448, 448, 448, 448, 331, 1113, + 331, 1113, 331, 331, 1113, 1113, 1113, 331, 342, 1113, + + 342, 342, 342, 342, 342, 342, 342, 342, 342, 342, + 342, 342, 342, 342, 342, 342, 342, 342, 342, 468, + 1113, 468, 468, 468, 468, 468, 468, 468, 468, 468, + 468, 468, 468, 468, 468, 468, 468, 468, 468, 468, + 357, 357, 1113, 1113, 1113, 357, 357, 630, 1113, 630, + 630, 630, 630, 630, 630, 630, 630, 630, 630, 630, + 630, 630, 630, 630, 630, 630, 630, 630, 800, 800, + 800, 800, 800, 800, 800, 800, 800, 800, 800, 800, + 800, 800, 800, 800, 800, 800, 800, 800, 800, 938, + 938, 938, 938, 938, 938, 938, 938, 938, 938, 938, + + 938, 938, 938, 938, 938, 938, 938, 938, 938, 938, + 55, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113 + } ; -static yyconst flex_int16_t yy_chk[4060] = +static const flex_int16_t yy_chk[4596] = { 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, @@ -1435,25 +1347,25 @@ static yyconst flex_int16_t yy_chk[4060] = 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, 3, 3, - 96, 3, 3, 5, 3, 5, 7, 3, 3, 3, - 3, 8, 992, 3, 3, 6, 6, 942, 6, 21, - 3, 941, 6, 3, 9, 126, 9, 11, 11, 96, - - 11, 12, 12, 940, 12, 17, 939, 17, 19, 138, - 19, 19, 27, 20, 27, 20, 20, 17, 22, 3, - 3, 17, 17, 17, 17, 28, 7, 28, 7, 51, - 51, 8, 51, 8, 126, 10, 9, 10, 79, 21, - 21, 10, 21, 9, 9, 87, 9, 87, 3, 3, - 3, 4, 4, 138, 4, 4, 938, 4, 4, 19, - 4, 4, 4, 4, 20, 9, 4, 4, 22, 22, - 95, 22, 9, 4, 73, 73, 4, 10, 23, 37, - 23, 45, 37, 45, 10, 10, 17, 10, 259, 259, - 45, 23, 142, 263, 263, 37, 37, 37, 37, 937, - - 95, 38, 4, 4, 38, 4, 10, 46, 147, 46, - 147, 79, 47, 10, 47, 936, 46, 38, 38, 38, - 38, 142, 47, 55, 55, 149, 55, 149, 23, 23, - 23, 4, 4, 4, 13, 13, 13, 13, 13, 13, + 102, 3, 3, 5, 3, 5, 1012, 3, 3, 3, + 3, 79, 79, 3, 3, 6, 6, 7, 6, 7, + 3, 21, 6, 3, 8, 132, 8, 11, 11, 102, + + 11, 12, 12, 964, 12, 19, 85, 19, 19, 27, + 28, 27, 28, 17, 20, 17, 20, 20, 148, 3, + 3, 51, 9, 51, 9, 17, 537, 22, 9, 17, + 17, 17, 17, 10, 132, 10, 29, 963, 29, 10, + 176, 21, 21, 47, 21, 47, 29, 148, 3, 3, + 3, 4, 4, 47, 4, 4, 19, 4, 4, 537, + 4, 4, 4, 4, 9, 20, 4, 4, 23, 176, + 23, 9, 9, 4, 9, 10, 4, 22, 22, 85, + 22, 23, 10, 10, 962, 10, 29, 199, 29, 45, + 52, 45, 52, 9, 17, 93, 37, 93, 45, 37, + + 9, 961, 4, 4, 10, 4, 38, 960, 46, 38, + 46, 10, 37, 37, 37, 37, 199, 46, 23, 23, + 23, 959, 38, 38, 38, 38, 57, 57, 153, 57, + 153, 4, 4, 4, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, @@ -1463,14 +1375,14 @@ static yyconst flex_int16_t yy_chk[4060] = 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 18, 24, - 18, 24, 168, 29, 58, 29, 74, 74, 935, 30, - 18, 30, 24, 29, 18, 18, 18, 18, 31, 30, - 31, 31, 32, 191, 32, 32, 48, 162, 48, 67, - 67, 168, 67, 246, 162, 246, 48, 75, 74, 75, - 141, 58, 75, 75, 75, 75, 167, 176, 177, 24, - 24, 24, 191, 29, 253, 29, 253, 105, 105, 30, - 105, 30, 116, 116, 116, 116, 294, 74, 294, 31, - 141, 58, 323, 32, 323, 934, 167, 176, 177, 18, + 18, 24, 155, 30, 155, 30, 31, 202, 31, 31, + 18, 64, 24, 30, 18, 18, 18, 18, 32, 43, + 32, 32, 53, 48, 53, 48, 167, 61, 61, 53, + 61, 101, 43, 48, 73, 73, 202, 73, 81, 261, + 81, 261, 43, 81, 81, 81, 81, 43, 64, 24, + 24, 24, 170, 30, 958, 30, 31, 31, 31, 170, + 957, 101, 43, 111, 111, 268, 111, 268, 32, 32, + 32, 43, 53, 53, 53, 956, 43, 167, 64, 18, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, @@ -1481,15 +1393,15 @@ static yyconst flex_int16_t yy_chk[4060] = 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 33, 33, 39, 33, 39, 34, - 34, 33, 34, 182, 41, 42, 34, 333, 43, 181, - - 33, 41, 42, 186, 333, 34, 203, 203, 203, 203, - 325, 43, 325, 181, 41, 42, 179, 187, 179, 188, - 314, 43, 179, 182, 41, 42, 43, 33, 194, 41, - 42, 199, 34, 186, 33, 33, 39, 33, 39, 34, - 34, 43, 34, 181, 41, 42, 179, 187, 179, 188, - 43, 179, 933, 41, 42, 43, 33, 194, 41, 42, - 199, 34, 932, 33, 314, 39, 931, 39, 34, 35, + 34, 33, 34, 147, 41, 42, 34, 49, 44, 49, + + 33, 41, 42, 175, 308, 34, 308, 49, 274, 274, + 50, 44, 50, 184, 41, 42, 122, 122, 122, 122, + 50, 44, 185, 147, 41, 42, 44, 33, 207, 41, + 42, 955, 34, 175, 33, 33, 39, 33, 39, 34, + 34, 44, 34, 184, 41, 42, 334, 49, 334, 49, + 44, 954, 185, 41, 42, 44, 33, 207, 41, 42, + 50, 34, 50, 33, 336, 39, 336, 39, 34, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, @@ -1499,390 +1411,444 @@ static yyconst flex_int16_t yy_chk[4060] = 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, 35, - 35, 35, 35, 40, 44, 40, 63, 63, 193, 63, - 122, 122, 347, 63, 183, 76, 76, 44, 76, 125, - 125, 348, 76, 350, 195, 132, 132, 44, 180, 184, - 190, 76, 44, 409, 409, 183, 180, 76, 193, 930, - 190, 347, 122, 196, 183, 197, 198, 44, 873, 184, - - 348, 125, 350, 40, 195, 40, 44, 132, 180, 184, - 190, 44, 236, 189, 183, 244, 180, 189, 235, 76, - 190, 122, 258, 196, 872, 197, 198, 278, 184, 871, - 125, 290, 40, 291, 40, 59, 132, 63, 228, 228, - 192, 228, 236, 189, 260, 244, 76, 189, 232, 232, - 192, 232, 258, 192, 59, 235, 59, 278, 59, 249, - 249, 290, 249, 291, 59, 870, 249, 59, 59, 59, - 192, 59, 59, 59, 260, 260, 869, 59, 298, 298, - 192, 298, 192, 868, 59, 235, 59, 867, 59, 319, - 320, 866, 239, 239, 59, 239, 865, 59, 59, 59, - - 59, 59, 59, 864, 240, 240, 59, 240, 59, 239, - 239, 239, 239, 241, 241, 863, 241, 261, 261, 319, - 320, 240, 240, 240, 240, 242, 242, 352, 242, 343, - 241, 241, 241, 241, 354, 239, 305, 305, 305, 305, - 249, 344, 242, 242, 242, 242, 346, 862, 355, 261, - 269, 269, 349, 269, 241, 357, 352, 269, 353, 343, - 346, 356, 353, 354, 239, 242, 269, 358, 861, 349, - 359, 344, 269, 360, 359, 361, 346, 355, 261, 362, - 364, 366, 349, 367, 241, 357, 368, 369, 353, 346, - 356, 371, 353, 372, 371, 242, 368, 358, 349, 374, - - 359, 375, 360, 359, 269, 361, 415, 415, 362, 364, - 366, 400, 367, 400, 614, 614, 368, 369, 402, 860, - 402, 371, 859, 372, 371, 368, 858, 387, 374, 394, - 375, 269, 307, 307, 307, 307, 307, 307, 307, 307, - 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, - 307, 307, 307, 307, 307, 307, 307, 387, 394, 404, - 307, 404, 307, 307, 307, 307, 307, 307, 307, 307, - 307, 307, 307, 307, 307, 307, 307, 307, 307, 307, - 307, 307, 307, 307, 307, 307, 370, 373, 390, 390, - 370, 390, 395, 396, 373, 370, 379, 379, 379, 379, - - 398, 406, 430, 406, 430, 390, 390, 390, 390, 408, - 410, 857, 423, 411, 411, 856, 370, 373, 448, 855, - 370, 395, 854, 396, 373, 370, 376, 425, 376, 428, - 398, 376, 376, 393, 393, 853, 393, 376, 376, 408, - 410, 410, 423, 376, 376, 411, 429, 448, 376, 411, - 393, 393, 393, 393, 852, 376, 376, 425, 376, 428, - 851, 376, 376, 420, 420, 420, 420, 376, 376, 432, - 847, 432, 376, 376, 411, 846, 429, 376, 412, 412, - 792, 412, 412, 412, 412, 412, 412, 412, 412, 412, - 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, - - 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, - 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, - 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, - 412, 412, 791, 412, 412, 412, 412, 412, 412, 412, - 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, - 412, 412, 412, 412, 412, 412, 412, 412, 412, 412, - 412, 412, 413, 413, 445, 446, 441, 433, 434, 435, - 438, 439, 436, 442, 449, 459, 450, 498, 790, 498, - 440, 443, 789, 433, 434, 436, 441, 435, 451, 443, - 439, 788, 438, 442, 445, 446, 413, 413, 414, 414, - - 414, 414, 440, 449, 459, 440, 450, 414, 414, 414, - 414, 414, 414, 433, 434, 436, 441, 435, 451, 443, - 439, 438, 452, 442, 462, 453, 454, 455, 456, 787, - 458, 440, 414, 414, 440, 460, 786, 414, 414, 414, - 414, 414, 414, 444, 463, 464, 465, 467, 444, 444, - 444, 444, 452, 462, 444, 453, 454, 455, 456, 444, - 458, 466, 469, 444, 470, 460, 444, 785, 444, 471, - 784, 444, 472, 463, 473, 464, 465, 467, 444, 444, - 444, 444, 474, 475, 444, 476, 477, 478, 479, 444, - 466, 480, 469, 444, 470, 444, 482, 444, 483, 471, - - 444, 481, 472, 484, 473, 485, 486, 481, 487, 488, - 508, 489, 474, 475, 490, 476, 477, 478, 479, 491, - 492, 480, 493, 494, 783, 495, 482, 483, 497, 782, - 496, 481, 484, 496, 496, 485, 486, 481, 487, 488, - 489, 501, 504, 501, 490, 503, 503, 505, 503, 491, - 492, 523, 493, 494, 495, 506, 499, 499, 497, 499, - 496, 510, 496, 496, 502, 502, 600, 502, 600, 613, - 613, 613, 504, 499, 499, 499, 499, 505, 615, 615, - 523, 502, 502, 502, 502, 506, 601, 601, 780, 601, - 508, 510, 511, 511, 773, 511, 511, 511, 511, 511, - - 511, 511, 511, 511, 511, 511, 511, 511, 511, 511, - 511, 511, 511, 511, 511, 511, 511, 511, 511, 511, - 511, 511, 511, 511, 511, 511, 511, 511, 511, 511, - 511, 511, 511, 511, 511, 511, 511, 511, 511, 511, - 511, 511, 511, 511, 511, 511, 514, 511, 511, 511, - 511, 511, 511, 511, 511, 511, 511, 511, 511, 511, - 511, 511, 511, 511, 511, 511, 511, 511, 511, 511, - 511, 511, 511, 511, 511, 511, 512, 512, 520, 514, - 525, 527, 516, 516, 532, 526, 528, 770, 521, 522, - 526, 758, 607, 607, 529, 607, 531, 528, 525, 529, - - 525, 693, 532, 693, 744, 527, 530, 609, 520, 531, - 512, 512, 513, 513, 513, 513, 516, 516, 521, 522, - 526, 513, 513, 513, 513, 513, 513, 528, 525, 529, - 525, 535, 532, 530, 527, 733, 539, 533, 545, 531, - 609, 534, 533, 704, 535, 546, 545, 536, 537, 539, - 703, 513, 513, 513, 513, 513, 513, 517, 517, 517, - 517, 534, 530, 536, 537, 538, 517, 517, 517, 517, - 517, 517, 533, 540, 535, 546, 545, 699, 550, 539, - 542, 547, 551, 538, 541, 553, 543, 544, 554, 555, - 556, 534, 557, 536, 537, 540, 517, 517, 517, 517, - - 517, 517, 542, 541, 698, 542, 543, 544, 550, 557, - 547, 551, 558, 538, 553, 557, 560, 554, 559, 555, - 556, 563, 606, 564, 540, 565, 566, 692, 569, 570, - 574, 542, 572, 541, 542, 573, 543, 544, 576, 557, - 577, 578, 558, 579, 581, 557, 560, 559, 580, 582, - 583, 563, 564, 584, 565, 586, 566, 569, 587, 570, - 574, 572, 588, 590, 573, 589, 591, 576, 592, 594, - 577, 578, 593, 579, 581, 595, 596, 580, 582, 583, - 602, 595, 597, 584, 603, 586, 604, 616, 587, 611, - 611, 618, 588, 590, 589, 591, 621, 624, 592, 594, - - 619, 593, 606, 686, 622, 595, 596, 701, 701, 602, - 595, 623, 597, 626, 603, 604, 622, 616, 625, 624, - 618, 621, 628, 611, 611, 612, 612, 612, 612, 623, - 619, 625, 627, 626, 612, 612, 612, 612, 612, 612, - 628, 627, 629, 631, 630, 632, 622, 682, 624, 629, - 621, 630, 631, 634, 633, 774, 632, 774, 634, 623, - 635, 625, 636, 626, 612, 612, 612, 612, 612, 612, - 628, 627, 633, 636, 633, 637, 639, 640, 638, 629, - 637, 630, 631, 643, 635, 641, 632, 642, 634, 639, - 641, 668, 644, 645, 648, 640, 643, 664, 647, 650, - - 655, 653, 633, 636, 633, 638, 648, 642, 658, 654, - 637, 653, 657, 635, 659, 661, 662, 663, 665, 639, - 641, 644, 666, 645, 648, 640, 643, 647, 667, 650, - 655, 653, 669, 670, 638, 671, 648, 642, 654, 673, - 653, 674, 657, 659, 675, 661, 662, 663, 665, 676, - 679, 666, 678, 680, 681, 683, 684, 685, 667, 687, - 688, 669, 670, 689, 671, 690, 691, 694, 695, 673, - 674, 696, 696, 675, 696, 700, 700, 700, 711, 676, - 679, 678, 680, 707, 681, 683, 684, 685, 709, 687, - 688, 710, 689, 702, 702, 690, 691, 694, 695, 708, - - 707, 712, 711, 709, 708, 713, 716, 710, 714, 718, - 721, 715, 720, 712, 717, 716, 719, 722, 727, 1147, - 1147, 734, 718, 652, 720, 727, 724, 713, 721, 723, - 707, 711, 714, 709, 708, 715, 717, 710, 725, 722, - 729, 719, 723, 712, 726, 716, 724, 725, 730, 729, - 728, 734, 718, 735, 720, 727, 713, 728, 721, 730, - 738, 714, 726, 737, 715, 717, 739, 740, 722, 741, - 719, 742, 723, 737, 617, 743, 724, 725, 745, 729, - 746, 747, 735, 748, 749, 750, 752, 728, 751, 730, - 738, 754, 726, 737, 756, 760, 739, 740, 741, 761, - - 742, 762, 765, 737, 743, 767, 771, 776, 745, 776, - 746, 747, 778, 748, 749, 750, 752, 751, 772, 795, - 849, 754, 849, 756, 795, 760, 764, 764, 793, 761, - 762, 764, 765, 794, 764, 767, 771, 764, 768, 768, - 796, 778, 764, 768, 797, 809, 768, 799, 772, 768, - 794, 798, 793, 801, 795, 796, 764, 764, 802, 799, - 797, 764, 800, 803, 764, 804, 806, 764, 768, 768, - 807, 764, 803, 768, 809, 798, 768, 801, 805, 768, - 794, 793, 802, 811, 800, 796, 814, 804, 808, 799, - 797, 805, 810, 812, 610, 816, 806, 817, 608, 818, - - 807, 819, 803, 820, 798, 821, 801, 823, 825, 826, - 828, 802, 811, 800, 832, 814, 804, 833, 808, 834, - 837, 805, 810, 812, 816, 836, 828, 817, 818, 838, - 839, 819, 820, 840, 842, 821, 841, 823, 825, 826, - 828, 835, 598, 844, 832, 835, 833, 845, 835, 834, - 837, 848, 875, 843, 836, 828, 843, 874, 835, 838, - 839, 876, 878, 840, 842, 841, 843, 877, 879, 880, - 883, 835, 844, 881, 884, 835, 845, 885, 835, 886, - 848, 874, 875, 843, 888, 889, 843, 835, 890, 571, - 891, 876, 878, 892, 893, 843, 877, 894, 879, 880, - - 883, 895, 881, 897, 884, 898, 899, 885, 900, 886, - 874, 901, 902, 888, 904, 889, 905, 908, 890, 891, - 906, 909, 910, 892, 893, 911, 912, 894, 913, 915, - 895, 914, 916, 897, 916, 898, 899, 918, 900, 918, - 901, 902, 943, 944, 904, 945, 905, 908, 914, 906, - 946, 909, 910, 947, 911, 912, 948, 913, 915, 949, - 950, 914, 951, 568, 952, 953, 954, 552, 955, 956, - 958, 943, 959, 944, 960, 945, 961, 914, 962, 963, - 946, 964, 965, 947, 967, 969, 948, 970, 971, 949, - 950, 972, 951, 952, 953, 973, 954, 955, 975, 956, - - 958, 959, 976, 960, 978, 961, 977, 979, 962, 963, - 977, 964, 965, 967, 969, 993, 970, 994, 971, 995, - 996, 972, 997, 998, 999, 973, 1001, 1002, 975, 1004, - 1005, 976, 1006, 978, 1007, 977, 1008, 979, 1009, 977, - 1010, 1012, 1016, 1017, 1018, 993, 1021, 994, 995, 1022, - 996, 997, 998, 999, 1023, 1031, 1001, 1002, 1004, 1005, - 1024, 1025, 1006, 1026, 1007, 1028, 1008, 1029, 1009, 1030, - 1010, 1012, 1016, 1017, 1018, 1021, 1032, 1033, 1034, 1022, - 1037, 524, 1039, 1041, 1023, 1031, 1044, 1047, 1048, 1024, - 1025, 1049, 1026, 1050, 1028, 1051, 1029, 1052, 1030, 1053, - - 1054, 1055, 1056, 1058, 515, 1059, 1032, 1033, 1034, 1060, - 1037, 1039, 1061, 1041, 1063, 1067, 1044, 1047, 1048, 1068, - 1049, 1069, 1070, 1050, 1072, 1051, 1073, 1052, 1074, 1053, - 1054, 1055, 1056, 1058, 1059, 1075, 1076, 1077, 1060, 1078, - 1081, 1083, 1061, 1063, 1084, 1067, 1085, 468, 1086, 1068, - 1069, 1087, 1070, 1088, 1072, 1090, 1073, 1093, 1074, 1094, - 1097, 437, 1098, 1099, 1102, 1075, 1076, 1077, 1078, 1081, - 1103, 1083, 1160, 1084, 1160, 419, 1085, 1086, 392, 1189, - 1087, 1189, 1088, 377, 351, 1090, 341, 1093, 1094, 339, - 1097, 1098, 1099, 334, 1102, 301, 300, 299, 296, 285, - - 1103, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, - 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1107, 1108, 1108, - 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, 1108, - 1108, 1108, 1108, 1108, 1108, 1109, 1109, 1109, 1109, 1109, - 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, 1109, - 1109, 1109, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, - 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1110, 1111, - 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, 1111, - 1111, 1111, 1111, 1111, 1111, 1111, 1112, 1112, 1112, 1112, - 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, 1112, - - 1112, 1112, 1112, 1113, 1113, 1113, 1113, 1113, 1113, 1113, - 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 35, 35, 35, 40, 634, 40, 54, 189, 54, 69, + 69, 188, 69, 54, 80, 80, 69, 82, 82, 188, + 82, 189, 128, 128, 82, 278, 278, 131, 131, 953, + 138, 138, 359, 82, 187, 190, 194, 634, 195, 82, + 187, 188, 191, 201, 196, 345, 80, 192, 196, 188, + + 952, 189, 345, 40, 128, 40, 54, 54, 54, 131, + 897, 359, 138, 191, 187, 190, 194, 192, 195, 187, + 198, 82, 191, 201, 196, 80, 896, 192, 196, 203, + 198, 204, 40, 128, 40, 65, 243, 243, 131, 243, + 69, 138, 191, 250, 205, 197, 192, 361, 82, 197, + 198, 206, 251, 200, 65, 259, 65, 273, 65, 203, + 198, 204, 895, 200, 65, 894, 200, 65, 65, 65, + 893, 65, 65, 65, 205, 197, 361, 65, 892, 197, + 250, 206, 251, 200, 65, 259, 65, 273, 65, 211, + 211, 211, 211, 200, 65, 200, 891, 65, 65, 65, + + 65, 65, 65, 890, 247, 247, 65, 247, 65, 889, + 250, 254, 254, 888, 254, 255, 255, 887, 255, 256, + 256, 363, 256, 257, 257, 275, 257, 293, 254, 254, + 254, 254, 255, 255, 255, 255, 256, 256, 256, 256, + 257, 257, 257, 257, 264, 264, 304, 264, 276, 276, + 363, 264, 305, 886, 254, 275, 275, 293, 312, 312, + 256, 312, 332, 257, 885, 284, 284, 884, 284, 333, + 349, 350, 284, 355, 356, 358, 304, 883, 365, 366, + 276, 284, 305, 254, 367, 360, 368, 284, 371, 358, + 256, 369, 332, 257, 319, 319, 319, 319, 372, 333, + + 349, 350, 360, 355, 356, 358, 364, 365, 366, 276, + 364, 373, 381, 367, 374, 360, 368, 371, 358, 284, + 418, 369, 418, 882, 420, 264, 420, 422, 372, 422, + 881, 360, 391, 391, 391, 391, 364, 424, 880, 424, + 364, 373, 381, 374, 376, 378, 284, 321, 321, 321, + 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, + 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, + 321, 321, 370, 376, 378, 321, 370, 321, 321, 321, + 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, + 321, 321, 321, 321, 321, 321, 321, 321, 321, 321, + + 321, 379, 370, 380, 383, 370, 382, 383, 384, 385, + 382, 879, 386, 380, 387, 382, 385, 878, 405, 427, + 427, 412, 413, 433, 433, 448, 414, 448, 639, 639, + 379, 416, 426, 380, 383, 877, 382, 383, 384, 385, + 382, 386, 380, 387, 531, 382, 385, 388, 405, 388, + 412, 413, 388, 388, 408, 408, 414, 408, 388, 388, + 428, 416, 426, 876, 388, 388, 875, 411, 411, 388, + 411, 408, 408, 408, 408, 441, 388, 388, 443, 388, + 429, 429, 388, 388, 411, 411, 411, 411, 388, 388, + 428, 428, 446, 388, 388, 431, 431, 447, 388, 438, + + 438, 438, 438, 464, 450, 441, 450, 465, 443, 469, + 470, 521, 429, 521, 871, 471, 429, 524, 870, 524, + 526, 526, 446, 526, 531, 818, 625, 447, 625, 431, + 431, 626, 626, 464, 626, 632, 632, 465, 632, 469, + 470, 429, 430, 430, 471, 430, 430, 430, 430, 430, + 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, + 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, + 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, + 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, + 430, 430, 430, 430, 430, 430, 817, 430, 430, 430, + + 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, + 430, 430, 430, 430, 430, 430, 430, 430, 430, 430, + 430, 430, 430, 430, 430, 430, 432, 432, 432, 432, + 451, 452, 453, 457, 456, 432, 432, 432, 432, 432, + 432, 454, 459, 460, 472, 461, 451, 452, 473, 458, + 453, 474, 457, 461, 454, 816, 456, 475, 476, 477, + 432, 432, 459, 460, 478, 432, 432, 432, 432, 432, + 432, 458, 480, 472, 458, 482, 451, 452, 473, 481, + 453, 474, 457, 461, 454, 456, 486, 475, 476, 477, + 484, 487, 459, 460, 478, 815, 485, 488, 489, 814, + + 458, 491, 480, 458, 462, 482, 492, 493, 481, 462, + 462, 462, 462, 494, 495, 462, 486, 496, 497, 484, + 462, 487, 498, 499, 462, 485, 488, 462, 489, 462, + 500, 491, 462, 501, 502, 503, 492, 493, 505, 462, + 462, 462, 462, 494, 495, 462, 506, 496, 497, 504, + 462, 507, 498, 499, 462, 504, 462, 508, 462, 509, + 500, 462, 510, 501, 502, 503, 511, 513, 505, 512, + 514, 515, 516, 517, 519, 506, 518, 519, 519, 504, + 507, 520, 638, 638, 638, 504, 546, 508, 527, 509, + 528, 529, 510, 533, 543, 544, 511, 513, 512, 813, + + 514, 515, 516, 517, 519, 518, 519, 519, 631, 522, + 522, 520, 522, 525, 525, 546, 525, 719, 527, 719, + 528, 529, 812, 533, 543, 544, 522, 522, 522, 522, + 525, 525, 525, 525, 534, 534, 811, 534, 534, 534, + 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, + 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, + 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, + 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, + 534, 534, 534, 534, 534, 534, 534, 534, 631, 534, + 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, + + 534, 534, 534, 534, 534, 534, 534, 534, 534, 534, + 534, 534, 534, 534, 534, 534, 534, 534, 535, 535, + 545, 548, 550, 810, 539, 539, 549, 552, 557, 551, + 554, 549, 552, 553, 809, 559, 558, 640, 640, 548, + 551, 548, 556, 554, 727, 727, 550, 556, 557, 558, + 545, 559, 535, 535, 536, 536, 536, 536, 539, 539, + 553, 549, 552, 536, 536, 536, 536, 536, 536, 548, + 551, 548, 555, 554, 562, 550, 560, 556, 557, 558, + 800, 559, 800, 563, 569, 561, 566, 562, 564, 553, + 555, 571, 560, 536, 536, 536, 536, 536, 536, 540, + + 540, 540, 540, 561, 565, 563, 566, 564, 540, 540, + 540, 540, 540, 540, 569, 567, 568, 562, 570, 572, + 555, 571, 560, 575, 568, 808, 565, 576, 577, 565, + 578, 579, 580, 561, 563, 567, 566, 564, 540, 540, + 540, 540, 540, 540, 582, 584, 581, 570, 572, 583, + 587, 806, 588, 575, 568, 565, 576, 577, 565, 578, + 589, 579, 580, 581, 590, 567, 594, 595, 599, 581, + 799, 597, 598, 601, 582, 584, 602, 603, 583, 604, + 587, 588, 605, 606, 796, 607, 608, 609, 611, 589, + 612, 613, 615, 581, 590, 594, 614, 595, 599, 581, + + 597, 598, 601, 616, 617, 619, 602, 603, 618, 604, + 620, 605, 621, 606, 607, 608, 620, 609, 611, 622, + 612, 613, 615, 627, 628, 614, 629, 636, 636, 641, + 651, 643, 616, 646, 617, 619, 647, 618, 644, 784, + 620, 669, 621, 650, 652, 620, 770, 660, 647, 622, + 651, 648, 627, 652, 628, 629, 650, 649, 646, 641, + 643, 636, 636, 637, 637, 637, 637, 653, 644, 648, + 669, 660, 637, 637, 637, 637, 637, 637, 647, 649, + 651, 654, 655, 652, 656, 653, 650, 646, 654, 655, + 657, 658, 659, 656, 728, 728, 665, 659, 663, 648, + + 660, 657, 637, 637, 637, 637, 637, 637, 649, 658, + 661, 658, 662, 664, 665, 653, 667, 662, 654, 655, + 668, 661, 670, 656, 666, 663, 664, 659, 671, 666, + 672, 657, 674, 668, 676, 679, 667, 761, 680, 658, + 681, 658, 683, 687, 665, 679, 685, 662, 688, 689, + 691, 661, 670, 692, 663, 693, 664, 671, 695, 666, + 672, 674, 696, 668, 676, 679, 667, 680, 697, 699, + 681, 700, 683, 687, 679, 685, 701, 702, 688, 689, + 691, 704, 692, 705, 707, 693, 706, 695, 709, 710, + 711, 696, 713, 714, 733, 715, 716, 697, 717, 699, + + 700, 720, 721, 722, 722, 701, 722, 702, 730, 736, + 704, 733, 734, 705, 707, 706, 737, 734, 709, 710, + 711, 735, 713, 714, 715, 736, 716, 739, 717, 740, + 738, 720, 721, 726, 726, 726, 735, 741, 743, 745, + 737, 733, 738, 744, 747, 742, 746, 734, 748, 739, + 729, 750, 749, 740, 742, 736, 744, 752, 746, 751, + 743, 741, 747, 725, 745, 749, 735, 753, 751, 737, + 748, 750, 738, 754, 753, 752, 755, 763, 739, 764, + 754, 765, 740, 756, 742, 755, 744, 763, 746, 743, + 741, 766, 747, 745, 756, 749, 767, 768, 751, 748, + + 769, 750, 771, 772, 753, 752, 773, 763, 774, 764, + 754, 765, 775, 776, 778, 755, 777, 763, 780, 724, + 782, 766, 786, 787, 756, 767, 768, 788, 791, 769, + 793, 797, 771, 772, 718, 798, 773, 802, 774, 802, + 804, 712, 775, 776, 778, 777, 790, 790, 780, 782, + 820, 790, 786, 787, 790, 819, 788, 790, 791, 708, + 793, 797, 790, 794, 794, 798, 823, 820, 794, 804, + 821, 794, 824, 822, 794, 821, 790, 790, 825, 819, + 826, 790, 823, 827, 790, 828, 831, 790, 822, 830, + 825, 790, 832, 794, 794, 833, 824, 820, 794, 831, + + 834, 794, 826, 835, 794, 821, 829, 827, 819, 828, + 838, 830, 823, 836, 841, 829, 694, 840, 822, 842, + 825, 843, 832, 844, 833, 824, 845, 847, 849, 831, + 834, 826, 835, 850, 852, 856, 827, 857, 828, 838, + 830, 858, 690, 836, 841, 829, 840, 860, 842, 865, + 852, 843, 844, 861, 862, 859, 845, 847, 849, 859, + 863, 864, 859, 850, 852, 856, 857, 866, 684, 868, + 869, 858, 859, 872, 867, 678, 860, 867, 865, 852, + 873, 898, 873, 861, 862, 859, 903, 867, 899, 859, + 863, 864, 859, 900, 901, 902, 905, 866, 868, 869, + + 906, 859, 872, 907, 867, 898, 908, 867, 910, 911, + 912, 642, 913, 914, 915, 903, 867, 916, 899, 917, + 919, 920, 921, 900, 901, 902, 905, 922, 635, 923, + 906, 924, 926, 907, 898, 927, 908, 910, 928, 911, + 912, 913, 930, 914, 915, 931, 932, 916, 917, 933, + 919, 920, 921, 934, 935, 937, 936, 922, 923, 938, + 924, 938, 926, 965, 940, 927, 940, 928, 966, 967, + 968, 969, 930, 936, 970, 931, 932, 971, 933, 972, + 973, 974, 934, 935, 937, 975, 936, 976, 978, 633, + 979, 980, 965, 981, 982, 983, 984, 985, 966, 967, + + 968, 969, 936, 987, 970, 989, 990, 971, 972, 973, + 991, 974, 992, 993, 975, 995, 999, 976, 978, 979, + 980, 996, 981, 998, 982, 983, 984, 985, 1015, 997, + 1013, 1014, 987, 997, 989, 990, 1016, 1017, 1019, 1020, + 991, 1022, 992, 993, 1023, 995, 999, 1024, 1025, 1026, + 996, 1027, 998, 1028, 1030, 1034, 1035, 1015, 997, 1036, + 1013, 1014, 997, 1039, 1040, 1016, 1017, 1041, 1019, 1020, + 1022, 1042, 1043, 1023, 1044, 1046, 1047, 1024, 1025, 1026, + 1048, 1027, 1049, 1028, 1030, 1034, 1035, 1050, 1053, 1036, + 1055, 1057, 1039, 1060, 1040, 1063, 1064, 1041, 1065, 1066, + + 1042, 1043, 1067, 1044, 1046, 1068, 1047, 1069, 1070, 1072, + 1048, 1073, 1049, 1074, 1075, 623, 1077, 1050, 1053, 1055, + 1081, 1057, 1082, 1060, 1083, 1063, 1064, 1065, 1084, 1066, + 1086, 1087, 1067, 1088, 1089, 1068, 1090, 1069, 1070, 1072, + 1073, 1093, 1074, 1095, 1075, 1077, 1096, 1097, 1098, 1100, + 1081, 1103, 1082, 1083, 1105, 596, 1106, 1107, 1084, 1109, + 1086, 1087, 1110, 1088, 1089, 1090, 1157, 1157, 593, 1173, + 1093, 1173, 1206, 1095, 1206, 1096, 1097, 1098, 547, 1100, + 538, 1103, 1166, 1166, 1105, 1106, 1107, 1166, 490, 1109, + 467, 466, 1110, 1114, 1114, 1114, 1114, 1114, 1114, 1114, + 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1114, - 1114, 1114, 1114, 1114, 1114, 1114, 1114, 1115, 1115, 1115, + 1114, 1114, 1114, 1114, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, 1115, - 1115, 1115, 1115, 1115, 1116, 1116, 1116, 1116, 1116, 1116, + 1115, 1115, 1115, 1115, 1115, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, 1116, - 1116, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, - 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1118, 1118, + 1116, 1116, 1116, 1116, 1116, 1116, 1117, 1117, 1117, 1117, + 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1117, + 1117, 1117, 1117, 1117, 1117, 1117, 1117, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, + 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1118, 1119, 1119, - 1118, 1118, 1118, 1118, 1118, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, - 1119, 1119, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, - 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1121, + 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1119, 1120, + 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, + 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, 1120, + 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, 1121, - 1121, 1121, 1121, 1121, 1121, 1121, 1122, 1122, 1122, 1122, + 1121, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, 1122, - 1122, 1122, 1122, 1123, 1123, 1123, 1123, 1123, 1123, 1123, + 1122, 1122, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, 1123, - 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, - 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1125, 1125, 1125, + 1123, 1123, 1123, 1124, 1124, 1124, 1124, 1124, 1124, 1124, + 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, 1124, + 1124, 1124, 1124, 1124, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, 1125, - 1125, 1125, 1125, 1125, 1126, 1126, 282, 1126, 1126, 274, - 273, 272, 1126, 1127, 1127, 1127, 1127, 1127, 1127, 1127, - 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1128, - 1128, 271, 1128, 1128, 268, 266, 265, 1128, 1129, 256, + 1125, 1125, 1125, 1125, 1125, 1126, 1126, 1126, 1126, 1126, + 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, 1126, + 1126, 1126, 1126, 1126, 1126, 1126, 1127, 1127, 1127, 1127, + 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1127, + 1127, 1127, 1127, 1127, 1127, 1127, 1127, 1128, 1128, 1128, + 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, + + 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1128, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, - 1129, 1129, 1129, 1129, 1129, 1130, 255, 1130, 1130, 1130, + 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1129, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, - 1130, 1130, 1131, 1131, 1131, 252, 1131, 1131, 251, 234, - - 230, 1131, 1132, 227, 1132, 1132, 1132, 1132, 1132, 1132, - 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1133, - 226, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, - 1133, 1133, 1133, 1133, 1133, 1133, 1134, 1134, 1134, 1134, - 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 222, 1134, - 208, 1134, 1134, 1135, 207, 206, 1135, 1135, 1135, 1135, - 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, 1135, - 1136, 1136, 202, 1136, 1136, 175, 174, 172, 1136, 1137, - 170, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, 1137, - 1137, 1137, 1137, 1137, 1137, 1137, 1138, 169, 1138, 1138, - + 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, 1130, + 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, + 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, 1131, + 1131, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, + 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, 1132, + 1132, 1132, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, + + 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, 1133, + 1133, 1133, 1133, 1134, 1134, 1134, 1134, 1134, 1134, 1134, + 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, 1134, + 1134, 1134, 1134, 1134, 1135, 455, 1135, 437, 1135, 1135, + 1213, 1213, 1213, 1135, 1136, 1136, 1136, 1136, 1136, 1136, + 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, 1136, + 1136, 1136, 1136, 1136, 1137, 410, 1137, 389, 1137, 1137, + 1167, 1167, 362, 1137, 1138, 1167, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, 1138, - 166, 1138, 1138, 1139, 165, 1139, 164, 158, 1139, 1139, - 1139, 1139, 1139, 155, 154, 153, 1139, 1140, 152, 1140, - 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, 1140, - 1140, 1140, 1140, 1140, 1141, 1141, 144, 1141, 1141, 143, - 139, 136, 1141, 1142, 1142, 1142, 1142, 1142, 1142, 1142, + 1138, 1138, 1138, 1138, 1138, 1139, 353, 1139, 1139, 1139, + + 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, 1139, + 1139, 1139, 1139, 1139, 1139, 1139, 1140, 1140, 351, 1140, + 346, 1140, 1140, 344, 343, 328, 1140, 1141, 315, 1141, + 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, + 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1141, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, 1142, - 1143, 131, 1143, 129, 1143, 1143, 1143, 1143, 1143, 1143, - 1143, 1143, 1143, 124, 1143, 1143, 1143, 1144, 120, 1144, - 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, + 1142, 1142, 1142, 314, 1142, 313, 1142, 1142, 1142, 1143, + 310, 1143, 1143, 296, 1143, 1143, 1143, 1143, 1143, 1143, + 1143, 1143, 1143, 1143, 289, 1143, 288, 1143, 1143, 1143, + 1144, 287, 286, 1144, 1144, 1144, 1144, 1144, 1144, 1144, - 1144, 1144, 1144, 1144, 1145, 114, 1145, 1145, 1145, 1145, - 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, 1145, - 1145, 1146, 1146, 109, 107, 1146, 1146, 1148, 106, 1148, - 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, 1148, - 1148, 1148, 1148, 1148, 1149, 103, 1149, 1149, 1149, 101, + 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, 1144, + 1144, 1145, 283, 1145, 281, 1145, 1145, 280, 271, 270, + 1145, 1146, 267, 1146, 1146, 1146, 1146, 1146, 1146, 1146, + 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, 1146, + 1146, 1146, 1147, 266, 1147, 1147, 1147, 1147, 1147, 1147, + 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 1147, 249, + 1147, 1147, 1147, 1148, 245, 1148, 241, 1148, 239, 1148, + 1148, 1148, 1148, 238, 1148, 1148, 236, 235, 234, 1148, + 1149, 230, 1149, 1149, 1149, 216, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, 1149, - 1149, 1150, 1150, 99, 1150, 1150, 98, 97, 94, 1150, - 1151, 91, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, - 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1152, 90, 1152, - 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, 1152, - 1152, 1152, 1152, 1152, 1153, 1153, 88, 86, 84, 1153, - 1154, 1154, 80, 78, 72, 1154, 1155, 1155, 1155, 1155, + 1149, 1150, 215, 1150, 214, 1150, 1150, 210, 183, 182, + 1150, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, + 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, 1151, + 1151, 1151, 1152, 180, 1152, 1152, 1152, 1152, 1152, 178, + 1152, 1152, 1152, 1152, 1152, 1152, 1152, 177, 1152, 174, + 1152, 1152, 1152, 1153, 173, 1153, 172, 1153, 1153, 1153, + 1153, 1153, 1153, 1153, 1153, 1153, 1153, 1153, 168, 166, + 164, 1153, 1153, 1153, 1154, 1154, 1154, 1154, 1154, 1154, + 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, 1154, + 1154, 1154, 1154, 1154, 1154, 1155, 161, 1155, 1155, 1155, + 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, 1155, - 1155, 1155, 1155, 1156, 1156, 71, 1156, 1156, 68, 65, - 60, 1156, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, - 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1157, 1158, - 57, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, - 1158, 1158, 1158, 53, 1158, 1158, 1159, 49, 1159, 1159, - 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, - 1159, 1159, 1159, 1161, 1161, 16, 1161, 1161, 15, 0, - - 0, 1161, 1161, 1162, 0, 1162, 1162, 1162, 1162, 1162, - 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, - 1163, 0, 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1163, - 1163, 1163, 1163, 1163, 1163, 1163, 1163, 1164, 0, 1164, + 1155, 1155, 1155, 1155, 1155, 1155, 1156, 1156, 160, 159, + 158, 1156, 1156, 1158, 150, 1158, 1158, 1158, 1158, 1158, + 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, 1158, + 1158, 1158, 1158, 1158, 1159, 149, 145, 1159, 1159, 1159, + 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 1159, 144, + 1159, 142, 1159, 1160, 137, 1160, 1160, 1160, 1160, 135, + 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, 1160, + 1160, 1160, 1160, 1160, 1161, 1161, 1161, 1161, 1161, 1161, + 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 1161, 130, + + 1161, 126, 1161, 1161, 1161, 1162, 120, 1162, 1162, 1162, + 115, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, 1162, + 113, 112, 109, 1162, 1162, 1162, 1163, 107, 1163, 105, + 1163, 1163, 104, 103, 99, 1163, 1164, 96, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1164, - 1164, 1164, 1164, 1164, 1165, 0, 1165, 1165, 1165, 1165, + 1164, 1164, 1164, 1164, 1164, 1164, 1164, 1165, 95, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, - 1165, 1166, 0, 1166, 1166, 1166, 1166, 1166, 1166, 1166, - 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1166, 1167, 1167, - 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, 1167, - - 0, 1167, 0, 1167, 1167, 1168, 1168, 1168, 1168, 1168, + 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1165, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, - 1168, 1168, 1169, 0, 0, 1169, 1169, 1169, 1169, 1169, - 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1169, 1170, - 1170, 0, 1170, 1170, 0, 0, 0, 1170, 1171, 0, - 1171, 0, 0, 1171, 1171, 1171, 1171, 1171, 0, 0, - 0, 1171, 1172, 0, 1172, 1172, 1172, 1172, 1172, 1172, - 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1173, - 1173, 0, 1173, 1173, 0, 0, 0, 1173, 1174, 1174, - 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, 1174, - - 1174, 1174, 1174, 1174, 1174, 1175, 0, 1175, 0, 1175, - 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 0, 1175, - 1175, 1175, 1176, 0, 1176, 1176, 1176, 1176, 1176, 1176, - 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1177, - 0, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, - 1177, 1177, 1177, 1177, 1177, 1177, 1178, 1178, 0, 0, - 1178, 1178, 1179, 0, 1179, 1179, 1179, 1179, 1179, 1179, - 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1180, - 0, 1180, 1180, 1180, 0, 1180, 1180, 1180, 1180, 1180, - 1180, 1180, 1180, 1180, 1180, 1180, 1181, 0, 1181, 1181, + 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1168, 1169, + + 92, 1169, 90, 1169, 1169, 86, 84, 78, 1169, 1170, + 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, + 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, 1170, + 1171, 77, 1171, 1171, 1171, 1171, 1171, 1171, 1171, 1171, + 1171, 1171, 1171, 1171, 1171, 1171, 1171, 74, 1171, 1171, + 1171, 1172, 71, 1172, 1172, 1172, 1172, 1172, 1172, 1172, + 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, 1172, + 1172, 1172, 1174, 66, 1174, 63, 1174, 1174, 59, 55, + 16, 1174, 15, 1174, 1175, 0, 1175, 1175, 1175, 1175, + 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, 1175, + + 1175, 1175, 1175, 1175, 1175, 1176, 0, 1176, 1176, 1176, + 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, 1176, + 1176, 1176, 1176, 1176, 1176, 1176, 1177, 0, 1177, 1177, + 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1177, + 1177, 1177, 1177, 1177, 1177, 1177, 1177, 1178, 0, 1178, + 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, + 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1178, 1179, 1179, + 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, 1179, + 1179, 1179, 1179, 0, 1179, 0, 1179, 1179, 1179, 1180, + 0, 1180, 1180, 0, 1180, 1180, 1180, 1180, 1180, 1180, + 1180, 1180, 1180, 1180, 0, 1180, 0, 1180, 1180, 1180, + 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, 1181, - 1181, 1181, 1181, 1182, 0, 1182, 1182, 1182, 1182, 1182, + 1181, 1182, 0, 0, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, 1182, - 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1183, - 1183, 1183, 1183, 1183, 1183, 1183, 1183, 1184, 1184, 0, - 1184, 1184, 0, 0, 0, 1184, 1185, 1185, 0, 1185, - 1185, 0, 0, 0, 1185, 1186, 1186, 1186, 1186, 1186, - 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, 1186, - 1186, 1186, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, - 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1188, - - 0, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, 1188, - 1188, 1188, 1188, 0, 1188, 1188, 1190, 1190, 0, 1190, - 1190, 0, 0, 0, 1190, 1190, 1191, 0, 1191, 1191, + 1182, 1182, 1183, 0, 1183, 0, 1183, 1183, 0, 0, + 0, 1183, 1184, 0, 1184, 0, 1184, 0, 1184, 1184, + 1184, 1184, 0, 1184, 1184, 0, 0, 0, 1184, 1185, + 0, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, + 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, 1185, + + 1186, 0, 1186, 0, 1186, 1186, 0, 0, 0, 1186, + 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, + 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, 1187, + 1187, 1188, 0, 1188, 1188, 1188, 1188, 1188, 0, 1188, + 1188, 1188, 1188, 1188, 1188, 1188, 0, 1188, 0, 1188, + 1188, 1188, 1189, 0, 1189, 0, 1189, 1189, 1189, 1189, + 1189, 1189, 1189, 1189, 1189, 1189, 1189, 0, 0, 0, + 1189, 1189, 1189, 1190, 0, 1190, 1190, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, 1190, + 1190, 1190, 1190, 1190, 1191, 0, 1191, 1191, 1191, 1191, + 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, 1191, - 1191, 1191, 1191, 1192, 0, 1192, 1192, 1192, 1192, 1192, - 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, 1192, - 1193, 0, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, - 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1194, 1194, 1194, - 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, - 1194, 1194, 1194, 1194, 1195, 1195, 1195, 1196, 1196, 0, - - 1196, 1196, 0, 0, 0, 1196, 1197, 0, 1197, 1197, - 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, - 1197, 1197, 1197, 1198, 0, 1198, 1198, 1198, 1198, 1198, + 1191, 1191, 1191, 1191, 1191, 1192, 1192, 0, 0, 0, + 1192, 1192, 1193, 0, 1193, 1193, 1193, 1193, 1193, 1193, + 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, 1193, + 1193, 1193, 1193, 1194, 0, 0, 1194, 1194, 1194, 1194, + 1194, 1194, 1194, 1194, 1194, 1194, 1194, 1194, 0, 1194, + 0, 1194, 1195, 0, 1195, 1195, 1195, 1195, 0, 1195, + 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, 1195, + 1195, 1195, 1195, 1196, 1196, 1196, 1196, 1196, 1196, 1196, + 1196, 1196, 1196, 1196, 1196, 1196, 1196, 1196, 0, 1196, + + 0, 1196, 1196, 1196, 1197, 0, 1197, 1197, 1197, 0, + 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 1197, 0, + 0, 0, 1197, 1197, 1197, 1198, 0, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, 1198, + 1198, 1198, 1198, 1198, 1198, 1198, 1199, 0, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1199, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, - 1200, 1200, 1200, 1200, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, - 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106, 1106 + 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1200, 1201, 0, + 1201, 0, 1201, 1201, 0, 0, 0, 1201, 1202, 0, + + 1202, 0, 1202, 1202, 0, 0, 0, 1202, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, + 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1203, 1204, + 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, + 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, 1204, + 1205, 0, 1205, 1205, 1205, 1205, 1205, 1205, 1205, 1205, + 1205, 1205, 1205, 1205, 1205, 1205, 1205, 0, 1205, 1205, + 1205, 1207, 0, 1207, 0, 1207, 1207, 0, 0, 0, + 1207, 0, 1207, 1208, 0, 1208, 1208, 1208, 1208, 1208, + 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, 1208, + + 1208, 1208, 1208, 1208, 1209, 0, 1209, 1209, 1209, 1209, + 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, 1209, + 1209, 1209, 1209, 1209, 1209, 1210, 0, 1210, 1210, 1210, + 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, 1210, + 1210, 1210, 1210, 1210, 1210, 1210, 1211, 0, 1211, 1211, + 0, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, 1211, + 1211, 0, 1211, 0, 1211, 1211, 1211, 1212, 1212, 1212, + 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, + 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1212, 1214, 0, + 1214, 0, 1214, 1214, 0, 0, 0, 1214, 1215, 0, + + 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, + 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1215, 1216, + 0, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, + 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, 1216, + 1217, 1217, 0, 0, 0, 1217, 1217, 1218, 0, 1218, + 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, + 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1218, 1219, 1219, + 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, + 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1219, 1220, + 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, + + 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, 1220, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, 1113, + 1113, 1113, 1113, 1113, 1113 + } ; +static yy_state_type yy_last_accepting_state; +static char *yy_last_accepting_cpos; + extern int yy_flex_debug; int yy_flex_debug = 0; -static yy_state_type *yy_state_buf=0, *yy_state_ptr=0; -static char *yy_full_match; -static int yy_lp; -#define REJECT \ -{ \ -*yy_cp = (yy_hold_char); /* undo effects of setting up yytext */ \ -yy_cp = (yy_full_match); /* restore poss. backed-over text */ \ -++(yy_lp); \ -goto find_rule; \ -} - -static int yy_more_flag = 0; -static int yy_more_len = 0; -#define yymore() ((yy_more_flag) = 1) -#define YY_MORE_ADJ (yy_more_len) +/* The intent behind this definition is that it'll catch + * any uses of REJECT which flex missed. + */ +#define REJECT reject_used_but_not_detected +#define yymore() yymore_used_but_not_detected +#define YY_MORE_ADJ 0 #define YY_RESTORE_YY_MORE_OFFSET char *yytext; #line 1 "scan.l" @@ -1924,6 +1890,13 @@ char *yytext; extern bool tablesverify, tablesext; extern int trlcontxt; /* Set in parse.y for each rule. */ extern const char *escaped_qstart, *escaped_qend; +extern int yylval; + +#define M4QSTART "[""[" +#define M4QEND "]""]" + +#define ESCAPED_QSTART "[" M4QEND M4QSTART "[" M4QEND M4QSTART +#define ESCAPED_QEND M4QEND "]" M4QSTART M4QEND "]" M4QSTART #define ACTION_ECHO add_action( yytext ) #define ACTION_IFDEF(def, should_define) \ @@ -1932,8 +1905,8 @@ extern const char *escaped_qstart, *escaped_qend; action_define( def, 1 ); \ } -#define ACTION_ECHO_QSTART add_action (escaped_qstart) -#define ACTION_ECHO_QEND add_action (escaped_qend) +#define ACTION_ECHO_QSTART add_action (ESCAPED_QSTART) +#define ACTION_ECHO_QEND add_action (ESCAPED_QEND) #define ACTION_M4_IFDEF(def, should_define) \ do{ \ @@ -1946,7 +1919,7 @@ extern const char *escaped_qstart, *escaped_qend; #define MARK_END_OF_PROLOG mark_prolog(); #define YY_DECL \ - int flexscan() + int flexscan(void) #define RETURNCHAR \ yylval = (unsigned char) yytext[0]; \ @@ -1955,18 +1928,20 @@ extern const char *escaped_qstart, *escaped_qend; #define RETURNNAME \ if(yyleng < MAXLINE) \ { \ - strcpy( nmstr, yytext ); \ + strncpy( nmstr, yytext, sizeof(nmstr) ); \ + return NAME; \ } \ else \ - { \ + do { \ synerr(_("Input line too long\n")); \ FLEX_EXIT(EXIT_FAILURE); \ - } \ - return NAME; + } while (0) #define PUT_BACK_STRING(str, start) \ - for ( i = strlen( str ) - 1; i >= start; --i ) \ - unput((str)[i]) + { size_t i = strlen( str ); \ + while ( i > start ) \ + unput((str)[--i]); \ + } #define CHECK_REJECT(str) \ if ( all_upper( str ) ) \ @@ -1980,14 +1955,26 @@ extern const char *escaped_qstart, *escaped_qend; if ( getenv("POSIXLY_CORRECT") ) \ posix_compat = true; +#define START_CODEBLOCK(x) do { \ + /* Emit the needed line directive... */\ + if (indented_code == false) { \ + linenum++; \ + line_directive_out(NULL, 1); \ + } \ + add_action(M4QSTART); \ + yy_push_state(CODEBLOCK); \ + if ((indented_code = x)) ACTION_ECHO; \ +} while(0) +#define END_CODEBLOCK do { \ + yy_pop_state();\ + add_action(M4QEND); \ + if (!indented_code) line_directive_out(NULL, 0);\ +} while (0) +#line 1974 "<stdout>" - - - - -#line 1990 "<stdout>" +#line 1976 "<stdout>" #define INITIAL 0 #define SECT2 1 @@ -2013,6 +2000,9 @@ extern const char *escaped_qstart, *escaped_qend; #define GROUP_MINUS_PARAMS 21 #define EXTENDED_COMMENT 22 #define COMMENT_DISCARD 23 +#define CODE_COMMENT 24 +#define SECT3_NOESCAPE 25 +#define CHARACTER_CONSTANT 26 #ifndef YY_NO_UNISTD_H /* Special case for "unistd.h", since it is non-ANSI. We include it way @@ -2026,36 +2016,36 @@ extern const char *escaped_qstart, *escaped_qend; #define YY_EXTRA_TYPE void * #endif -static int yy_init_globals (void ); +static int yy_init_globals ( void ); /* Accessor methods to globals. These are made visible to non-reentrant scanners for convenience. */ -int yylex_destroy (void ); +int yylex_destroy ( void ); -int yyget_debug (void ); +int yyget_debug ( void ); -void yyset_debug (int debug_flag ); +void yyset_debug ( int debug_flag ); -YY_EXTRA_TYPE yyget_extra (void ); +YY_EXTRA_TYPE yyget_extra ( void ); -void yyset_extra (YY_EXTRA_TYPE user_defined ); +void yyset_extra ( YY_EXTRA_TYPE user_defined ); -FILE *yyget_in (void ); +FILE *yyget_in ( void ); -void yyset_in (FILE * in_str ); +void yyset_in ( FILE * _in_str ); -FILE *yyget_out (void ); +FILE *yyget_out ( void ); -void yyset_out (FILE * out_str ); +void yyset_out ( FILE * _out_str ); -yy_size_t yyget_leng (void ); + int yyget_leng ( void ); -char *yyget_text (void ); +char *yyget_text ( void ); -int yyget_lineno (void ); +int yyget_lineno ( void ); -void yyset_lineno (int line_number ); +void yyset_lineno ( int _line_number ); /* Macros after this point can all be overridden by user definitions in * section 1. @@ -2063,30 +2053,31 @@ void yyset_lineno (int line_number ); #ifndef YY_SKIP_YYWRAP #ifdef __cplusplus -extern "C" int yywrap (void ); +extern "C" int yywrap ( void ); #else -extern int yywrap (void ); +extern int yywrap ( void ); #endif #endif #ifndef YY_NO_UNPUT - static void yyunput (int c,char *buf_ptr ); -#endif + static void yyunput ( int c, char *buf_ptr ); + +#endif + #ifndef yytext_ptr -static void yy_flex_strncpy (char *,yyconst char *,int ); +static void yy_flex_strncpy ( char *, const char *, int ); #endif #ifdef YY_NEED_STRLEN -static int yy_flex_strlen (yyconst char * ); +static int yy_flex_strlen ( const char * ); #endif #ifndef YY_NO_INPUT - #ifdef __cplusplus -static int yyinput (void ); +static int yyinput ( void ); #else -static int input (void ); +static int input ( void ); #endif #endif @@ -2095,13 +2086,18 @@ static int input (void ); static int yy_start_stack_depth = 0; static int *yy_start_stack = NULL; - static void yy_push_state (int new_state ); + static void yy_push_state ( int _new_state ); - static void yy_pop_state (void ); + static void yy_pop_state ( void ); /* Amount of stuff to slurp up with each read. */ #ifndef YY_READ_BUF_SIZE +#ifdef __ia64__ +/* On IA-64, the buffer size is 16k, not 8k */ +#define YY_READ_BUF_SIZE 16384 +#else #define YY_READ_BUF_SIZE 8192 +#endif /* __ia64__ */ #endif /* Copy whatever the last rule matched to the standard output. */ @@ -2109,7 +2105,7 @@ static int input (void ); /* This used to be an fputs(), but since the string might contain NUL's, * we now use fwrite(). */ -#define ECHO do { if (fwrite( yytext, yyleng, 1, yyout )) {} } while (0) +#define ECHO do { if (fwrite( yytext, (size_t) yyleng, 1, yyout )) {} } while (0) #endif /* Gets input and stuffs it into "buf". number of characters read, or YY_NULL, @@ -2120,7 +2116,7 @@ static int input (void ); if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \ { \ int c = '*'; \ - size_t n; \ + int n; \ for ( n = 0; n < max_size && \ (c = getc( yyin )) != EOF && c != '\n'; ++n ) \ buf[n] = (char) c; \ @@ -2133,7 +2129,7 @@ static int input (void ); else \ { \ errno=0; \ - while ( (result = fread(buf, 1, max_size, yyin))==0 && ferror(yyin)) \ + while ( (result = (int) fread(buf, 1, (yy_size_t) max_size, yyin)) == 0 && ferror(yyin)) \ { \ if( errno != EINTR) \ { \ @@ -2188,7 +2184,7 @@ extern int yylex (void); /* Code executed at the end of each rule. */ #ifndef YY_BREAK -#define YY_BREAK break; +#define YY_BREAK /*LINTED*/break; #endif #define YY_RULE_SETUP \ @@ -2205,19 +2201,6 @@ YY_DECL char *yy_cp, *yy_bp; int yy_act; -#line 131 "scan.l" - - static int bracelevel, didadef, indented_code; - static int doing_rule_action = false; - static int option_sense; - - int doing_codeblock = false; - int i, brace_depth=0, brace_start_line=0; - Char nmdef[MAXLINE]; - - -#line 2219 "<stdout>" - if ( !(yy_init) ) { (yy_init) = 1; @@ -2226,12 +2209,6 @@ YY_DECL YY_USER_INIT; #endif - /* Create the reject buffer large enough to save one state per allowed character. */ - if ( ! (yy_state_buf) ) - (yy_state_buf) = (yy_state_type *)yyalloc(YY_STATE_BUF_SIZE ); - if ( ! (yy_state_buf) ) - YY_FATAL_ERROR( "out of dynamic memory in yylex()" ); - if ( ! (yy_start) ) (yy_start) = 1; /* first start state */ @@ -2244,20 +2221,29 @@ YY_DECL if ( ! YY_CURRENT_BUFFER ) { yyensure_buffer_stack (); YY_CURRENT_BUFFER_LVALUE = - yy_create_buffer(yyin,YY_BUF_SIZE ); + yy_create_buffer( yyin, YY_BUF_SIZE ); } - yy_load_buffer_state( ); + yy_load_buffer_state( ); } - while ( 1 ) /* loops until end-of-file is reached */ + { +#line 159 "scan.l" + +#line 161 "scan.l" + static int bracelevel, didadef, indented_code; + static int doing_rule_action = false; + static int option_sense; + + int doing_codeblock = false; + int brace_depth=0, brace_start_line=0; + char nmdef[MAXLINE]; + + +#line 2242 "<stdout>" + + while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */ { - (yy_more_len) = 0; - if ( (yy_more_flag) ) - { - (yy_more_len) = (yy_c_buf_p) - (yytext_ptr); - (yy_more_flag) = 0; - } yy_cp = (yy_c_buf_p); /* Support of yytext. */ @@ -2270,44 +2256,33 @@ YY_DECL yy_current_state = (yy_start); yy_current_state += YY_AT_BOL(); - - (yy_state_ptr) = (yy_state_buf); - *(yy_state_ptr)++ = yy_current_state; - yy_match: do { YY_CHAR yy_c = yy_ec[YY_SC_TO_UI(*yy_cp)] ; + if ( yy_accept[yy_current_state] ) + { + (yy_last_accepting_state) = yy_current_state; + (yy_last_accepting_cpos) = yy_cp; + } while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 1107 ) - yy_c = yy_meta[(unsigned int) yy_c]; + if ( yy_current_state >= 1114 ) + yy_c = yy_meta[yy_c]; } - yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; - *(yy_state_ptr)++ = yy_current_state; + yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c]; ++yy_cp; } - while ( yy_base[yy_current_state] != 3975 ); + while ( yy_base[yy_current_state] != 4511 ); yy_find_action: - yy_current_state = *--(yy_state_ptr); - (yy_lp) = yy_accept[yy_current_state]; -goto find_rule; /* avoid `defined but not used' warning */ -find_rule: /* we branch to this label when backing up */ - for ( ; ; ) /* until we find what rule we matched */ - { - if ( (yy_lp) && (yy_lp) < yy_accept[yy_current_state + 1] ) - { - yy_act = yy_acclist[(yy_lp)]; - { - (yy_full_match) = yy_cp; - break; - } - } - --yy_cp; - yy_current_state = *--(yy_state_ptr); - (yy_lp) = yy_accept[yy_current_state]; + yy_act = yy_accept[yy_current_state]; + if ( yy_act == 0 ) + { /* have to back up */ + yy_cp = (yy_last_accepting_cpos); + yy_current_state = (yy_last_accepting_state); + yy_act = yy_accept[yy_current_state]; } YY_DO_BEFORE_ACTION; @@ -2316,47 +2291,48 @@ do_action: /* This label is used only to access EOF actions. */ switch ( yy_act ) { /* beginning of action switch */ + case 0: /* must back up */ + /* undo the effects of YY_DO_BEFORE_ACTION */ + *yy_cp = (yy_hold_char); + yy_cp = (yy_last_accepting_cpos); + yy_current_state = (yy_last_accepting_state); + goto yy_find_action; case 1: YY_RULE_SETUP -#line 142 "scan.l" -indented_code = true; BEGIN(CODEBLOCK); +#line 171 "scan.l" +START_CODEBLOCK(true); YY_BREAK case 2: YY_RULE_SETUP -#line 143 "scan.l" -ACTION_ECHO; yy_push_state( COMMENT ); +#line 172 "scan.l" +add_action("/*[""["); yy_push_state( COMMENT ); YY_BREAK case 3: YY_RULE_SETUP -#line 144 "scan.l" +#line 173 "scan.l" yy_push_state( LINEDIR ); YY_BREAK case 4: YY_RULE_SETUP -#line 145 "scan.l" +#line 174 "scan.l" return SCDECL; YY_BREAK case 5: YY_RULE_SETUP -#line 146 "scan.l" +#line 175 "scan.l" return XSCDECL; YY_BREAK case 6: /* rule 6 can match eol */ YY_RULE_SETUP -#line 147 "scan.l" -{ - ++linenum; - line_directive_out( (FILE *) 0, 1 ); - indented_code = false; - BEGIN(CODEBLOCK); - } +#line 176 "scan.l" +START_CODEBLOCK(false); YY_BREAK case 7: /* rule 7 can match eol */ YY_RULE_SETUP -#line 153 "scan.l" +#line 177 "scan.l" { brace_start_line = linenum; ++linenum; @@ -2367,22 +2343,22 @@ YY_RULE_SETUP YY_BREAK case 8: YY_RULE_SETUP -#line 161 "scan.l" +#line 185 "scan.l" synerr( _("malformed '%top' directive") ); YY_BREAK case 9: YY_RULE_SETUP -#line 163 "scan.l" +#line 187 "scan.l" /* discard */ YY_BREAK case 10: YY_RULE_SETUP -#line 165 "scan.l" +#line 189 "scan.l" { sectnum = 2; bracelevel = 0; mark_defs1(); - line_directive_out( (FILE *) 0, 1 ); + line_directive_out(NULL, 1); BEGIN(SECT2PROLOG); return SECTEND; } @@ -2390,46 +2366,46 @@ YY_RULE_SETUP case 11: /* rule 11 can match eol */ YY_RULE_SETUP -#line 174 "scan.l" +#line 198 "scan.l" yytext_is_array = false; ++linenum; YY_BREAK case 12: /* rule 12 can match eol */ YY_RULE_SETUP -#line 175 "scan.l" +#line 199 "scan.l" yytext_is_array = true; ++linenum; YY_BREAK case 13: YY_RULE_SETUP -#line 177 "scan.l" -BEGIN(OPTION); return OPTION_OP; +#line 201 "scan.l" +BEGIN(OPTION); return TOK_OPTION; YY_BREAK case 14: /* rule 14 can match eol */ YY_RULE_SETUP -#line 179 "scan.l" +#line 203 "scan.l" ++linenum; /* ignore */ YY_BREAK case 15: /* rule 15 can match eol */ YY_RULE_SETUP -#line 180 "scan.l" +#line 204 "scan.l" ++linenum; /* ignore */ YY_BREAK /* xgettext: no-c-format */ case 16: /* rule 16 can match eol */ YY_RULE_SETUP -#line 183 "scan.l" +#line 207 "scan.l" synerr( _( "unrecognized '%' directive" ) ); YY_BREAK case 17: YY_RULE_SETUP -#line 185 "scan.l" +#line 209 "scan.l" { if(yyleng < MAXLINE) { - strcpy( nmstr, yytext ); + strncpy( nmstr, yytext, sizeof(nmstr) ); } else { @@ -2443,162 +2419,167 @@ YY_RULE_SETUP YY_BREAK case 18: YY_RULE_SETUP -#line 200 "scan.l" +#line 224 "scan.l" RETURNNAME; YY_BREAK case 19: /* rule 19 can match eol */ YY_RULE_SETUP -#line 201 "scan.l" +#line 225 "scan.l" ++linenum; /* allows blank lines in section 1 */ YY_BREAK case 20: /* rule 20 can match eol */ YY_RULE_SETUP -#line 202 "scan.l" +#line 226 "scan.l" ACTION_ECHO; ++linenum; /* maybe end of comment line */ YY_BREAK - +/* */ case 21: YY_RULE_SETUP -#line 207 "scan.l" -ACTION_ECHO; yy_pop_state(); +#line 231 "scan.l" +ACTION_ECHO; YY_BREAK case 22: YY_RULE_SETUP -#line 208 "scan.l" +#line 232 "scan.l" ACTION_ECHO; YY_BREAK case 23: +/* rule 23 can match eol */ YY_RULE_SETUP -#line 209 "scan.l" -ACTION_ECHO_QSTART; +#line 234 "scan.l" +++linenum; ACTION_ECHO; YY_BREAK + + case 24: YY_RULE_SETUP -#line 210 "scan.l" -ACTION_ECHO_QEND; +#line 237 "scan.l" +add_action("*/]""]"); yy_pop_state(); YY_BREAK + + case 25: YY_RULE_SETUP -#line 211 "scan.l" -ACTION_ECHO; - YY_BREAK -case 26: -/* rule 26 can match eol */ -YY_RULE_SETUP -#line 212 "scan.l" -++linenum; ACTION_ECHO; +#line 240 "scan.l" +ACTION_ECHO; yy_pop_state(); YY_BREAK /* This is the same as COMMENT, but is discarded rather than output. */ -case 27: +case 26: YY_RULE_SETUP -#line 217 "scan.l" +#line 245 "scan.l" yy_pop_state(); YY_BREAK -case 28: +case 27: YY_RULE_SETUP -#line 218 "scan.l" +#line 246 "scan.l" ; YY_BREAK -case 29: +case 28: YY_RULE_SETUP -#line 219 "scan.l" +#line 247 "scan.l" ; YY_BREAK -case 30: -/* rule 30 can match eol */ +case 29: +/* rule 29 can match eol */ YY_RULE_SETUP -#line 220 "scan.l" +#line 248 "scan.l" ++linenum; YY_BREAK -case 31: +case 30: YY_RULE_SETUP -#line 224 "scan.l" +#line 252 "scan.l" yy_pop_state(); YY_BREAK -case 32: +case 31: YY_RULE_SETUP -#line 225 "scan.l" +#line 253 "scan.l" ; YY_BREAK -case 33: -/* rule 33 can match eol */ +case 32: +/* rule 32 can match eol */ YY_RULE_SETUP -#line 226 "scan.l" -++linenum; +#line 254 "scan.l" +++linenum; YY_BREAK -case 34: -/* rule 34 can match eol */ +case 33: +/* rule 33 can match eol */ YY_RULE_SETUP -#line 230 "scan.l" +#line 258 "scan.l" yy_pop_state(); YY_BREAK -case 35: +case 34: YY_RULE_SETUP -#line 231 "scan.l" +#line 259 "scan.l" linenum = myctoi( yytext ); YY_BREAK -case 36: +case 35: YY_RULE_SETUP -#line 233 "scan.l" +#line 261 "scan.l" { - flex_free( (void *) infilename ); - infilename = copy_string( yytext + 1 ); + free(infilename); + infilename = xstrdup(yytext + 1); infilename[strlen( infilename ) - 1] = '\0'; } YY_BREAK -case 37: +case 36: YY_RULE_SETUP -#line 238 "scan.l" +#line 266 "scan.l" /* ignore spurious characters */ YY_BREAK +case 37: +YY_RULE_SETUP +#line 269 "scan.l" +ACTION_ECHO_QSTART; + YY_BREAK case 38: -/* rule 38 can match eol */ YY_RULE_SETUP -#line 242 "scan.l" -++linenum; BEGIN(INITIAL); +#line 270 "scan.l" +ACTION_ECHO_QEND; YY_BREAK + + case 39: +/* rule 39 can match eol */ YY_RULE_SETUP -#line 244 "scan.l" -ACTION_ECHO_QSTART; +#line 274 "scan.l" +++linenum; END_CODEBLOCK; YY_BREAK case 40: YY_RULE_SETUP -#line 245 "scan.l" -ACTION_ECHO_QEND; +#line 275 "scan.l" +ACTION_ECHO; YY_BREAK case 41: YY_RULE_SETUP -#line 246 "scan.l" +#line 276 "scan.l" ACTION_ECHO; YY_BREAK case 42: /* rule 42 can match eol */ YY_RULE_SETUP -#line 248 "scan.l" +#line 277 "scan.l" { ++linenum; ACTION_ECHO; - if ( indented_code ) - BEGIN(INITIAL); + if ( indented_code ) END_CODEBLOCK; } YY_BREAK case 43: YY_RULE_SETUP -#line 257 "scan.l" +#line 285 "scan.l" { if( --brace_depth == 0){ /* TODO: Matched. */ @@ -2609,7 +2590,7 @@ YY_RULE_SETUP YY_BREAK case 44: YY_RULE_SETUP -#line 265 "scan.l" +#line 293 "scan.l" { brace_depth++; buf_strnappend(&top_buf, yytext, yyleng); @@ -2618,7 +2599,7 @@ YY_RULE_SETUP case 45: /* rule 45 can match eol */ YY_RULE_SETUP -#line 270 "scan.l" +#line 298 "scan.l" { ++linenum; buf_strnappend(&top_buf, yytext, yyleng); @@ -2626,23 +2607,23 @@ YY_RULE_SETUP YY_BREAK case 46: YY_RULE_SETUP -#line 275 "scan.l" -buf_strnappend(&top_buf, escaped_qstart, strlen(escaped_qstart)); +#line 303 "scan.l" +buf_strnappend(&top_buf, escaped_qstart, (int) strlen(escaped_qstart)); YY_BREAK case 47: YY_RULE_SETUP -#line 276 "scan.l" -buf_strnappend(&top_buf, escaped_qend, strlen(escaped_qend)); +#line 304 "scan.l" +buf_strnappend(&top_buf, escaped_qend, (int) strlen(escaped_qend)); YY_BREAK case 48: YY_RULE_SETUP -#line 278 "scan.l" +#line 305 "scan.l" { - buf_strnappend(&top_buf, yytext, yyleng); - } + buf_strnappend(&top_buf, yytext, yyleng); + } YY_BREAK case YY_STATE_EOF(CODEBLOCK_MATCH_BRACE): -#line 282 "scan.l" +#line 309 "scan.l" { linenum = brace_start_line; synerr(_("Unmatched '{'")); @@ -2653,16 +2634,16 @@ case YY_STATE_EOF(CODEBLOCK_MATCH_BRACE): case 49: YY_RULE_SETUP -#line 291 "scan.l" +#line 318 "scan.l" /* separates name and definition */ YY_BREAK case 50: YY_RULE_SETUP -#line 293 "scan.l" +#line 320 "scan.l" { if(yyleng < MAXLINE) { - strcpy( (char *) nmdef, yytext ); + strncpy( nmdef, yytext, sizeof(nmdef) ); } else { @@ -2670,12 +2651,12 @@ YY_RULE_SETUP FLEX_EXIT(EXIT_FAILURE); } /* Skip trailing whitespace. */ - for ( i = strlen( (char *) nmdef ) - 1; - i >= 0 && (nmdef[i] == ' ' || nmdef[i] == '\t'); - --i ) - ; - - nmdef[i + 1] = '\0'; + { + size_t i = strlen( nmdef ); + while (i > 0 && (nmdef[i-1] == ' ' || nmdef[i-1] == '\t')) + --i; + nmdef[i] = '\0'; + } ndinstal( nmstr, nmdef ); didadef = true; @@ -2684,7 +2665,7 @@ YY_RULE_SETUP case 51: /* rule 51 can match eol */ YY_RULE_SETUP -#line 315 "scan.l" +#line 342 "scan.l" { if ( ! didadef ) synerr( _( "incomplete name definition" ) ); @@ -2697,42 +2678,42 @@ YY_RULE_SETUP case 52: /* rule 52 can match eol */ YY_RULE_SETUP -#line 325 "scan.l" +#line 352 "scan.l" ++linenum; BEGIN(INITIAL); YY_BREAK case 53: YY_RULE_SETUP -#line 326 "scan.l" +#line 353 "scan.l" option_sense = true; YY_BREAK case 54: YY_RULE_SETUP -#line 328 "scan.l" +#line 355 "scan.l" return '='; YY_BREAK case 55: YY_RULE_SETUP -#line 330 "scan.l" +#line 357 "scan.l" option_sense = ! option_sense; YY_BREAK case 56: YY_RULE_SETUP -#line 332 "scan.l" +#line 359 "scan.l" csize = option_sense ? 128 : 256; YY_BREAK case 57: YY_RULE_SETUP -#line 333 "scan.l" +#line 360 "scan.l" csize = option_sense ? 256 : 128; YY_BREAK case 58: YY_RULE_SETUP -#line 335 "scan.l" +#line 362 "scan.l" long_align = option_sense; YY_BREAK case 59: YY_RULE_SETUP -#line 336 "scan.l" +#line 363 "scan.l" { ACTION_M4_IFDEF( "M4""_YY_ALWAYS_INTERACTIVE", option_sense ); interactive = option_sense; @@ -2740,110 +2721,105 @@ YY_RULE_SETUP YY_BREAK case 60: YY_RULE_SETUP -#line 340 "scan.l" +#line 367 "scan.l" yytext_is_array = option_sense; YY_BREAK case 61: YY_RULE_SETUP -#line 341 "scan.l" -ansi_func_defs = option_sense; - YY_BREAK -case 62: -YY_RULE_SETUP -#line 342 "scan.l" -ansi_func_protos = option_sense; - YY_BREAK -case 63: -YY_RULE_SETUP -#line 343 "scan.l" +#line 368 "scan.l" backing_up_report = option_sense; YY_BREAK -case 64: +case 62: YY_RULE_SETUP -#line 344 "scan.l" +#line 369 "scan.l" interactive = ! option_sense; YY_BREAK -case 65: +case 63: YY_RULE_SETUP -#line 345 "scan.l" +#line 370 "scan.l" bison_bridge_lval = option_sense; YY_BREAK -case 66: +case 64: YY_RULE_SETUP -#line 346 "scan.l" +#line 371 "scan.l" { if((bison_bridge_lloc = option_sense)) bison_bridge_lval = true; } YY_BREAK -case 67: +case 65: YY_RULE_SETUP -#line 349 "scan.l" +#line 374 "scan.l" C_plus_plus = option_sense; YY_BREAK -case 68: +case 66: YY_RULE_SETUP -#line 350 "scan.l" +#line 375 "scan.l" sf_set_case_ins(!option_sense); YY_BREAK -case 69: +case 67: YY_RULE_SETUP -#line 351 "scan.l" +#line 376 "scan.l" sf_set_case_ins(option_sense); YY_BREAK -case 70: +case 68: YY_RULE_SETUP -#line 352 "scan.l" +#line 377 "scan.l" ddebug = option_sense; YY_BREAK -case 71: +case 69: YY_RULE_SETUP -#line 353 "scan.l" +#line 378 "scan.l" spprdflt = ! option_sense; YY_BREAK -case 72: +case 70: YY_RULE_SETUP -#line 354 "scan.l" +#line 379 "scan.l" useecs = option_sense; YY_BREAK -case 73: +case 71: YY_RULE_SETUP -#line 355 "scan.l" +#line 380 "scan.l" { useecs = usemecs = false; use_read = fullspd = true; } YY_BREAK -case 74: +case 72: YY_RULE_SETUP -#line 359 "scan.l" +#line 384 "scan.l" { useecs = usemecs = false; use_read = fulltbl = true; } YY_BREAK -case 75: +case 73: YY_RULE_SETUP -#line 363 "scan.l" +#line 388 "scan.l" ACTION_IFDEF("YY_NO_INPUT", ! option_sense); YY_BREAK -case 76: +case 74: YY_RULE_SETUP -#line 364 "scan.l" +#line 389 "scan.l" interactive = option_sense; YY_BREAK -case 77: +case 75: YY_RULE_SETUP -#line 365 "scan.l" +#line 390 "scan.l" lex_compat = option_sense; YY_BREAK -case 78: +case 76: YY_RULE_SETUP -#line 366 "scan.l" +#line 391 "scan.l" posix_compat = option_sense; YY_BREAK -case 79: +case 77: YY_RULE_SETUP -#line 367 "scan.l" +#line 392 "scan.l" +gen_line_dirs = option_sense; + YY_BREAK +case 78: +YY_RULE_SETUP +#line 393 "scan.l" { ACTION_M4_IFDEF( "M4""_YY_MAIN", option_sense); /* Override yywrap */ @@ -2851,265 +2827,265 @@ YY_RULE_SETUP do_yywrap = false; } YY_BREAK -case 80: +case 79: YY_RULE_SETUP -#line 373 "scan.l" +#line 399 "scan.l" usemecs = option_sense; YY_BREAK -case 81: +case 80: YY_RULE_SETUP -#line 374 "scan.l" +#line 400 "scan.l" { ACTION_M4_IFDEF( "M4""_YY_NEVER_INTERACTIVE", option_sense ); interactive = !option_sense; } YY_BREAK -case 82: +case 81: YY_RULE_SETUP -#line 378 "scan.l" +#line 404 "scan.l" performance_report += option_sense ? 1 : -1; YY_BREAK -case 83: +case 82: YY_RULE_SETUP -#line 379 "scan.l" +#line 405 "scan.l" yytext_is_array = ! option_sense; YY_BREAK -case 84: +case 83: YY_RULE_SETUP -#line 380 "scan.l" +#line 406 "scan.l" use_read = option_sense; YY_BREAK -case 85: +case 84: YY_RULE_SETUP -#line 381 "scan.l" +#line 407 "scan.l" reentrant = option_sense; YY_BREAK -case 86: +case 85: YY_RULE_SETUP -#line 382 "scan.l" +#line 408 "scan.l" reject_really_used = option_sense; YY_BREAK -case 87: +case 86: YY_RULE_SETUP -#line 383 "scan.l" +#line 409 "scan.l" ACTION_M4_IFDEF( "M4""_YY_STACK_USED", option_sense ); YY_BREAK -case 88: +case 87: YY_RULE_SETUP -#line 384 "scan.l" +#line 410 "scan.l" do_stdinit = option_sense; YY_BREAK -case 89: +case 88: YY_RULE_SETUP -#line 385 "scan.l" +#line 411 "scan.l" use_stdout = option_sense; YY_BREAK -case 90: +case 89: YY_RULE_SETUP -#line 386 "scan.l" +#line 412 "scan.l" ACTION_IFDEF("YY_NO_UNISTD_H", ! option_sense); YY_BREAK -case 91: +case 90: YY_RULE_SETUP -#line 387 "scan.l" +#line 413 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_UNPUT", ! option_sense); YY_BREAK -case 92: +case 91: YY_RULE_SETUP -#line 388 "scan.l" +#line 414 "scan.l" printstats = option_sense; YY_BREAK -case 93: +case 92: YY_RULE_SETUP -#line 389 "scan.l" +#line 415 "scan.l" nowarn = ! option_sense; YY_BREAK -case 94: +case 93: YY_RULE_SETUP -#line 390 "scan.l" +#line 416 "scan.l" do_yylineno = option_sense; ACTION_M4_IFDEF("M4""_YY_USE_LINENO", option_sense); YY_BREAK -case 95: +case 94: YY_RULE_SETUP -#line 391 "scan.l" +#line 417 "scan.l" yymore_really_used = option_sense; YY_BREAK -case 96: +case 95: YY_RULE_SETUP -#line 392 "scan.l" +#line 418 "scan.l" do_yywrap = option_sense; YY_BREAK -case 97: +case 96: YY_RULE_SETUP -#line 394 "scan.l" +#line 420 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_PUSH_STATE", ! option_sense); YY_BREAK -case 98: +case 97: YY_RULE_SETUP -#line 395 "scan.l" +#line 421 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_POP_STATE", ! option_sense); YY_BREAK -case 99: +case 98: YY_RULE_SETUP -#line 396 "scan.l" +#line 422 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_TOP_STATE", ! option_sense); YY_BREAK -case 100: +case 99: YY_RULE_SETUP -#line 398 "scan.l" +#line 424 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_SCAN_BUFFER", ! option_sense); YY_BREAK -case 101: +case 100: YY_RULE_SETUP -#line 399 "scan.l" +#line 425 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_SCAN_BYTES", ! option_sense); YY_BREAK -case 102: +case 101: YY_RULE_SETUP -#line 400 "scan.l" +#line 426 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_SCAN_STRING", ! option_sense); YY_BREAK -case 103: +case 102: YY_RULE_SETUP -#line 402 "scan.l" +#line 428 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_FLEX_ALLOC", ! option_sense); YY_BREAK -case 104: +case 103: YY_RULE_SETUP -#line 403 "scan.l" +#line 429 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_FLEX_REALLOC", ! option_sense); YY_BREAK -case 105: +case 104: YY_RULE_SETUP -#line 404 "scan.l" +#line 430 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_FLEX_FREE", ! option_sense); YY_BREAK -case 106: +case 105: YY_RULE_SETUP -#line 406 "scan.l" +#line 432 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_GET_DEBUG", ! option_sense); YY_BREAK -case 107: +case 106: YY_RULE_SETUP -#line 407 "scan.l" +#line 433 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_SET_DEBUG", ! option_sense); YY_BREAK -case 108: +case 107: YY_RULE_SETUP -#line 408 "scan.l" +#line 434 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_GET_EXTRA", ! option_sense); YY_BREAK -case 109: +case 108: YY_RULE_SETUP -#line 409 "scan.l" +#line 435 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_SET_EXTRA", ! option_sense); YY_BREAK -case 110: +case 109: YY_RULE_SETUP -#line 410 "scan.l" +#line 436 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_GET_LENG", ! option_sense); YY_BREAK -case 111: +case 110: YY_RULE_SETUP -#line 411 "scan.l" +#line 437 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_GET_TEXT", ! option_sense); YY_BREAK -case 112: +case 111: YY_RULE_SETUP -#line 412 "scan.l" +#line 438 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_GET_LINENO", ! option_sense); YY_BREAK -case 113: +case 112: YY_RULE_SETUP -#line 413 "scan.l" +#line 439 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_SET_LINENO", ! option_sense); YY_BREAK -case 114: +case 113: YY_RULE_SETUP -#line 414 "scan.l" +#line 440 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_GET_IN", ! option_sense); YY_BREAK -case 115: +case 114: YY_RULE_SETUP -#line 415 "scan.l" +#line 441 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_SET_IN", ! option_sense); YY_BREAK -case 116: +case 115: YY_RULE_SETUP -#line 416 "scan.l" +#line 442 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_GET_OUT", ! option_sense); YY_BREAK -case 117: +case 116: YY_RULE_SETUP -#line 417 "scan.l" +#line 443 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_SET_OUT", ! option_sense); YY_BREAK -case 118: +case 117: YY_RULE_SETUP -#line 418 "scan.l" +#line 444 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_GET_LVAL", ! option_sense); YY_BREAK -case 119: +case 118: YY_RULE_SETUP -#line 419 "scan.l" +#line 445 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_SET_LVAL", ! option_sense); YY_BREAK -case 120: +case 119: YY_RULE_SETUP -#line 420 "scan.l" +#line 446 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_GET_LLOC", ! option_sense); YY_BREAK -case 121: +case 120: YY_RULE_SETUP -#line 421 "scan.l" +#line 447 "scan.l" ACTION_M4_IFDEF("M4""_YY_NO_SET_LLOC", ! option_sense); YY_BREAK +case 121: +YY_RULE_SETUP +#line 449 "scan.l" +return TOK_EXTRA_TYPE; + YY_BREAK case 122: YY_RULE_SETUP -#line 423 "scan.l" -return OPT_EXTRA_TYPE; +#line 450 "scan.l" +return TOK_OUTFILE; YY_BREAK case 123: YY_RULE_SETUP -#line 424 "scan.l" -return OPT_OUTFILE; +#line 451 "scan.l" +return TOK_PREFIX; YY_BREAK case 124: YY_RULE_SETUP -#line 425 "scan.l" -return OPT_PREFIX; +#line 452 "scan.l" +return TOK_YYCLASS; YY_BREAK case 125: YY_RULE_SETUP -#line 426 "scan.l" -return OPT_YYCLASS; +#line 453 "scan.l" +return TOK_HEADER_FILE; YY_BREAK case 126: YY_RULE_SETUP -#line 427 "scan.l" -return OPT_HEADER; +#line 454 "scan.l" +return TOK_TABLES_FILE; YY_BREAK case 127: YY_RULE_SETUP -#line 428 "scan.l" -return OPT_TABLES; - YY_BREAK -case 128: -YY_RULE_SETUP -#line 429 "scan.l" +#line 455 "scan.l" { tablesverify = option_sense; if(!tablesext && option_sense) tablesext = true; } YY_BREAK -case 129: +case 128: YY_RULE_SETUP -#line 436 "scan.l" +#line 462 "scan.l" { if(yyleng-1 < MAXLINE) { - strcpy( nmstr, yytext + 1 ); + strncpy( nmstr, yytext + 1, sizeof(nmstr) ); } else { @@ -3120,9 +3096,9 @@ YY_RULE_SETUP return NAME; } YY_BREAK -case 130: +case 129: YY_RULE_SETUP -#line 450 "scan.l" +#line 476 "scan.l" { format_synerr( _( "unrecognized %%option: %s" ), yytext ); @@ -3130,56 +3106,57 @@ YY_RULE_SETUP } YY_BREAK -case 131: -/* rule 131 can match eol */ +case 130: +/* rule 130 can match eol */ YY_RULE_SETUP -#line 457 "scan.l" +#line 483 "scan.l" ++linenum; BEGIN(INITIAL); YY_BREAK -case 132: +case 131: YY_RULE_SETUP -#line 461 "scan.l" +#line 487 "scan.l" ++bracelevel; yyless( 2 ); /* eat only %{ */ YY_BREAK -case 133: +case 132: YY_RULE_SETUP -#line 462 "scan.l" +#line 488 "scan.l" --bracelevel; yyless( 2 ); /* eat only %} */ YY_BREAK -case 134: +case 133: YY_RULE_SETUP -#line 464 "scan.l" -ACTION_ECHO; /* indented code in prolog */ +#line 490 "scan.l" +START_CODEBLOCK(true); /* indented code in prolog */ YY_BREAK -case 135: +case 134: YY_RULE_SETUP -#line 466 "scan.l" -{ /* non-indented code */ - if ( bracelevel <= 0 ) - { /* not in %{ ... %} */ - yyless( 0 ); /* put it all back */ - yy_set_bol( 1 ); - mark_prolog(); - BEGIN(SECT2); - } - else - ACTION_ECHO; - } +#line 492 "scan.l" +{ + /* non-indented code */ + if ( bracelevel <= 0 ) { + /* not in %{ ... %} */ + yyless( 0 ); /* put it all back */ + yy_set_bol( 1 ); + mark_prolog(); + BEGIN(SECT2); + } else { + START_CODEBLOCK(true); + } + } YY_BREAK -case 136: +case 135: YY_RULE_SETUP -#line 478 "scan.l" +#line 505 "scan.l" ACTION_ECHO; YY_BREAK -case 137: -/* rule 137 can match eol */ +case 136: +/* rule 136 can match eol */ YY_RULE_SETUP -#line 479 "scan.l" +#line 506 "scan.l" ++linenum; ACTION_ECHO; YY_BREAK case YY_STATE_EOF(SECT2PROLOG): -#line 481 "scan.l" +#line 508 "scan.l" { mark_prolog(); sectnum = 0; @@ -3188,15 +3165,15 @@ case YY_STATE_EOF(SECT2PROLOG): YY_BREAK -case 138: -/* rule 138 can match eol */ +case 137: +/* rule 137 can match eol */ YY_RULE_SETUP -#line 489 "scan.l" +#line 516 "scan.l" ++linenum; /* allow blank lines in section 2 */ YY_BREAK -case 139: +case 138: YY_RULE_SETUP -#line 491 "scan.l" +#line 518 "scan.l" { indented_code = false; doing_codeblock = true; @@ -3204,9 +3181,9 @@ YY_RULE_SETUP BEGIN(PERCENT_BRACE_ACTION); } YY_BREAK -case 140: +case 139: YY_RULE_SETUP -#line 498 "scan.l" +#line 525 "scan.l" { /* Allow "<" to appear in (?x) patterns. */ if (!sf_skip_ws()) @@ -3214,22 +3191,22 @@ YY_RULE_SETUP return '<'; } YY_BREAK -case 141: +case 140: YY_RULE_SETUP -#line 504 "scan.l" +#line 531 "scan.l" return '^'; YY_BREAK -case 142: +case 141: YY_RULE_SETUP -#line 505 "scan.l" +#line 532 "scan.l" BEGIN(QUOTE); return '"'; YY_BREAK -case 143: +case 142: *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */ (yy_c_buf_p) = yy_cp = yy_bp + 1; YY_DO_BEFORE_ACTION; /* set up yytext again */ YY_RULE_SETUP -#line 506 "scan.l" +#line 533 "scan.l" { BEGIN(NUM); if ( lex_compat || posix_compat ) @@ -3238,18 +3215,19 @@ YY_RULE_SETUP return BEGIN_REPEAT_FLEX; } YY_BREAK -case 144: -/* rule 144 can match eol */ +case 143: +/* rule 143 can match eol */ *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */ +YY_LINENO_REWIND_TO(yy_bp + 1); (yy_c_buf_p) = yy_cp = yy_bp + 1; YY_DO_BEFORE_ACTION; /* set up yytext again */ YY_RULE_SETUP -#line 513 "scan.l" +#line 540 "scan.l" return '$'; YY_BREAK -case 145: +case 144: YY_RULE_SETUP -#line 515 "scan.l" +#line 542 "scan.l" { bracelevel = 1; BEGIN(PERCENT_BRACE_ACTION); @@ -3262,28 +3240,28 @@ YY_RULE_SETUP } } YY_BREAK -case 146: -/* rule 146 can match eol */ +case 145: +/* rule 145 can match eol */ YY_RULE_SETUP -#line 526 "scan.l" +#line 553 "scan.l" { if (sf_skip_ws()){ /* We're in the middle of a (?x: ) pattern. */ /* Push back everything starting at the "|" */ - size_t amt; - amt = strchr (yytext, '|') - yytext; + int amt = (int) (strchr (yytext, '|') - yytext); yyless(amt); } else { + add_action("]""]"); continued_action = true; ++linenum; return '\n'; } } YY_BREAK -case 147: +case 146: YY_RULE_SETUP -#line 541 "scan.l" +#line 568 "scan.l" { if (sf_skip_ws()){ @@ -3298,14 +3276,14 @@ YY_RULE_SETUP } } YY_BREAK -case 148: +case 147: YY_RULE_SETUP -#line 555 "scan.l" +#line 582 "scan.l" /* allow indented rules */ ; YY_BREAK -case 149: +case 148: YY_RULE_SETUP -#line 557 "scan.l" +#line 584 "scan.l" { if (sf_skip_ws()){ /* We're in the middle of a (?x: ) pattern. */ @@ -3328,10 +3306,10 @@ YY_RULE_SETUP } } YY_BREAK -case 150: -/* rule 150 can match eol */ +case 149: +/* rule 149 can match eol */ YY_RULE_SETUP -#line 579 "scan.l" +#line 606 "scan.l" { if (sf_skip_ws()){ /* We're in the middle of a (?x: ) pattern. */ @@ -3352,32 +3330,33 @@ YY_RULE_SETUP } } YY_BREAK +case 150: +#line 627 "scan.l" case 151: -#line 600 "scan.l" -case 152: YY_RULE_SETUP -#line 600 "scan.l" +#line 627 "scan.l" return EOF_OP; YY_BREAK -case 153: +case 152: YY_RULE_SETUP -#line 602 "scan.l" +#line 629 "scan.l" { sectnum = 3; - BEGIN(SECT3); + BEGIN(no_section3_escape ? SECT3_NOESCAPE : SECT3); outn("/* Begin user sect3 */"); yyterminate(); /* to stop the parser */ + } YY_BREAK -case 154: +case 153: YY_RULE_SETUP -#line 609 "scan.l" +#line 637 "scan.l" { int cclval; if(yyleng < MAXLINE) { - strcpy( nmstr, yytext ); + strncpy( nmstr, yytext, sizeof(nmstr) ); } else { @@ -3393,7 +3372,7 @@ YY_RULE_SETUP * The reason it was disabled is so yacc/bison can parse * ccl operations, such as ccl difference and union. */ - && (cclval = ccllookup( (Char *) nmstr )) != 0 ) + && (cclval = ccllookup( nmstr )) != 0 ) { if ( input() != ']' ) synerr( _( "bad character class" ) ); @@ -3407,7 +3386,7 @@ YY_RULE_SETUP /* We fudge a bit. We know that this ccl will * soon be numbered as lastccl + 1 by cclinit. */ - cclinstal( (Char *) nmstr, lastccl + 1 ); + cclinstal( nmstr, lastccl + 1 ); /* Push back everything but the leading bracket * so the ccl can be rescanned. @@ -3419,26 +3398,26 @@ YY_RULE_SETUP } } YY_BREAK -case 155: +case 154: YY_RULE_SETUP -#line 655 "scan.l" +#line 683 "scan.l" return CCL_OP_DIFF; YY_BREAK -case 156: +case 155: YY_RULE_SETUP -#line 656 "scan.l" +#line 684 "scan.l" return CCL_OP_UNION; YY_BREAK /* Check for :space: at the end of the rule so we don't * wrap the expanded regex in '(' ')' -- breaking trailing * context. */ -case 157: -/* rule 157 can match eol */ +case 156: +/* rule 156 can match eol */ YY_RULE_SETUP -#line 663 "scan.l" +#line 691 "scan.l" { - Char *nmdefptr; + char *nmdefptr; int end_is_ws, end_ch; end_ch = yytext[yyleng-1]; @@ -3446,7 +3425,7 @@ YY_RULE_SETUP if(yyleng-1 < MAXLINE) { - strcpy( nmstr, yytext + 1 ); + strncpy( nmstr, yytext + 1, sizeof(nmstr) ); } else { @@ -3462,7 +3441,7 @@ nmstr[yyleng - 2 - end_is_ws] = '\0'; /* chop trailing brace */ else { /* push back name surrounded by ()'s */ - int len = strlen( (char *) nmdefptr ); + size_t len = strlen( nmdefptr ); if (end_is_ws) unput(end_ch); @@ -3470,7 +3449,7 @@ nmstr[yyleng - 2 - end_is_ws] = '\0'; /* chop trailing brace */ (len > 0 && nmdefptr[len - 1] == '$') || (end_is_ws && trlcontxt && !sf_skip_ws())) { /* don't use ()'s after all */ - PUT_BACK_STRING((char *) nmdefptr, 0); + PUT_BACK_STRING(nmdefptr, 0); if ( nmdefptr[0] == '^' ) BEGIN(CARETISBOL); @@ -3479,15 +3458,15 @@ nmstr[yyleng - 2 - end_is_ws] = '\0'; /* chop trailing brace */ else { unput(')'); - PUT_BACK_STRING((char *) nmdefptr, 0); + PUT_BACK_STRING(nmdefptr, 0); unput('('); } } } YY_BREAK -case 158: +case 157: YY_RULE_SETUP -#line 711 "scan.l" +#line 739 "scan.l" { if (sf_skip_ws()) yy_push_state(COMMENT_DISCARD); @@ -3498,9 +3477,9 @@ YY_RULE_SETUP } } YY_BREAK -case 159: +case 158: YY_RULE_SETUP -#line 721 "scan.l" +#line 749 "scan.l" { if (lex_compat || posix_compat){ /* Push back the "?#" and treat it like a normal parens. */ @@ -3512,9 +3491,9 @@ YY_RULE_SETUP yy_push_state(EXTENDED_COMMENT); } YY_BREAK -case 160: +case 159: YY_RULE_SETUP -#line 731 "scan.l" +#line 759 "scan.l" { sf_push(); if (lex_compat || posix_compat) @@ -3525,86 +3504,92 @@ YY_RULE_SETUP return '('; } YY_BREAK -case 161: +case 160: YY_RULE_SETUP -#line 740 "scan.l" +#line 768 "scan.l" sf_push(); return '('; YY_BREAK -case 162: +case 161: YY_RULE_SETUP -#line 741 "scan.l" -sf_pop(); return ')'; +#line 769 "scan.l" +{ + if (_sf_top_ix > 0) { + sf_pop(); + return ')'; + } else + synerr(_("unbalanced parenthesis")); + } YY_BREAK -case 163: +case 162: YY_RULE_SETUP -#line 743 "scan.l" +#line 777 "scan.l" return (unsigned char) yytext[0]; YY_BREAK -case 164: +case 163: YY_RULE_SETUP -#line 744 "scan.l" +#line 778 "scan.l" RETURNCHAR; YY_BREAK -case 165: -/* rule 165 can match eol */ +case 164: +/* rule 164 can match eol */ YY_RULE_SETUP -#line 749 "scan.l" +#line 783 "scan.l" ++linenum; /* Allow blank lines & continuations */ YY_BREAK -case 166: +case 165: YY_RULE_SETUP -#line 750 "scan.l" +#line 784 "scan.l" return (unsigned char) yytext[0]; YY_BREAK -case 167: +case 166: YY_RULE_SETUP -#line 751 "scan.l" +#line 785 "scan.l" BEGIN(SECT2); return '>'; YY_BREAK -case 168: +case 167: *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */ (yy_c_buf_p) = yy_cp = yy_bp + 1; YY_DO_BEFORE_ACTION; /* set up yytext again */ YY_RULE_SETUP -#line 752 "scan.l" +#line 786 "scan.l" BEGIN(CARETISBOL); return '>'; YY_BREAK -case 169: +case 168: YY_RULE_SETUP -#line 753 "scan.l" +#line 787 "scan.l" RETURNNAME; YY_BREAK -case 170: +case 169: YY_RULE_SETUP -#line 754 "scan.l" +#line 788 "scan.l" { format_synerr( _( "bad <start condition>: %s" ), yytext ); } YY_BREAK -case 171: +case 170: YY_RULE_SETUP -#line 760 "scan.l" +#line 794 "scan.l" BEGIN(SECT2); return '^'; YY_BREAK -case 172: +case 171: YY_RULE_SETUP -#line 764 "scan.l" +#line 798 "scan.l" RETURNCHAR; YY_BREAK -case 173: +case 172: YY_RULE_SETUP -#line 765 "scan.l" +#line 799 "scan.l" BEGIN(SECT2); return '"'; YY_BREAK -case 174: -/* rule 174 can match eol */ +case 173: +/* rule 173 can match eol */ YY_RULE_SETUP -#line 767 "scan.l" +#line 801 "scan.l" { synerr( _( "missing quote" ) ); BEGIN(SECT2); @@ -3614,100 +3599,100 @@ YY_RULE_SETUP YY_BREAK -case 175: +case 174: YY_RULE_SETUP -#line 776 "scan.l" +#line 810 "scan.l" BEGIN(SECT2); YY_BREAK -case 176: +case 175: YY_RULE_SETUP -#line 777 "scan.l" +#line 811 "scan.l" BEGIN(GROUP_MINUS_PARAMS); YY_BREAK -case 177: +case 176: YY_RULE_SETUP -#line 778 "scan.l" +#line 812 "scan.l" sf_set_case_ins(1); YY_BREAK -case 178: +case 177: YY_RULE_SETUP -#line 779 "scan.l" +#line 813 "scan.l" sf_set_dot_all(1); YY_BREAK -case 179: +case 178: YY_RULE_SETUP -#line 780 "scan.l" +#line 814 "scan.l" sf_set_skip_ws(1); YY_BREAK -case 180: +case 179: YY_RULE_SETUP -#line 783 "scan.l" +#line 817 "scan.l" BEGIN(SECT2); YY_BREAK -case 181: +case 180: YY_RULE_SETUP -#line 784 "scan.l" +#line 818 "scan.l" sf_set_case_ins(0); YY_BREAK -case 182: +case 181: YY_RULE_SETUP -#line 785 "scan.l" +#line 819 "scan.l" sf_set_dot_all(0); YY_BREAK -case 183: +case 182: YY_RULE_SETUP -#line 786 "scan.l" +#line 820 "scan.l" sf_set_skip_ws(0); YY_BREAK -case 184: +case 183: *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */ (yy_c_buf_p) = yy_cp = yy_bp + 1; YY_DO_BEFORE_ACTION; /* set up yytext again */ YY_RULE_SETUP -#line 790 "scan.l" +#line 824 "scan.l" BEGIN(CCL); return '^'; YY_BREAK -case 185: +case 184: *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */ (yy_c_buf_p) = yy_cp = yy_bp + 1; YY_DO_BEFORE_ACTION; /* set up yytext again */ YY_RULE_SETUP -#line 791 "scan.l" +#line 825 "scan.l" return '^'; YY_BREAK -case 186: +case 185: YY_RULE_SETUP -#line 792 "scan.l" +#line 826 "scan.l" BEGIN(CCL); RETURNCHAR; YY_BREAK -case 187: +case 186: *yy_cp = (yy_hold_char); /* undo effects of setting up yytext */ (yy_c_buf_p) = yy_cp = yy_bp + 1; YY_DO_BEFORE_ACTION; /* set up yytext again */ YY_RULE_SETUP -#line 796 "scan.l" +#line 830 "scan.l" return '-'; YY_BREAK -case 188: +case 187: YY_RULE_SETUP -#line 797 "scan.l" +#line 831 "scan.l" RETURNCHAR; YY_BREAK -case 189: +case 188: YY_RULE_SETUP -#line 798 "scan.l" +#line 832 "scan.l" BEGIN(SECT2); return ']'; YY_BREAK -case 190: -/* rule 190 can match eol */ +case 189: +/* rule 189 can match eol */ YY_RULE_SETUP -#line 799 "scan.l" +#line 833 "scan.l" { synerr( _( "bad character class" ) ); BEGIN(SECT2); @@ -3716,129 +3701,129 @@ YY_RULE_SETUP YY_BREAK -case 191: +case 190: YY_RULE_SETUP -#line 807 "scan.l" +#line 841 "scan.l" BEGIN(CCL); return CCE_ALNUM; YY_BREAK -case 192: +case 191: YY_RULE_SETUP -#line 808 "scan.l" +#line 842 "scan.l" BEGIN(CCL); return CCE_ALPHA; YY_BREAK -case 193: +case 192: YY_RULE_SETUP -#line 809 "scan.l" +#line 843 "scan.l" BEGIN(CCL); return CCE_BLANK; YY_BREAK -case 194: +case 193: YY_RULE_SETUP -#line 810 "scan.l" +#line 844 "scan.l" BEGIN(CCL); return CCE_CNTRL; YY_BREAK -case 195: +case 194: YY_RULE_SETUP -#line 811 "scan.l" +#line 845 "scan.l" BEGIN(CCL); return CCE_DIGIT; YY_BREAK -case 196: +case 195: YY_RULE_SETUP -#line 812 "scan.l" +#line 846 "scan.l" BEGIN(CCL); return CCE_GRAPH; YY_BREAK -case 197: +case 196: YY_RULE_SETUP -#line 813 "scan.l" +#line 847 "scan.l" BEGIN(CCL); return CCE_LOWER; YY_BREAK -case 198: +case 197: YY_RULE_SETUP -#line 814 "scan.l" +#line 848 "scan.l" BEGIN(CCL); return CCE_PRINT; YY_BREAK -case 199: +case 198: YY_RULE_SETUP -#line 815 "scan.l" +#line 849 "scan.l" BEGIN(CCL); return CCE_PUNCT; YY_BREAK -case 200: +case 199: YY_RULE_SETUP -#line 816 "scan.l" +#line 850 "scan.l" BEGIN(CCL); return CCE_SPACE; YY_BREAK -case 201: +case 200: YY_RULE_SETUP -#line 817 "scan.l" +#line 851 "scan.l" BEGIN(CCL); return CCE_UPPER; YY_BREAK -case 202: +case 201: YY_RULE_SETUP -#line 818 "scan.l" +#line 852 "scan.l" BEGIN(CCL); return CCE_XDIGIT; YY_BREAK -case 203: +case 202: YY_RULE_SETUP -#line 820 "scan.l" +#line 854 "scan.l" BEGIN(CCL); return CCE_NEG_ALNUM; YY_BREAK -case 204: +case 203: YY_RULE_SETUP -#line 821 "scan.l" +#line 855 "scan.l" BEGIN(CCL); return CCE_NEG_ALPHA; YY_BREAK -case 205: +case 204: YY_RULE_SETUP -#line 822 "scan.l" +#line 856 "scan.l" BEGIN(CCL); return CCE_NEG_BLANK; YY_BREAK -case 206: +case 205: YY_RULE_SETUP -#line 823 "scan.l" +#line 857 "scan.l" BEGIN(CCL); return CCE_NEG_CNTRL; YY_BREAK -case 207: +case 206: YY_RULE_SETUP -#line 824 "scan.l" +#line 858 "scan.l" BEGIN(CCL); return CCE_NEG_DIGIT; YY_BREAK -case 208: +case 207: YY_RULE_SETUP -#line 825 "scan.l" +#line 859 "scan.l" BEGIN(CCL); return CCE_NEG_GRAPH; YY_BREAK -case 209: +case 208: YY_RULE_SETUP -#line 826 "scan.l" +#line 860 "scan.l" BEGIN(CCL); return CCE_NEG_LOWER; YY_BREAK -case 210: +case 209: YY_RULE_SETUP -#line 827 "scan.l" +#line 861 "scan.l" BEGIN(CCL); return CCE_NEG_PRINT; YY_BREAK -case 211: +case 210: YY_RULE_SETUP -#line 828 "scan.l" +#line 862 "scan.l" BEGIN(CCL); return CCE_NEG_PUNCT; YY_BREAK -case 212: +case 211: YY_RULE_SETUP -#line 829 "scan.l" +#line 863 "scan.l" BEGIN(CCL); return CCE_NEG_SPACE; YY_BREAK -case 213: +case 212: YY_RULE_SETUP -#line 830 "scan.l" +#line 864 "scan.l" BEGIN(CCL); return CCE_NEG_UPPER; YY_BREAK -case 214: +case 213: YY_RULE_SETUP -#line 831 "scan.l" +#line 865 "scan.l" BEGIN(CCL); return CCE_NEG_XDIGIT; YY_BREAK -case 215: +case 214: YY_RULE_SETUP -#line 832 "scan.l" +#line 866 "scan.l" { format_synerr( _( "bad character class expression: %s" ), @@ -3848,22 +3833,22 @@ YY_RULE_SETUP YY_BREAK -case 216: +case 215: YY_RULE_SETUP -#line 841 "scan.l" +#line 875 "scan.l" { yylval = myctoi( yytext ); return NUMBER; } YY_BREAK -case 217: +case 216: YY_RULE_SETUP -#line 846 "scan.l" +#line 880 "scan.l" return ','; YY_BREAK -case 218: +case 217: YY_RULE_SETUP -#line 847 "scan.l" +#line 881 "scan.l" { BEGIN(SECT2); if ( lex_compat || posix_compat ) @@ -3872,19 +3857,19 @@ YY_RULE_SETUP return END_REPEAT_FLEX; } YY_BREAK -case 219: +case 218: YY_RULE_SETUP -#line 855 "scan.l" +#line 889 "scan.l" { synerr( _( "bad character inside {}'s" ) ); BEGIN(SECT2); return '}'; } YY_BREAK -case 220: -/* rule 220 can match eol */ +case 219: +/* rule 219 can match eol */ YY_RULE_SETUP -#line 861 "scan.l" +#line 895 "scan.l" { synerr( _( "missing }" ) ); BEGIN(SECT2); @@ -3894,171 +3879,171 @@ YY_RULE_SETUP YY_BREAK -case 221: +case 220: YY_RULE_SETUP -#line 871 "scan.l" +#line 905 "scan.l" bracelevel = 0; YY_BREAK -case 222: +case 221: YY_RULE_SETUP -#line 873 "scan.l" -ACTION_ECHO; yy_push_state( COMMENT ); +#line 907 "scan.l" +ACTION_ECHO; yy_push_state( CODE_COMMENT ); YY_BREAK -case 223: +case 222: YY_RULE_SETUP -#line 876 "scan.l" +#line 910 "scan.l" { - ACTION_ECHO; - CHECK_REJECT(yytext); - } + ACTION_ECHO; + CHECK_REJECT(yytext); + } YY_BREAK -case 224: +case 223: YY_RULE_SETUP -#line 880 "scan.l" +#line 914 "scan.l" { - ACTION_ECHO; - CHECK_YYMORE(yytext); - } + ACTION_ECHO; + CHECK_YYMORE(yytext); + } YY_BREAK +case 224: +YY_RULE_SETUP +#line 920 "scan.l" +ACTION_ECHO; + YY_BREAK case 225: +/* rule 225 can match eol */ YY_RULE_SETUP -#line 886 "scan.l" -ACTION_ECHO_QSTART; +#line 921 "scan.l" +{ + ++linenum; + ACTION_ECHO; + if (bracelevel <= 0 || (doing_codeblock && indented_code)) { + if ( doing_rule_action ) + add_action( "\tYY_BREAK]""]\n" ); + + doing_rule_action = doing_codeblock = false; + BEGIN(SECT2); + } + } YY_BREAK + +/* Reject and YYmore() are checked for above, in PERCENT_BRACE_ACTION */ + case 226: YY_RULE_SETUP -#line 887 "scan.l" -ACTION_ECHO_QEND; +#line 937 "scan.l" +ACTION_ECHO; ++bracelevel; YY_BREAK case 227: YY_RULE_SETUP -#line 888 "scan.l" -ACTION_ECHO; +#line 938 "scan.l" +ACTION_ECHO; --bracelevel; YY_BREAK case 228: -/* rule 228 can match eol */ YY_RULE_SETUP -#line 889 "scan.l" -{ - ++linenum; - ACTION_ECHO; - if ( bracelevel == 0 || - (doing_codeblock && indented_code) ) - { - if ( doing_rule_action ) - add_action( "\tYY_BREAK\n" ); - - doing_rule_action = doing_codeblock = false; - BEGIN(SECT2); - } - } +#line 939 "scan.l" +ACTION_ECHO; YY_BREAK - -/* Reject and YYmore() are checked for above, in PERCENT_BRACE_ACTION */ - case 229: YY_RULE_SETUP -#line 907 "scan.l" -ACTION_ECHO; ++bracelevel; +#line 940 "scan.l" +ACTION_ECHO; YY_BREAK case 230: YY_RULE_SETUP -#line 908 "scan.l" -ACTION_ECHO; --bracelevel; +#line 941 "scan.l" +ACTION_ECHO; /* character constant */ YY_BREAK case 231: YY_RULE_SETUP -#line 909 "scan.l" -ACTION_ECHO_QSTART; +#line 942 "scan.l" +ACTION_ECHO; BEGIN(CHARACTER_CONSTANT); YY_BREAK case 232: YY_RULE_SETUP -#line 910 "scan.l" -ACTION_ECHO_QEND; +#line 943 "scan.l" +ACTION_ECHO; BEGIN(ACTION_STRING); YY_BREAK case 233: +/* rule 233 can match eol */ YY_RULE_SETUP -#line 911 "scan.l" -ACTION_ECHO; +#line 944 "scan.l" +{ + ++linenum; + ACTION_ECHO; + if (bracelevel <= 0) { + if ( doing_rule_action ) + add_action( "\tYY_BREAK]""]\n" ); + + doing_rule_action = false; + BEGIN(SECT2); + } + } YY_BREAK case 234: YY_RULE_SETUP -#line 912 "scan.l" +#line 955 "scan.l" ACTION_ECHO; YY_BREAK + + case 235: YY_RULE_SETUP -#line 913 "scan.l" +#line 959 "scan.l" ACTION_ECHO; YY_BREAK case 236: YY_RULE_SETUP -#line 914 "scan.l" -ACTION_ECHO; /* character constant */ +#line 960 "scan.l" +ACTION_ECHO; BEGIN(ACTION); YY_BREAK + + case 237: YY_RULE_SETUP -#line 915 "scan.l" -ACTION_ECHO; BEGIN(ACTION_STRING); +#line 963 "scan.l" +ACTION_ECHO; YY_BREAK case 238: -/* rule 238 can match eol */ YY_RULE_SETUP -#line 916 "scan.l" -{ - ++linenum; - ACTION_ECHO; - if ( bracelevel == 0 ) - { - if ( doing_rule_action ) - add_action( "\tYY_BREAK\n" ); - - doing_rule_action = false; - BEGIN(SECT2); - } - } +#line 964 "scan.l" +ACTION_ECHO; BEGIN(ACTION); YY_BREAK + + case 239: +/* rule 239 can match eol */ YY_RULE_SETUP -#line 928 "scan.l" +#line 967 "scan.l" ACTION_ECHO; YY_BREAK - - case 240: +/* rule 240 can match eol */ YY_RULE_SETUP -#line 932 "scan.l" +#line 968 "scan.l" ACTION_ECHO; YY_BREAK case 241: +/* rule 241 can match eol */ YY_RULE_SETUP -#line 933 "scan.l" -ACTION_ECHO; +#line 969 "scan.l" +++linenum; ACTION_ECHO; if (bracelevel <= 0) { BEGIN(SECT2); } else { BEGIN(ACTION); } YY_BREAK case 242: -/* rule 242 can match eol */ YY_RULE_SETUP -#line 934 "scan.l" -++linenum; ACTION_ECHO; BEGIN(ACTION); - YY_BREAK -case 243: -YY_RULE_SETUP -#line 935 "scan.l" -ACTION_ECHO; BEGIN(ACTION); - YY_BREAK -case 244: -YY_RULE_SETUP -#line 936 "scan.l" +#line 970 "scan.l" ACTION_ECHO; YY_BREAK case YY_STATE_EOF(COMMENT): +case YY_STATE_EOF(CODE_COMMENT): case YY_STATE_EOF(COMMENT_DISCARD): case YY_STATE_EOF(ACTION): case YY_STATE_EOF(ACTION_STRING): -#line 939 "scan.l" +case YY_STATE_EOF(CHARACTER_CONSTANT): +#line 973 "scan.l" { synerr( _( "EOF encountered inside an action" ) ); yyterminate(); @@ -4067,17 +4052,17 @@ case YY_STATE_EOF(ACTION_STRING): case YY_STATE_EOF(EXTENDED_COMMENT): case YY_STATE_EOF(GROUP_WITH_PARAMS): case YY_STATE_EOF(GROUP_MINUS_PARAMS): -#line 944 "scan.l" +#line 978 "scan.l" { synerr( _( "EOF encountered inside pattern" ) ); yyterminate(); } YY_BREAK -case 245: +case 243: YY_RULE_SETUP -#line 949 "scan.l" +#line 983 "scan.l" { - yylval = myesc( (Char *) yytext ); + yylval = myesc( (unsigned char *) yytext ); if ( YY_START == FIRSTCCL ) BEGIN(CCL); @@ -4086,60 +4071,92 @@ YY_RULE_SETUP } YY_BREAK -case 246: +case 244: YY_RULE_SETUP -#line 960 "scan.l" -fwrite (escaped_qstart, 1, strlen(escaped_qstart), yyout); +#line 993 "scan.l" +fputs(escaped_qstart, yyout); YY_BREAK -case 247: +case 245: YY_RULE_SETUP -#line 961 "scan.l" -fwrite (escaped_qend, 1, strlen(escaped_qend), yyout); +#line 994 "scan.l" +fputs(escaped_qend, yyout); YY_BREAK -case 248: -/* rule 248 can match eol */ +case 246: +/* rule 246 can match eol */ YY_RULE_SETUP -#line 962 "scan.l" +#line 995 "scan.l" ECHO; YY_BREAK -case 249: -/* rule 249 can match eol */ +case 247: YY_RULE_SETUP -#line 963 "scan.l" +#line 996 "scan.l" ECHO; YY_BREAK case YY_STATE_EOF(SECT3): -#line 964 "scan.l" -sectnum = 0; yyterminate(); +#line 997 "scan.l" +{ + sectnum = 0; + yyterminate(); + } YY_BREAK + +case 248: +YY_RULE_SETUP +#line 1003 "scan.l" +fprintf(yyout, "[""[%s]""]", escaped_qstart); + YY_BREAK +case 249: +YY_RULE_SETUP +#line 1004 "scan.l" +fprintf(yyout, "[""[%s]""]", escaped_qend); + YY_BREAK case 250: /* rule 250 can match eol */ YY_RULE_SETUP -#line 967 "scan.l" -format_synerr( _( "bad character: %s" ), yytext ); +#line 1005 "scan.l" +ECHO; YY_BREAK case 251: YY_RULE_SETUP -#line 969 "scan.l" +#line 1006 "scan.l" +ECHO; + YY_BREAK +case YY_STATE_EOF(SECT3_NOESCAPE): +#line 1007 "scan.l" +{ + sectnum = 0; + yyterminate(); + } + YY_BREAK + +case 252: +/* rule 252 can match eol */ +YY_RULE_SETUP +#line 1012 "scan.l" +format_synerr( _( "bad character: %s" ), yytext ); + YY_BREAK +case 253: +YY_RULE_SETUP +#line 1014 "scan.l" YY_FATAL_ERROR( "flex scanner jammed" ); YY_BREAK -#line 4127 "<stdout>" - case YY_STATE_EOF(INITIAL): - case YY_STATE_EOF(SECT2): - case YY_STATE_EOF(CODEBLOCK): - case YY_STATE_EOF(PICKUPDEF): - case YY_STATE_EOF(SC): - case YY_STATE_EOF(CARETISBOL): - case YY_STATE_EOF(NUM): - case YY_STATE_EOF(QUOTE): - case YY_STATE_EOF(FIRSTCCL): - case YY_STATE_EOF(CCL): - case YY_STATE_EOF(RECOVER): - case YY_STATE_EOF(PERCENT_BRACE_ACTION): - case YY_STATE_EOF(OPTION): - case YY_STATE_EOF(LINEDIR): - yyterminate(); +#line 4143 "<stdout>" +case YY_STATE_EOF(INITIAL): +case YY_STATE_EOF(SECT2): +case YY_STATE_EOF(CODEBLOCK): +case YY_STATE_EOF(PICKUPDEF): +case YY_STATE_EOF(SC): +case YY_STATE_EOF(CARETISBOL): +case YY_STATE_EOF(NUM): +case YY_STATE_EOF(QUOTE): +case YY_STATE_EOF(FIRSTCCL): +case YY_STATE_EOF(CCL): +case YY_STATE_EOF(RECOVER): +case YY_STATE_EOF(PERCENT_BRACE_ACTION): +case YY_STATE_EOF(OPTION): +case YY_STATE_EOF(LINEDIR): + yyterminate(); case YY_END_OF_BUFFER: { @@ -4215,7 +4232,7 @@ YY_FATAL_ERROR( "flex scanner jammed" ); { (yy_did_buffer_switch_on_eof) = 0; - if ( yywrap( ) ) + if ( yywrap( ) ) { /* Note: because we've taken care in * yy_get_next_buffer() to have set up @@ -4268,6 +4285,7 @@ YY_FATAL_ERROR( "flex scanner jammed" ); "fatal flex scanner internal error--no action found" ); } /* end of action switch */ } /* end of scanning one token */ + } /* end of user's declarations */ } /* end of yylex */ /* yy_get_next_buffer - try to read in a new buffer @@ -4310,7 +4328,7 @@ static int yy_get_next_buffer (void) /* Try to read more data. */ /* First move last chars to start of buffer. */ - number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr)) - 1; + number_to_move = (int) ((yy_c_buf_p) - (yytext_ptr) - 1); for ( i = 0; i < number_to_move; ++i ) *(dest++) = *(source++); @@ -4323,14 +4341,44 @@ static int yy_get_next_buffer (void) else { - yy_size_t num_to_read = + int num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1; while ( num_to_read <= 0 ) { /* Not enough room in the buffer - grow it. */ - YY_FATAL_ERROR( -"input buffer overflow, can't enlarge buffer because scanner uses REJECT" ); + /* just a shorter name for the current buffer */ + YY_BUFFER_STATE b = YY_CURRENT_BUFFER_LVALUE; + + int yy_c_buf_p_offset = + (int) ((yy_c_buf_p) - b->yy_ch_buf); + + if ( b->yy_is_our_buffer ) + { + int new_size = b->yy_buf_size * 2; + + if ( new_size <= 0 ) + b->yy_buf_size += b->yy_buf_size / 8; + else + b->yy_buf_size *= 2; + + b->yy_ch_buf = (char *) + /* Include room in for 2 EOB chars. */ + yyrealloc( (void *) b->yy_ch_buf, + (yy_size_t) (b->yy_buf_size + 2) ); + } + else + /* Can't grow it, we don't own it. */ + b->yy_ch_buf = NULL; + + if ( ! b->yy_ch_buf ) + YY_FATAL_ERROR( + "fatal error - scanner input buffer overflow" ); + + (yy_c_buf_p) = &b->yy_ch_buf[yy_c_buf_p_offset]; + + num_to_read = YY_CURRENT_BUFFER_LVALUE->yy_buf_size - + number_to_move - 1; } @@ -4349,7 +4397,7 @@ static int yy_get_next_buffer (void) if ( number_to_move == YY_MORE_ADJ ) { ret_val = EOB_ACT_END_OF_FILE; - yyrestart(yyin ); + yyrestart( yyin ); } else @@ -4363,12 +4411,15 @@ static int yy_get_next_buffer (void) else ret_val = EOB_ACT_CONTINUE_SCAN; - if ((yy_size_t) ((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) { + if (((yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) { /* Extend the array by 50%, plus the number we really need. */ - yy_size_t new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1); - YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc((void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf,new_size ); + int new_size = (yy_n_chars) + number_to_move + ((yy_n_chars) >> 1); + YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc( + (void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf, (yy_size_t) new_size ); if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf ) YY_FATAL_ERROR( "out of dynamic memory in yy_get_next_buffer()" ); + /* "- 2" to take care of EOB's */ + YY_CURRENT_BUFFER_LVALUE->yy_buf_size = (int) (new_size - 2); } (yy_n_chars) += number_to_move; @@ -4390,20 +4441,21 @@ static int yy_get_next_buffer (void) yy_current_state = (yy_start); yy_current_state += YY_AT_BOL(); - (yy_state_ptr) = (yy_state_buf); - *(yy_state_ptr)++ = yy_current_state; - for ( yy_cp = (yytext_ptr) + YY_MORE_ADJ; yy_cp < (yy_c_buf_p); ++yy_cp ) { YY_CHAR yy_c = (*yy_cp ? yy_ec[YY_SC_TO_UI(*yy_cp)] : 1); + if ( yy_accept[yy_current_state] ) + { + (yy_last_accepting_state) = yy_current_state; + (yy_last_accepting_cpos) = yy_cp; + } while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 1107 ) - yy_c = yy_meta[(unsigned int) yy_c]; + if ( yy_current_state >= 1114 ) + yy_c = yy_meta[yy_c]; } - yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; - *(yy_state_ptr)++ = yy_current_state; + yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c]; } return yy_current_state; @@ -4417,23 +4469,28 @@ static int yy_get_next_buffer (void) static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state ) { int yy_is_jam; - + char *yy_cp = (yy_c_buf_p); + YY_CHAR yy_c = 1; + if ( yy_accept[yy_current_state] ) + { + (yy_last_accepting_state) = yy_current_state; + (yy_last_accepting_cpos) = yy_cp; + } while ( yy_chk[yy_base[yy_current_state] + yy_c] != yy_current_state ) { yy_current_state = (int) yy_def[yy_current_state]; - if ( yy_current_state >= 1107 ) - yy_c = yy_meta[(unsigned int) yy_c]; + if ( yy_current_state >= 1114 ) + yy_c = yy_meta[yy_c]; } - yy_current_state = yy_nxt[yy_base[yy_current_state] + (unsigned int) yy_c]; - yy_is_jam = (yy_current_state == 1106); - if ( ! yy_is_jam ) - *(yy_state_ptr)++ = yy_current_state; + yy_current_state = yy_nxt[yy_base[yy_current_state] + yy_c]; + yy_is_jam = (yy_current_state == 1113); return yy_is_jam ? 0 : yy_current_state; } #ifndef YY_NO_UNPUT + static void yyunput (int c, char * yy_bp ) { char *yy_cp; @@ -4446,7 +4503,7 @@ static int yy_get_next_buffer (void) if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) { /* need to shift things up to make room */ /* +2 for EOB chars. */ - yy_size_t number_to_move = (yy_n_chars) + 2; + int number_to_move = (yy_n_chars) + 2; char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[ YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2]; char *source = @@ -4458,7 +4515,7 @@ static int yy_get_next_buffer (void) yy_cp += (int) (dest - source); yy_bp += (int) (dest - source); YY_CURRENT_BUFFER_LVALUE->yy_n_chars = - (yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_buf_size; + (yy_n_chars) = (int) YY_CURRENT_BUFFER_LVALUE->yy_buf_size; if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 ) YY_FATAL_ERROR( "flex scanner push-back overflow" ); @@ -4470,7 +4527,8 @@ static int yy_get_next_buffer (void) (yy_hold_char) = *yy_cp; (yy_c_buf_p) = yy_cp; } -#endif /* ifndef YY_NO_UNPUT */ + +#endif #ifndef YY_NO_INPUT #ifdef __cplusplus @@ -4496,7 +4554,7 @@ static int yy_get_next_buffer (void) else { /* need more input */ - yy_size_t offset = (yy_c_buf_p) - (yytext_ptr); + int offset = (int) ((yy_c_buf_p) - (yytext_ptr)); ++(yy_c_buf_p); switch ( yy_get_next_buffer( ) ) @@ -4513,14 +4571,14 @@ static int yy_get_next_buffer (void) */ /* Reset buffer status. */ - yyrestart(yyin ); + yyrestart( yyin ); /*FALLTHROUGH*/ case EOB_ACT_END_OF_FILE: { - if ( yywrap( ) ) - return EOF; + if ( yywrap( ) ) + return 0; if ( ! (yy_did_buffer_switch_on_eof) ) YY_NEW_FILE; @@ -4559,11 +4617,11 @@ static int yy_get_next_buffer (void) if ( ! YY_CURRENT_BUFFER ){ yyensure_buffer_stack (); YY_CURRENT_BUFFER_LVALUE = - yy_create_buffer(yyin,YY_BUF_SIZE ); + yy_create_buffer( yyin, YY_BUF_SIZE ); } - yy_init_buffer(YY_CURRENT_BUFFER,input_file ); - yy_load_buffer_state( ); + yy_init_buffer( YY_CURRENT_BUFFER, input_file ); + yy_load_buffer_state( ); } /** Switch to a different input buffer. @@ -4591,7 +4649,7 @@ static int yy_get_next_buffer (void) } YY_CURRENT_BUFFER_LVALUE = new_buffer; - yy_load_buffer_state( ); + yy_load_buffer_state( ); /* We don't actually know whether we did this switch during * EOF (yywrap()) processing, but the only time this flag @@ -4619,7 +4677,7 @@ static void yy_load_buffer_state (void) { YY_BUFFER_STATE b; - b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state ) ); + b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state ) ); if ( ! b ) YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); @@ -4628,13 +4686,13 @@ static void yy_load_buffer_state (void) /* yy_ch_buf has to be 2 characters longer than the size given because * we need to put in 2 end-of-buffer characters. */ - b->yy_ch_buf = (char *) yyalloc(b->yy_buf_size + 2 ); + b->yy_ch_buf = (char *) yyalloc( (yy_size_t) (b->yy_buf_size + 2) ); if ( ! b->yy_ch_buf ) YY_FATAL_ERROR( "out of dynamic memory in yy_create_buffer()" ); b->yy_is_our_buffer = 1; - yy_init_buffer(b,file ); + yy_init_buffer( b, file ); return b; } @@ -4653,9 +4711,9 @@ static void yy_load_buffer_state (void) YY_CURRENT_BUFFER_LVALUE = (YY_BUFFER_STATE) 0; if ( b->yy_is_our_buffer ) - yyfree((void *) b->yy_ch_buf ); + yyfree( (void *) b->yy_ch_buf ); - yyfree((void *) b ); + yyfree( (void *) b ); } /* Initializes or reinitializes a buffer. @@ -4667,7 +4725,7 @@ static void yy_load_buffer_state (void) { int oerrno = errno; - yy_flush_buffer(b ); + yy_flush_buffer( b ); b->yy_input_file = file; b->yy_fill_buffer = 1; @@ -4710,7 +4768,7 @@ static void yy_load_buffer_state (void) b->yy_buffer_status = YY_BUFFER_NEW; if ( b == YY_CURRENT_BUFFER ) - yy_load_buffer_state( ); + yy_load_buffer_state( ); } /** Pushes the new state onto the stack. The new state becomes @@ -4741,7 +4799,7 @@ void yypush_buffer_state (YY_BUFFER_STATE new_buffer ) YY_CURRENT_BUFFER_LVALUE = new_buffer; /* copied from yy_switch_to_buffer. */ - yy_load_buffer_state( ); + yy_load_buffer_state( ); (yy_did_buffer_switch_on_eof) = 1; } @@ -4760,7 +4818,7 @@ void yypop_buffer_state (void) --(yy_buffer_stack_top); if (YY_CURRENT_BUFFER) { - yy_load_buffer_state( ); + yy_load_buffer_state( ); (yy_did_buffer_switch_on_eof) = 1; } } @@ -4778,15 +4836,15 @@ static void yyensure_buffer_stack (void) * scanner will even need a stack. We use 2 instead of 1 to avoid an * immediate realloc on the next call. */ - num_to_alloc = 1; + num_to_alloc = 1; /* After all that talk, this was set to 1 anyways... */ (yy_buffer_stack) = (struct yy_buffer_state**)yyalloc (num_to_alloc * sizeof(struct yy_buffer_state*) ); if ( ! (yy_buffer_stack) ) YY_FATAL_ERROR( "out of dynamic memory in yyensure_buffer_stack()" ); - + memset((yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*)); - + (yy_buffer_stack_max) = num_to_alloc; (yy_buffer_stack_top) = 0; return; @@ -4795,7 +4853,7 @@ static void yyensure_buffer_stack (void) if ((yy_buffer_stack_top) >= ((yy_buffer_stack_max)) - 1){ /* Increase the buffer to prepare for a possible push. */ - int grow_size = 8 /* arbitrary grow size */; + yy_size_t grow_size = 8 /* arbitrary grow size */; num_to_alloc = (yy_buffer_stack_max) + grow_size; (yy_buffer_stack) = (struct yy_buffer_state**)yyrealloc @@ -4815,7 +4873,7 @@ static void yyensure_buffer_stack (void) * @param base the character buffer * @param size the size in bytes of the character buffer * - * @return the newly allocated buffer state object. + * @return the newly allocated buffer state object. */ YY_BUFFER_STATE yy_scan_buffer (char * base, yy_size_t size ) { @@ -4825,23 +4883,23 @@ YY_BUFFER_STATE yy_scan_buffer (char * base, yy_size_t size ) base[size-2] != YY_END_OF_BUFFER_CHAR || base[size-1] != YY_END_OF_BUFFER_CHAR ) /* They forgot to leave room for the EOB's. */ - return 0; + return NULL; - b = (YY_BUFFER_STATE) yyalloc(sizeof( struct yy_buffer_state ) ); + b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state ) ); if ( ! b ) YY_FATAL_ERROR( "out of dynamic memory in yy_scan_buffer()" ); - b->yy_buf_size = size - 2; /* "- 2" to take care of EOB's */ + b->yy_buf_size = (int) (size - 2); /* "- 2" to take care of EOB's */ b->yy_buf_pos = b->yy_ch_buf = base; b->yy_is_our_buffer = 0; - b->yy_input_file = 0; + b->yy_input_file = NULL; b->yy_n_chars = b->yy_buf_size; b->yy_is_interactive = 0; b->yy_at_bol = 1; b->yy_fill_buffer = 0; b->yy_buffer_status = YY_BUFFER_NEW; - yy_switch_to_buffer(b ); + yy_switch_to_buffer( b ); return b; } @@ -4854,10 +4912,10 @@ YY_BUFFER_STATE yy_scan_buffer (char * base, yy_size_t size ) * @note If you want to scan bytes that may contain NUL values, then use * yy_scan_bytes() instead. */ -YY_BUFFER_STATE yy_scan_string (yyconst char * yystr ) +YY_BUFFER_STATE yy_scan_string (const char * yystr ) { - return yy_scan_bytes(yystr,strlen(yystr) ); + return yy_scan_bytes( yystr, (int) strlen(yystr) ); } /** Setup the input buffer state to scan the given bytes. The next call to yylex() will @@ -4867,16 +4925,16 @@ YY_BUFFER_STATE yy_scan_string (yyconst char * yystr ) * * @return the newly allocated buffer state object. */ -YY_BUFFER_STATE yy_scan_bytes (yyconst char * yybytes, yy_size_t _yybytes_len ) +YY_BUFFER_STATE yy_scan_bytes (const char * yybytes, int _yybytes_len ) { YY_BUFFER_STATE b; char *buf; yy_size_t n; - yy_size_t i; + int i; /* Get memory for full buffer, including space for trailing EOB's. */ - n = _yybytes_len + 2; - buf = (char *) yyalloc(n ); + n = (yy_size_t) (_yybytes_len + 2); + buf = (char *) yyalloc( n ); if ( ! buf ) YY_FATAL_ERROR( "out of dynamic memory in yy_scan_bytes()" ); @@ -4885,7 +4943,7 @@ YY_BUFFER_STATE yy_scan_bytes (yyconst char * yybytes, yy_size_t _yybytes_len buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR; - b = yy_scan_buffer(buf,n ); + b = yy_scan_buffer( buf, n ); if ( ! b ) YY_FATAL_ERROR( "bad buffer in yy_scan_bytes()" ); @@ -4897,20 +4955,21 @@ YY_BUFFER_STATE yy_scan_bytes (yyconst char * yybytes, yy_size_t _yybytes_len return b; } - static void yy_push_state (int new_state ) + static void yy_push_state (int _new_state ) { if ( (yy_start_stack_ptr) >= (yy_start_stack_depth) ) { yy_size_t new_size; (yy_start_stack_depth) += YY_START_STACK_INCR; - new_size = (yy_start_stack_depth) * sizeof( int ); + new_size = (yy_size_t) (yy_start_stack_depth) * sizeof( int ); if ( ! (yy_start_stack) ) - (yy_start_stack) = (int *) yyalloc(new_size ); + (yy_start_stack) = (int *) yyalloc( new_size ); else - (yy_start_stack) = (int *) yyrealloc((void *) (yy_start_stack),new_size ); + (yy_start_stack) = (int *) yyrealloc( + (void *) (yy_start_stack), new_size ); if ( ! (yy_start_stack) ) YY_FATAL_ERROR( "out of memory expanding start-condition stack" ); @@ -4918,7 +4977,7 @@ YY_BUFFER_STATE yy_scan_bytes (yyconst char * yybytes, yy_size_t _yybytes_len (yy_start_stack)[(yy_start_stack_ptr)++] = YY_START; - BEGIN(new_state); + BEGIN(_new_state); } static void yy_pop_state (void) @@ -4933,9 +4992,9 @@ YY_BUFFER_STATE yy_scan_bytes (yyconst char * yybytes, yy_size_t _yybytes_len #define YY_EXIT_FAILURE 2 #endif -static void yy_fatal_error (yyconst char* msg ) +static void yynoreturn yy_fatal_error (const char* msg ) { - (void) fprintf( stderr, "%s\n", msg ); + fprintf( stderr, "%s\n", msg ); exit( YY_EXIT_FAILURE ); } @@ -4963,7 +5022,7 @@ static void yy_fatal_error (yyconst char* msg ) */ int yyget_lineno (void) { - + return yylineno; } @@ -4986,7 +5045,7 @@ FILE *yyget_out (void) /** Get the length of the current token. * */ -yy_size_t yyget_leng (void) +int yyget_leng (void) { return yyleng; } @@ -5001,29 +5060,29 @@ char *yyget_text (void) } /** Set the current line number. - * @param line_number + * @param _line_number line number * */ -void yyset_lineno (int line_number ) +void yyset_lineno (int _line_number ) { - yylineno = line_number; + yylineno = _line_number; } /** Set the input stream. This does not discard the current * input buffer. - * @param in_str A readable stream. + * @param _in_str A readable stream. * * @see yy_switch_to_buffer */ -void yyset_in (FILE * in_str ) +void yyset_in (FILE * _in_str ) { - yyin = in_str ; + yyin = _in_str ; } -void yyset_out (FILE * out_str ) +void yyset_out (FILE * _out_str ) { - yyout = out_str ; + yyout = _out_str ; } int yyget_debug (void) @@ -5031,9 +5090,9 @@ int yyget_debug (void) return yy_flex_debug; } -void yyset_debug (int bdebug ) +void yyset_debug (int _bdebug ) { - yy_flex_debug = bdebug ; + yy_flex_debug = _bdebug ; } static int yy_init_globals (void) @@ -5042,10 +5101,10 @@ static int yy_init_globals (void) * This function is called from yylex_destroy(), so don't allocate here. */ - (yy_buffer_stack) = 0; + (yy_buffer_stack) = NULL; (yy_buffer_stack_top) = 0; (yy_buffer_stack_max) = 0; - (yy_c_buf_p) = (char *) 0; + (yy_c_buf_p) = NULL; (yy_init) = 0; (yy_start) = 0; @@ -5053,18 +5112,13 @@ static int yy_init_globals (void) (yy_start_stack_depth) = 0; (yy_start_stack) = NULL; - (yy_state_buf) = 0; - (yy_state_ptr) = 0; - (yy_full_match) = 0; - (yy_lp) = 0; - /* Defined in main.c */ #ifdef YY_STDINIT yyin = stdin; yyout = stdout; #else - yyin = (FILE *) 0; - yyout = (FILE *) 0; + yyin = NULL; + yyout = NULL; #endif /* For future reference: Set errno on error, since we are called by @@ -5079,7 +5133,7 @@ int yylex_destroy (void) /* Pop the buffer stack, destroying each element. */ while(YY_CURRENT_BUFFER){ - yy_delete_buffer(YY_CURRENT_BUFFER ); + yy_delete_buffer( YY_CURRENT_BUFFER ); YY_CURRENT_BUFFER_LVALUE = NULL; yypop_buffer_state(); } @@ -5089,12 +5143,9 @@ int yylex_destroy (void) (yy_buffer_stack) = NULL; /* Destroy the start condition stack. */ - yyfree((yy_start_stack) ); + yyfree( (yy_start_stack) ); (yy_start_stack) = NULL; - yyfree ( (yy_state_buf) ); - (yy_state_buf) = NULL; - /* Reset the globals. This is important in a non-reentrant scanner so the next time * yylex() is called, initialization will occur. */ yy_init_globals( ); @@ -5107,8 +5158,9 @@ int yylex_destroy (void) */ #ifndef yytext_ptr -static void yy_flex_strncpy (char* s1, yyconst char * s2, int n ) +static void yy_flex_strncpy (char* s1, const char * s2, int n ) { + int i; for ( i = 0; i < n; ++i ) s1[i] = s2[i]; @@ -5116,7 +5168,7 @@ static void yy_flex_strncpy (char* s1, yyconst char * s2, int n ) #endif #ifdef YY_NEED_STRLEN -static int yy_flex_strlen (yyconst char * s ) +static int yy_flex_strlen (const char * s ) { int n; for ( n = 0; s[n]; ++n ) @@ -5128,11 +5180,12 @@ static int yy_flex_strlen (yyconst char * s ) void *yyalloc (yy_size_t size ) { - return (void *) malloc( size ); + return malloc(size); } void *yyrealloc (void * ptr, yy_size_t size ) { + /* The cast to (char *) in the following accommodates both * implementations that use char* generic pointers, and those * that use void* generic pointers. It works with the latter @@ -5140,22 +5193,21 @@ void *yyrealloc (void * ptr, yy_size_t size ) * any pointer type to void*, and deal with argument conversions * as though doing an assignment. */ - return (void *) realloc( (char *) ptr, size ); + return realloc(ptr, size); } void yyfree (void * ptr ) { - free( (char *) ptr ); /* see yyrealloc() for (char *) cast */ + free( (char *) ptr ); /* see yyrealloc() for (char *) cast */ } #define YYTABLES_NAME "yytables" -#line 969 "scan.l" - +#line 1014 "scan.l" -int yywrap() +int yywrap(void) { if ( --num_input_files > 0 ) { @@ -5170,47 +5222,23 @@ int yywrap() /* set_input_file - open the given file (if NULL, stdin) for scanning */ -void set_input_file( file ) -char *file; +void set_input_file( char *file ) { if ( file && strcmp( file, "-" ) ) { - infilename = copy_string( file ); + infilename = xstrdup(file); yyin = fopen( infilename, "r" ); if ( yyin == NULL ) - lerrsf( _( "can't open %s" ), file ); + lerr( _( "can't open %s" ), file ); } else { yyin = stdin; - infilename = copy_string( "<stdin>" ); + infilename = xstrdup("<stdin>"); } linenum = 1; } - -/* Wrapper routines for accessing the scanner's malloc routines. */ - -void *flex_alloc( size ) -size_t size; - { - return (void *) malloc( size ); - } - -void *flex_realloc( ptr, size ) -void *ptr; -size_t size; - { - return (void *) realloc( ptr, size ); - } - -void flex_free( ptr ) -void *ptr; - { - if ( ptr ) - free( ptr ); - } - diff --git a/usr.bin/lex/initskel.c b/usr.bin/lex/initskel.c index 8b756a30d8cb6..a7a69875521d5 100644 --- a/usr.bin/lex/initskel.c +++ b/usr.bin/lex/initskel.c @@ -4,62 +4,14 @@ #include "flexdef.h" const char *skel[] = { - "%# -*-C-*- vi: set ft=c:", - "%# This file is processed in several stages.", - "%# Here are the stages, as best as I can describe:", - "%#", - "%# 1. flex.skl is processed through GNU m4 during the", - "%# pre-compilation stage of flex. Only macros starting", - "%# with `m4_' are processed, and quoting is normal.", - "%#", - "%# 2. The preprocessed skeleton is translated verbatim into a", - "%# C array, saved as \"skel.c\" and compiled into the flex binary.", - "%#", - "%# 3. At runtime, the skeleton is generated and filtered (again)", - "%# through m4. Macros beginning with `m4_' will be processed.", - "%# The quoting is \"[[\" and \"]]\" so we don't interfere with", - "%# user code.", - "%# ", - "%# All generate macros for the m4 stage contain the text \"m4\" or \"M4\"", - "%# in them. This is to distinguish them from CPP macros.", - "%# The exception to this rule is YY_G, which is an m4 macro, ", - "%# but it needs to be remain short because it is used everywhere.", - "%#", "/* A lexical scanner generated by flex */", "", - "%# Macros for preproc stage.", "", "", - "%# Macros for runtime processing stage.", "m4_changecom", "m4_changequote", "m4_changequote([[, ]])", "", - "%# ", - "%# Lines in this skeleton starting with a \"%\" character are \"control lines\"", - "%# and affect the generation of the scanner. The possible control codes are", - "%# listed and processed in misc.c.", - "%#", - "%# %# - A comment. The current line is omitted from the generated scanner.", - "%# %if-c++-only - The following lines are printed for C++ scanners ONLY.", - "%# %if-c-only - The following lines are NOT printed for C++ scanners.", - "%# %if-c-or-c++ - The following lines are printed in BOTH C and C++ scanners.", - "%# %if-reentrant - Print for reentrant scanners.(push)", - "%# %if-not-reentrant - Print for non-reentrant scanners. (push)", - "%# %if-bison-bridge - Print for bison-bridge. (push)", - "%# %if-not-bison-bridge - Print for non-bison-bridge. (push)", - "%# %endif - pop from the previous if code.", - "%# %% - A stop-point, where code is inserted by flex.", - "%# Each stop-point is numbered here and also in the code generator.", - "%# (See gen.c, etc. for details.)", - "%# %not-for-header - Begin code that should NOT appear in a \".h\" file.", - "%# %ok-for-header - %c and %e are used for building a header file.", - "%# %if-tables-serialization", - "%#", - "%# All control-lines EXCEPT comment lines (\"%#\") will be inserted into", - "%# the generated scanner as a C-style comment. This is to aid those who", - "%# edit the skeleton.", - "%#", "", "%not-for-header", "%if-c-only", @@ -67,11 +19,17 @@ const char *skel[] = { "m4_ifelse(M4_YY_PREFIX,yy,,", "#define yy_create_buffer M4_YY_PREFIX[[_create_buffer]]", "#define yy_delete_buffer M4_YY_PREFIX[[_delete_buffer]]", - "#define yy_flex_debug M4_YY_PREFIX[[_flex_debug]]", + "#define yy_scan_buffer M4_YY_PREFIX[[_scan_buffer]]", + "#define yy_scan_string M4_YY_PREFIX[[_scan_string]]", + "#define yy_scan_bytes M4_YY_PREFIX[[_scan_bytes]]", "#define yy_init_buffer M4_YY_PREFIX[[_init_buffer]]", "#define yy_flush_buffer M4_YY_PREFIX[[_flush_buffer]]", "#define yy_load_buffer_state M4_YY_PREFIX[[_load_buffer_state]]", "#define yy_switch_to_buffer M4_YY_PREFIX[[_switch_to_buffer]]", + "#define yypush_buffer_state M4_YY_PREFIX[[push_buffer_state]]", + "#define yypop_buffer_state M4_YY_PREFIX[[pop_buffer_state]]", + "#define yyensure_buffer_stack M4_YY_PREFIX[[ensure_buffer_stack]]", + "#define yy_flex_debug M4_YY_PREFIX[[_flex_debug]]", "#define yyin M4_YY_PREFIX[[in]]", "#define yyleng M4_YY_PREFIX[[leng]]", "#define yylex M4_YY_PREFIX[[lex]]", @@ -90,23 +48,18 @@ const char *skel[] = { "", "#define FLEX_SCANNER", "#define YY_FLEX_MAJOR_VERSION 2", - "#define YY_FLEX_MINOR_VERSION 5", - "#define YY_FLEX_SUBMINOR_VERSION 37", + "#define YY_FLEX_MINOR_VERSION 6", + "#define YY_FLEX_SUBMINOR_VERSION 4", "#if YY_FLEX_SUBMINOR_VERSION > 0", "#define FLEX_BETA", "#endif", "", - "%# Some negated symbols", "m4_ifdef( [[M4_YY_IN_HEADER]], , [[m4_define([[M4_YY_NOT_IN_HEADER]], [[]])]])", "m4_ifdef( [[M4_YY_REENTRANT]], , [[m4_define([[M4_YY_NOT_REENTRANT]], [[]])]])", "", - "%# This is the m4 way to say \"(stack_used || is_reentrant)", "m4_ifdef( [[M4_YY_STACK_USED]], [[m4_define([[M4_YY_HAS_START_STACK_VARS]])]])", "m4_ifdef( [[M4_YY_REENTRANT]], [[m4_define([[M4_YY_HAS_START_STACK_VARS]])]])", "", - "%# Prefixes.", - "%# The complexity here is necessary so that m4 preserves", - "%# the argument lists to each C function.", "", "", "m4_ifdef( [[M4_YY_PREFIX]],, [[m4_define([[M4_YY_PREFIX]], [[yy]])]])", @@ -124,78 +77,372 @@ const char *skel[] = { "%endif", "", "%if-c-only", - " m4_define(yy[[_create_buffer]], [[M4_YY_PREFIX[[_create_buffer]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[_delete_buffer]], [[M4_YY_PREFIX[[_delete_buffer]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[_scan_buffer]], [[M4_YY_PREFIX[[_scan_buffer]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[_scan_string]], [[M4_YY_PREFIX[[_scan_string]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[_scan_bytes]], [[M4_YY_PREFIX[[_scan_bytes]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[_init_buffer]], [[M4_YY_PREFIX[[_init_buffer]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[_flush_buffer]], [[M4_YY_PREFIX[[_flush_buffer]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[_load_buffer_state]], [[M4_YY_PREFIX[[_load_buffer_state]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[_switch_to_buffer]], [[M4_YY_PREFIX[[_switch_to_buffer]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[push_buffer_state]], [[M4_YY_PREFIX[[push_buffer_state]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[pop_buffer_state]], [[M4_YY_PREFIX[[pop_buffer_state]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[ensure_buffer_stack]], [[M4_YY_PREFIX[[ensure_buffer_stack]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[lex]], [[M4_YY_PREFIX[[lex]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[restart]], [[M4_YY_PREFIX[[restart]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[lex_init]], [[M4_YY_PREFIX[[lex_init]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[lex_init_extra]], [[M4_YY_PREFIX[[lex_init_extra]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[lex_destroy]], [[M4_YY_PREFIX[[lex_destroy]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[get_debug]], [[M4_YY_PREFIX[[get_debug]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[set_debug]], [[M4_YY_PREFIX[[set_debug]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[get_extra]], [[M4_YY_PREFIX[[get_extra]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[set_extra]], [[M4_YY_PREFIX[[set_extra]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[get_in]], [[M4_YY_PREFIX[[get_in]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[set_in]], [[M4_YY_PREFIX[[set_in]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[get_out]], [[M4_YY_PREFIX[[get_out]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[set_out]], [[M4_YY_PREFIX[[set_out]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[get_leng]], [[M4_YY_PREFIX[[get_leng]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[get_text]], [[M4_YY_PREFIX[[get_text]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[get_lineno]], [[M4_YY_PREFIX[[get_lineno]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[set_lineno]], [[M4_YY_PREFIX[[set_lineno]]m4_ifelse($#,0,,[[($@)]])]])", + "m4_ifelse(M4_YY_PREFIX,yy,,", + " ", + "[[#ifdef yy_create_buffer", + "#define ]]M4_YY_PREFIX[[_create_buffer_ALREADY_DEFINED", + "#else", + "#define yy_create_buffer ]]M4_YY_PREFIX[[_create_buffer", + "#endif]]", + "", + " ", + "[[#ifdef yy_delete_buffer", + "#define ]]M4_YY_PREFIX[[_delete_buffer_ALREADY_DEFINED", + "#else", + "#define yy_delete_buffer ]]M4_YY_PREFIX[[_delete_buffer", + "#endif]]", + "", + " ", + "[[#ifdef yy_scan_buffer", + "#define ]]M4_YY_PREFIX[[_scan_buffer_ALREADY_DEFINED", + "#else", + "#define yy_scan_buffer ]]M4_YY_PREFIX[[_scan_buffer", + "#endif]]", + "", + " ", + "[[#ifdef yy_scan_string", + "#define ]]M4_YY_PREFIX[[_scan_string_ALREADY_DEFINED", + "#else", + "#define yy_scan_string ]]M4_YY_PREFIX[[_scan_string", + "#endif]]", + "", + " ", + "[[#ifdef yy_scan_bytes", + "#define ]]M4_YY_PREFIX[[_scan_bytes_ALREADY_DEFINED", + "#else", + "#define yy_scan_bytes ]]M4_YY_PREFIX[[_scan_bytes", + "#endif]]", + "", + " ", + "[[#ifdef yy_init_buffer", + "#define ]]M4_YY_PREFIX[[_init_buffer_ALREADY_DEFINED", + "#else", + "#define yy_init_buffer ]]M4_YY_PREFIX[[_init_buffer", + "#endif]]", + "", + " ", + "[[#ifdef yy_flush_buffer", + "#define ]]M4_YY_PREFIX[[_flush_buffer_ALREADY_DEFINED", + "#else", + "#define yy_flush_buffer ]]M4_YY_PREFIX[[_flush_buffer", + "#endif]]", + "", + " ", + "[[#ifdef yy_load_buffer_state", + "#define ]]M4_YY_PREFIX[[_load_buffer_state_ALREADY_DEFINED", + "#else", + "#define yy_load_buffer_state ]]M4_YY_PREFIX[[_load_buffer_state", + "#endif]]", + "", + " ", + "[[#ifdef yy_switch_to_buffer", + "#define ]]M4_YY_PREFIX[[_switch_to_buffer_ALREADY_DEFINED", + "#else", + "#define yy_switch_to_buffer ]]M4_YY_PREFIX[[_switch_to_buffer", + "#endif]]", + "", + " ", + "[[#ifdef yypush_buffer_state", + "#define ]]M4_YY_PREFIX[[push_buffer_state_ALREADY_DEFINED", + "#else", + "#define yypush_buffer_state ]]M4_YY_PREFIX[[push_buffer_state", + "#endif]]", + "", + " ", + "[[#ifdef yypop_buffer_state", + "#define ]]M4_YY_PREFIX[[pop_buffer_state_ALREADY_DEFINED", + "#else", + "#define yypop_buffer_state ]]M4_YY_PREFIX[[pop_buffer_state", + "#endif]]", + "", + " ", + "[[#ifdef yyensure_buffer_stack", + "#define ]]M4_YY_PREFIX[[ensure_buffer_stack_ALREADY_DEFINED", + "#else", + "#define yyensure_buffer_stack ]]M4_YY_PREFIX[[ensure_buffer_stack", + "#endif]]", + "", + " ", + "[[#ifdef yylex", + "#define ]]M4_YY_PREFIX[[lex_ALREADY_DEFINED", + "#else", + "#define yylex ]]M4_YY_PREFIX[[lex", + "#endif]]", + "", + " ", + "[[#ifdef yyrestart", + "#define ]]M4_YY_PREFIX[[restart_ALREADY_DEFINED", + "#else", + "#define yyrestart ]]M4_YY_PREFIX[[restart", + "#endif]]", + "", + " ", + "[[#ifdef yylex_init", + "#define ]]M4_YY_PREFIX[[lex_init_ALREADY_DEFINED", + "#else", + "#define yylex_init ]]M4_YY_PREFIX[[lex_init", + "#endif]]", + "", + " ", + "[[#ifdef yylex_init_extra", + "#define ]]M4_YY_PREFIX[[lex_init_extra_ALREADY_DEFINED", + "#else", + "#define yylex_init_extra ]]M4_YY_PREFIX[[lex_init_extra", + "#endif]]", + "", + " ", + "[[#ifdef yylex_destroy", + "#define ]]M4_YY_PREFIX[[lex_destroy_ALREADY_DEFINED", + "#else", + "#define yylex_destroy ]]M4_YY_PREFIX[[lex_destroy", + "#endif]]", + "", + " ", + "[[#ifdef yyget_debug", + "#define ]]M4_YY_PREFIX[[get_debug_ALREADY_DEFINED", + "#else", + "#define yyget_debug ]]M4_YY_PREFIX[[get_debug", + "#endif]]", + "", + " ", + "[[#ifdef yyset_debug", + "#define ]]M4_YY_PREFIX[[set_debug_ALREADY_DEFINED", + "#else", + "#define yyset_debug ]]M4_YY_PREFIX[[set_debug", + "#endif]]", + "", + " ", + "[[#ifdef yyget_extra", + "#define ]]M4_YY_PREFIX[[get_extra_ALREADY_DEFINED", + "#else", + "#define yyget_extra ]]M4_YY_PREFIX[[get_extra", + "#endif]]", + "", + " ", + "[[#ifdef yyset_extra", + "#define ]]M4_YY_PREFIX[[set_extra_ALREADY_DEFINED", + "#else", + "#define yyset_extra ]]M4_YY_PREFIX[[set_extra", + "#endif]]", + "", + " ", + "[[#ifdef yyget_in", + "#define ]]M4_YY_PREFIX[[get_in_ALREADY_DEFINED", + "#else", + "#define yyget_in ]]M4_YY_PREFIX[[get_in", + "#endif]]", + "", + " ", + "[[#ifdef yyset_in", + "#define ]]M4_YY_PREFIX[[set_in_ALREADY_DEFINED", + "#else", + "#define yyset_in ]]M4_YY_PREFIX[[set_in", + "#endif]]", + "", + " ", + "[[#ifdef yyget_out", + "#define ]]M4_YY_PREFIX[[get_out_ALREADY_DEFINED", + "#else", + "#define yyget_out ]]M4_YY_PREFIX[[get_out", + "#endif]]", + "", + " ", + "[[#ifdef yyset_out", + "#define ]]M4_YY_PREFIX[[set_out_ALREADY_DEFINED", + "#else", + "#define yyset_out ]]M4_YY_PREFIX[[set_out", + "#endif]]", + "", + " ", + "[[#ifdef yyget_leng", + "#define ]]M4_YY_PREFIX[[get_leng_ALREADY_DEFINED", + "#else", + "#define yyget_leng ]]M4_YY_PREFIX[[get_leng", + "#endif]]", + "", + " ", + "[[#ifdef yyget_text", + "#define ]]M4_YY_PREFIX[[get_text_ALREADY_DEFINED", + "#else", + "#define yyget_text ]]M4_YY_PREFIX[[get_text", + "#endif]]", + "", + " ", + "[[#ifdef yyget_lineno", + "#define ]]M4_YY_PREFIX[[get_lineno_ALREADY_DEFINED", + "#else", + "#define yyget_lineno ]]M4_YY_PREFIX[[get_lineno", + "#endif]]", + "", + " ", + "[[#ifdef yyset_lineno", + "#define ]]M4_YY_PREFIX[[set_lineno_ALREADY_DEFINED", + "#else", + "#define yyset_lineno ]]M4_YY_PREFIX[[set_lineno", + "#endif]]", + "", " m4_ifdef( [[M4_YY_REENTRANT]],", " [[", - " m4_define(yy[[get_column]], [[M4_YY_PREFIX[[get_column]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[set_column]], [[M4_YY_PREFIX[[set_column]]m4_ifelse($#,0,,[[($@)]])]])", + " ", + "[[#ifdef yyget_column", + "#define ]]M4_YY_PREFIX[[get_column_ALREADY_DEFINED", + "#else", + "#define yyget_column ]]M4_YY_PREFIX[[get_column", + "#endif]]", + "", + " ", + "[[#ifdef yyset_column", + "#define ]]M4_YY_PREFIX[[set_column_ALREADY_DEFINED", + "#else", + "#define yyset_column ]]M4_YY_PREFIX[[set_column", + "#endif]]", + "", " ]])", - " m4_define(yy[[wrap]], [[M4_YY_PREFIX[[wrap]]m4_ifelse($#,0,,[[($@)]])]])", + " ", + "[[#ifdef yywrap", + "#define ]]M4_YY_PREFIX[[wrap_ALREADY_DEFINED", + "#else", + "#define yywrap ]]M4_YY_PREFIX[[wrap", + "#endif]]", + "", + ")", "%endif", "", "m4_ifdef( [[M4_YY_BISON_LVAL]],", "[[", - " m4_define(yy[[get_lval]], [[M4_YY_PREFIX[[get_lval]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[set_lval]], [[M4_YY_PREFIX[[set_lval]]m4_ifelse($#,0,,[[($@)]])]])", + " ", + "[[#ifdef yyget_lval", + "#define ]]M4_YY_PREFIX[[get_lval_ALREADY_DEFINED", + "#else", + "#define yyget_lval ]]M4_YY_PREFIX[[get_lval", + "#endif]]", + "", + " ", + "[[#ifdef yyset_lval", + "#define ]]M4_YY_PREFIX[[set_lval_ALREADY_DEFINED", + "#else", + "#define yyset_lval ]]M4_YY_PREFIX[[set_lval", + "#endif]]", + "", "]])", "", "m4_ifdef( [[<M4_YY_BISON_LLOC>]],", "[[", - " m4_define(yy[[get_lloc]], [[M4_YY_PREFIX[[get_lloc]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[set_lloc]], [[M4_YY_PREFIX[[set_lloc]]m4_ifelse($#,0,,[[($@)]])]])", + " ", + "[[#ifdef yyget_lloc", + "#define ]]M4_YY_PREFIX[[get_lloc_ALREADY_DEFINED", + "#else", + "#define yyget_lloc ]]M4_YY_PREFIX[[get_lloc", + "#endif]]", + "", + " ", + "[[#ifdef yyset_lloc", + "#define ]]M4_YY_PREFIX[[set_lloc_ALREADY_DEFINED", + "#else", + "#define yyset_lloc ]]M4_YY_PREFIX[[set_lloc", + "#endif]]", + "", "]])", "", "", - " m4_define(yy[[alloc]], [[M4_YY_PREFIX[[alloc]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[realloc]], [[M4_YY_PREFIX[[realloc]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[free]], [[M4_YY_PREFIX[[free]]m4_ifelse($#,0,,[[($@)]])]])", + "m4_ifelse(M4_YY_PREFIX,yy,,", + " ", + "[[#ifdef yyalloc", + "#define ]]M4_YY_PREFIX[[alloc_ALREADY_DEFINED", + "#else", + "#define yyalloc ]]M4_YY_PREFIX[[alloc", + "#endif]]", + "", + " ", + "[[#ifdef yyrealloc", + "#define ]]M4_YY_PREFIX[[realloc_ALREADY_DEFINED", + "#else", + "#define yyrealloc ]]M4_YY_PREFIX[[realloc", + "#endif]]", + "", + " ", + "[[#ifdef yyfree", + "#define ]]M4_YY_PREFIX[[free_ALREADY_DEFINED", + "#else", + "#define yyfree ]]M4_YY_PREFIX[[free", + "#endif]]", + "", + ")", "", "%if-c-only", + "m4_ifelse(M4_YY_PREFIX,yy,,", "m4_ifdef( [[M4_YY_NOT_REENTRANT]],", "[[", - " m4_define(yy[[text]], [[M4_YY_PREFIX[[text]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[leng]], [[M4_YY_PREFIX[[leng]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[in]], [[M4_YY_PREFIX[[in]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[out]], [[M4_YY_PREFIX[[out]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[_flex_debug]], [[M4_YY_PREFIX[[_flex_debug]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[lineno]], [[M4_YY_PREFIX[[lineno]]m4_ifelse($#,0,,[[($@)]])]])", + " ", + "[[#ifdef yytext", + "#define ]]M4_YY_PREFIX[[text_ALREADY_DEFINED", + "#else", + "#define yytext ]]M4_YY_PREFIX[[text", + "#endif]]", + "", + " ", + "[[#ifdef yyleng", + "#define ]]M4_YY_PREFIX[[leng_ALREADY_DEFINED", + "#else", + "#define yyleng ]]M4_YY_PREFIX[[leng", + "#endif]]", + "", + " ", + "[[#ifdef yyin", + "#define ]]M4_YY_PREFIX[[in_ALREADY_DEFINED", + "#else", + "#define yyin ]]M4_YY_PREFIX[[in", + "#endif]]", + "", + " ", + "[[#ifdef yyout", + "#define ]]M4_YY_PREFIX[[out_ALREADY_DEFINED", + "#else", + "#define yyout ]]M4_YY_PREFIX[[out", + "#endif]]", + "", + " ", + "[[#ifdef yy_flex_debug", + "#define ]]M4_YY_PREFIX[[_flex_debug_ALREADY_DEFINED", + "#else", + "#define yy_flex_debug ]]M4_YY_PREFIX[[_flex_debug", + "#endif]]", + "", + " ", + "[[#ifdef yylineno", + "#define ]]M4_YY_PREFIX[[lineno_ALREADY_DEFINED", + "#else", + "#define yylineno ]]M4_YY_PREFIX[[lineno", + "#endif]]", + "", "]])", + ")", "%endif", "", "", "m4_ifdef( [[M4_YY_TABLES_EXTERNAL]],", "[[", - " m4_define(yy[[tables_fload]], [[M4_YY_PREFIX[[tables_fload]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[tables_destroy]], [[M4_YY_PREFIX[[tables_destroy]]m4_ifelse($#,0,,[[($@)]])]])", - " m4_define(yy[[TABLES_NAME]], [[M4_YY_PREFIX[[TABLES_NAME]]m4_ifelse($#,0,,[[($@)]])]])", + " ", + "[[#ifdef yytables_fload", + "#define ]]M4_YY_PREFIX[[tables_fload_ALREADY_DEFINED", + "#else", + "#define yytables_fload ]]M4_YY_PREFIX[[tables_fload", + "#endif]]", + "", + " ", + "[[#ifdef yytables_destroy", + "#define ]]M4_YY_PREFIX[[tables_destroy_ALREADY_DEFINED", + "#else", + "#define yytables_destroy ]]M4_YY_PREFIX[[tables_destroy", + "#endif]]", + "", + " ", + "[[#ifdef yyTABLES_NAME", + "#define ]]M4_YY_PREFIX[[TABLES_NAME_ALREADY_DEFINED", + "#else", + "#define yyTABLES_NAME ]]M4_YY_PREFIX[[TABLES_NAME", + "#endif]]", + "", "]])", "", "/* First, we deal with platform-specific or compiler-specific issues. */", @@ -286,15 +533,19 @@ const char *skel[] = { "#define UINT32_MAX (4294967295U)", "#endif", "", + "#ifndef SIZE_MAX", + "#define SIZE_MAX (~(size_t)0)", + "#endif", + "", "#endif /* ! C99 */", "", "#endif /* ! FLEXINT_H */", "", "%endif", "", - "%if-c++-only", "/* begin standard C++ headers. */", - "#include <iostream> ", + "%if-c++-only", + "#include <iostream>", "#include <errno.h>", "#include <cstdlib>", "#include <cstdio>", @@ -302,58 +553,25 @@ const char *skel[] = { "/* end standard C++ headers. */", "%endif", "", - "#ifdef __cplusplus", - "", - "/* The \"const\" storage-class-modifier is valid. */", - "#define YY_USE_CONST", - "", - "#else /* ! __cplusplus */", - "", - "/* C99 requires __STDC__ to be defined as 1. */", - "#if defined (__STDC__)", - "", - "#define YY_USE_CONST", - "", - "#endif /* defined (__STDC__) */", - "#endif /* ! __cplusplus */", - "", - "#ifdef YY_USE_CONST", + "/* TODO: this is always defined, so inline it */", "#define yyconst const", + "", + "#if defined(__GNUC__) && __GNUC__ >= 3", + "#define yynoreturn __attribute__((__noreturn__))", "#else", - "#define yyconst", + "#define yynoreturn", "#endif", "", - "%# For compilers that can not handle prototypes.", - "%# e.g.,", - "%# The function prototype", - "%# int foo(int x, char* y);", - "%# ", - "%# ...should be written as", - "%# int foo M4_YY_PARAMS(int x, char* y);", - "%# ", - "%# ...which could possibly generate", - "%# int foo ();", - "%# ", - "m4_ifdef( [[M4_YY_NO_ANSI_FUNC_PROTOS]],", - "[[", - " m4_define( [[M4_YY_PARAMS]], [[()]])", - "]],", - "[[", - " m4_define( [[M4_YY_PARAMS]], [[($*)]])", - "]])", - "", "%not-for-header", "/* Returned upon end-of-file. */", "#define YY_NULL 0", "%ok-for-header", "", "%not-for-header", - "/* 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.", + "/* Promotes a possibly negative, possibly signed char to an", + " * integer in range [0..255] for use as an array index.", " */", - "#define YY_SC_TO_UI(c) ((unsigned int) (unsigned char) c)", + "#define YY_SC_TO_UI(c) ((YY_CHAR) (c))", "%ok-for-header", "", "", @@ -366,34 +584,20 @@ const char *skel[] = { "typedef void* yyscan_t;", "#endif", "", - "%# Declare yyguts variable", "m4_define( [[M4_YY_DECL_GUTS_VAR]], [[struct yyguts_t * yyg = (struct yyguts_t*)yyscanner]])", - "%# Perform a noop access on yyguts to prevent unused variable complains", "m4_define( [[M4_YY_NOOP_GUTS_VAR]], [[(void)yyg]])", - "%# For use wherever a Global is accessed or assigned.", "m4_define( [[YY_G]], [[yyg->$1]])", "", - "%# For use in function prototypes to append the additional argument.", "m4_define( [[M4_YY_PROTO_LAST_ARG]], [[, yyscan_t yyscanner]])", "m4_define( [[M4_YY_PROTO_ONLY_ARG]], [[yyscan_t yyscanner]])", "", - "%# For use in function definitions to append the additional argument.", - "m4_ifdef( [[M4_YY_NO_ANSI_FUNC_DEFS]],", - "[[", - " m4_define( [[M4_YY_DEF_LAST_ARG]], [[, yyscanner]])", - " m4_define( [[M4_YY_DEF_ONLY_ARG]], [[yyscanner]])", - "]],", - "[[", - " m4_define( [[M4_YY_DEF_LAST_ARG]], [[, yyscan_t yyscanner]])", - " m4_define( [[M4_YY_DEF_ONLY_ARG]], [[yyscan_t yyscanner]])", - "]])", + "m4_define( [[M4_YY_DEF_LAST_ARG]], [[, yyscan_t yyscanner]])", + "m4_define( [[M4_YY_DEF_ONLY_ARG]], [[yyscan_t yyscanner]])", "m4_define( [[M4_YY_DECL_LAST_ARG]], [[yyscan_t yyscanner;]])", "", - "%# For use in function calls to pass the additional argument.", "m4_define( [[M4_YY_CALL_LAST_ARG]], [[, yyscanner]])", "m4_define( [[M4_YY_CALL_ONLY_ARG]], [[yyscanner]])", "", - "%# For use in function documentation to adjust for additional argument.", "m4_define( [[M4_YY_DOC_PARAM]], [[@param yyscanner The scanner object.]])", "", "/* For convenience, these vars (plus the bison vars far below)", @@ -408,7 +612,7 @@ const char *skel[] = { "#define yy_flex_debug YY_G(yy_flex_debug_r)", "", "m4_define( [[M4_YY_INCR_LINENO]],", - "[[ ", + "[[", " do{ yylineno++;", " yycolumn=0;", " }while(0)", @@ -421,11 +625,10 @@ const char *skel[] = { "%if-not-reentrant", "", "m4_define( [[M4_YY_INCR_LINENO]],", - "[[ ", + "[[", " yylineno++;", "]])", "", - "%# Define these macros to be no-ops.", "m4_define( [[M4_YY_DECL_GUTS_VAR]], [[m4_dnl]])", "m4_define( [[M4_YY_NOOP_GUTS_VAR]], [[m4_dnl]])", "m4_define( [[YY_G]], [[($1)]])", @@ -433,60 +636,18 @@ const char *skel[] = { "m4_define( [[M4_YY_PROTO_ONLY_ARG]], [[void]])", "m4_define( [[M4_YY_DEF_LAST_ARG]])", "", - "m4_ifdef( [[M4_YY_NO_ANSI_FUNC_DEFS]],", - "[[", - " m4_define( [[M4_YY_DEF_ONLY_ARG]])", - "]],", - "[[", - " m4_define( [[M4_YY_DEF_ONLY_ARG]], [[void]])", - "]])", + "m4_define( [[M4_YY_DEF_ONLY_ARG]], [[void]])", "m4_define([[M4_YY_DECL_LAST_ARG]])", "m4_define([[M4_YY_CALL_LAST_ARG]])", "m4_define([[M4_YY_CALL_ONLY_ARG]])", - "m4_define( [[M4_YY_DOC_PARAM]], [[]])", - "", - "%endif", - "", - "", - "m4_ifdef( [[M4_YY_NO_ANSI_FUNC_DEFS]],", - "[[", - "%# For compilers that need traditional function definitions.", - "%# e.g.,", - "%# The function prototype taking 2 arguments", - "%# int foo (int x, char* y)", - "%#", - "%# ...should be written as", - "%# int foo YYFARGS2(int,x, char*,y)", - "%#", - "%# ...which could possibly generate", - "%# int foo (x,y,yyscanner)", - "%# int x;", - "%# char * y;", - "%# yyscan_t yyscanner;", - "%#", - "%# Generate traditional function defs", - " m4_define( [[YYFARGS0]], [[(M4_YY_DEF_ONLY_ARG) [[\\]]", - " M4_YY_DECL_LAST_ARG]])", - " m4_define( [[YYFARGS1]], [[($2 M4_YY_DEF_LAST_ARG) [[\\]]", - " $1 $2; [[\\]]", - " M4_YY_DECL_LAST_ARG]])", - " m4_define( [[YYFARGS2]], [[($2,$4 M4_YY_DEF_LAST_ARG) [[\\]]", - " $1 $2; [[\\]]", - " $3 $4; [[\\]]", - " M4_YY_DECL_LAST_ARG]])", - " m4_define( [[YYFARGS3]], [[($2,$4,$6 M4_YY_DEF_LAST_ARG) [[\\]]", - " $1 $2; [[\\]]", - " $3 $4; [[\\]]", - " $5 $6; [[\\]]", - " M4_YY_DECL_LAST_ARG]])", - "]],", - "[[", - "%# Generate C99 function defs.", - " m4_define( [[YYFARGS0]], [[(M4_YY_DEF_ONLY_ARG)]])", - " m4_define( [[YYFARGS1]], [[($1 $2 M4_YY_DEF_LAST_ARG)]])", - " m4_define( [[YYFARGS2]], [[($1 $2, $3 $4 M4_YY_DEF_LAST_ARG)]])", - " m4_define( [[YYFARGS3]], [[($1 $2, $3 $4, $5 $6 M4_YY_DEF_LAST_ARG)]])", - "]])", + "m4_define( [[M4_YY_DOC_PARAM]], )", + "", + "%endif", + "", + "", + "m4_define( [[YYFARGS1]], [[($1 $2 M4_YY_DEF_LAST_ARG)]])", + "m4_define( [[YYFARGS2]], [[($1 $2, $3 $4 M4_YY_DEF_LAST_ARG)]])", + "m4_define( [[YYFARGS3]], [[($1 $2, $3 $4, $5 $6 M4_YY_DEF_LAST_ARG)]])", "", "m4_ifdef( [[M4_YY_NOT_IN_HEADER]],", "[[", @@ -495,38 +656,30 @@ const char *skel[] = { " * definition of BEGIN.", " */", "#define BEGIN YY_G(yy_start) = 1 + 2 *", - "]])", - "", - "m4_ifdef( [[M4_YY_NOT_IN_HEADER]],", - "[[", "/* 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_G(yy_start) - 1) / 2)", "#define YYSTATE YY_START", - "]])", - "", - "m4_ifdef( [[M4_YY_NOT_IN_HEADER]],", - "[[", "/* Action number for EOF rule of a given start state. */", "#define YY_STATE_EOF(state) (YY_END_OF_BUFFER + state + 1)", - "]])", - "", - "m4_ifdef( [[M4_YY_NOT_IN_HEADER]],", - "[[", "/* Special action meaning \"start processing a new file\". */", "#define YY_NEW_FILE yyrestart( yyin M4_YY_CALL_LAST_ARG )", - "]])", - "", - "m4_ifdef( [[M4_YY_NOT_IN_HEADER]],", - "[[", "#define YY_END_OF_BUFFER_CHAR 0", "]])", "", "/* Size of default input buffer. */", "#ifndef YY_BUF_SIZE", + "#ifdef __ia64__", + "/* On IA-64, the buffer size is 16k, not 8k.", + " * Moreover, YY_BUF_SIZE is 2*YY_READ_BUF_SIZE in the general case.", + " * Ditto for the __ia64__ case accordingly.", + " */", + "#define YY_BUF_SIZE 32768", + "#else", "#define YY_BUF_SIZE 16384", + "#endif /* __ia64__ */", "#endif", "", "m4_ifdef( [[M4_YY_NOT_IN_HEADER]],", @@ -548,7 +701,7 @@ const char *skel[] = { "#endif", "", "%if-not-reentrant", - "extern yy_size_t yyleng;", + "extern int yyleng;", "%endif", "", "%if-c-only", @@ -562,15 +715,11 @@ const char *skel[] = { "#define EOB_ACT_CONTINUE_SCAN 0", "#define EOB_ACT_END_OF_FILE 1", "#define EOB_ACT_LAST_MATCH 2", - "]])", - "", - "m4_ifdef( [[M4_YY_NOT_IN_HEADER]],", - "[[", " m4_ifdef( [[M4_YY_USE_LINENO]],", " [[", " /* Note: We specifically omit the test for yy_rule_can_match_eol because it requires", " * access to the local variable yy_act. Since yyless() is a macro, it would break", - " * existing scanners that call yyless() from OUTSIDE yylex. ", + " * existing scanners that call yyless() from OUTSIDE yylex.", " * One obvious solution it to make yy_act a global. I tried that, and saw", " * a 5% performance hit in a non-yylineno scanner, because yy_act is", " * normally declared as a register variable-- so it is not worth it.", @@ -582,14 +731,18 @@ const char *skel[] = { " if ( yytext[yyl] == '\\n' )\\", " --yylineno;\\", " }while(0)", + " #define YY_LINENO_REWIND_TO(dst) \\", + " do {\\", + " const char *p;\\", + " for ( p = yy_cp-1; p >= (dst); --p)\\", + " if ( *p == '\\n' )\\", + " --yylineno;\\", + " }while(0)", " ]],", " [[", " #define YY_LESS_LINENO(n)", + " #define YY_LINENO_REWIND_TO(ptr)", " ]])", - "]])", - "", - "m4_ifdef( [[M4_YY_NOT_IN_HEADER]],", - "[[", "/* Return all but the first \"n\" matched characters back to the input stream. */", "#define yyless(n) \\", " do \\", @@ -603,10 +756,6 @@ const char *skel[] = { " YY_DO_BEFORE_ACTION; /* set up yytext again */ \\", " } \\", " while ( 0 )", - "]])", - "", - "m4_ifdef( [[M4_YY_NOT_IN_HEADER]],", - "[[", "#define unput(c) yyunput( c, YY_G(yytext_ptr) M4_YY_CALL_LAST_ARG )", "]])", "", @@ -619,7 +768,7 @@ const char *skel[] = { "%endif", "", "%if-c++-only", - " std::istream* yy_input_file;", + " std::streambuf* yy_input_file;", "%endif", "", "", @@ -629,12 +778,12 @@ const char *skel[] = { " /* Size of input buffer in bytes, not including room for EOB", " * characters.", " */", - " yy_size_t yy_buf_size;", + " int yy_buf_size;", "", " /* Number of characters read into yy_ch_buf, not including EOB", " * characters.", " */", - " yy_size_t yy_n_chars;", + " 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", @@ -657,7 +806,7 @@ const char *skel[] = { "", " int yy_bs_lineno; /**< The line count. */", " int yy_bs_column; /**< The column count. */", - " ", + "", "", " /* Whether to try to fill the input buffer when we reach the", " * end of it.", @@ -691,7 +840,7 @@ const char *skel[] = { "/* Stack of input buffers. */", "static size_t yy_buffer_stack_top = 0; /**< index of top of stack. */", "static size_t yy_buffer_stack_max = 0; /**< capacity of stack. */", - "static YY_BUFFER_STATE * yy_buffer_stack = 0; /**< Stack as an array. */", + "static YY_BUFFER_STATE * yy_buffer_stack = NULL; /**< Stack as an array. */", "%endif", "%ok-for-header", "%endif", @@ -708,10 +857,6 @@ const char *skel[] = { " ? YY_G(yy_buffer_stack)[YY_G(yy_buffer_stack_top)] \\", " : NULL)", "#define yy_current_buffer YY_CURRENT_BUFFER", - "]])", - "", - "m4_ifdef( [[M4_YY_NOT_IN_HEADER]],", - "[[", "/* Same as previous macro, but useful when we know that the buffer stack is not", " * NULL or when we need an lvalue. For internal use only.", " */", @@ -724,11 +869,11 @@ const char *skel[] = { "%not-for-header", "/* yy_hold_char holds the character lost when yytext is formed. */", "static char yy_hold_char;", - "static yy_size_t yy_n_chars; /* number of characters read into yy_ch_buf */", - "yy_size_t yyleng;", + "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 char *yy_c_buf_p = NULL;", "static int yy_init = 0; /* whether we need to initialize */", "static int yy_start = 0; /* start state number */", "", @@ -739,43 +884,35 @@ const char *skel[] = { "%ok-for-header", "%endif", "", - "void yyrestart M4_YY_PARAMS( FILE *input_file M4_YY_PROTO_LAST_ARG );", - "void yy_switch_to_buffer M4_YY_PARAMS( YY_BUFFER_STATE new_buffer M4_YY_PROTO_LAST_ARG );", - "YY_BUFFER_STATE yy_create_buffer M4_YY_PARAMS( FILE *file, int size M4_YY_PROTO_LAST_ARG );", - "void yy_delete_buffer M4_YY_PARAMS( YY_BUFFER_STATE b M4_YY_PROTO_LAST_ARG );", - "void yy_flush_buffer M4_YY_PARAMS( YY_BUFFER_STATE b M4_YY_PROTO_LAST_ARG );", - "void yypush_buffer_state M4_YY_PARAMS( YY_BUFFER_STATE new_buffer M4_YY_PROTO_LAST_ARG );", - "void yypop_buffer_state M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );", - "", - "m4_ifdef( [[M4_YY_NOT_IN_HEADER]],", - "[[", - "static void yyensure_buffer_stack M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );", - "static void yy_load_buffer_state M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );", - "static void yy_init_buffer M4_YY_PARAMS( YY_BUFFER_STATE b, FILE *file M4_YY_PROTO_LAST_ARG );", - "]])", + "void yyrestart ( FILE *input_file M4_YY_PROTO_LAST_ARG );", + "void yy_switch_to_buffer ( YY_BUFFER_STATE new_buffer M4_YY_PROTO_LAST_ARG );", + "YY_BUFFER_STATE yy_create_buffer ( FILE *file, int size M4_YY_PROTO_LAST_ARG );", + "void yy_delete_buffer ( YY_BUFFER_STATE b M4_YY_PROTO_LAST_ARG );", + "void yy_flush_buffer ( YY_BUFFER_STATE b M4_YY_PROTO_LAST_ARG );", + "void yypush_buffer_state ( YY_BUFFER_STATE new_buffer M4_YY_PROTO_LAST_ARG );", + "void yypop_buffer_state ( M4_YY_PROTO_ONLY_ARG );", "", "m4_ifdef( [[M4_YY_NOT_IN_HEADER]],", "[[", + "static void yyensure_buffer_stack ( M4_YY_PROTO_ONLY_ARG );", + "static void yy_load_buffer_state ( M4_YY_PROTO_ONLY_ARG );", + "static void yy_init_buffer ( YY_BUFFER_STATE b, FILE *file M4_YY_PROTO_LAST_ARG );", "#define YY_FLUSH_BUFFER yy_flush_buffer( YY_CURRENT_BUFFER M4_YY_CALL_LAST_ARG)", "]])", "", - "YY_BUFFER_STATE yy_scan_buffer M4_YY_PARAMS( char *base, yy_size_t size M4_YY_PROTO_LAST_ARG );", - "YY_BUFFER_STATE yy_scan_string M4_YY_PARAMS( yyconst char *yy_str M4_YY_PROTO_LAST_ARG );", - "YY_BUFFER_STATE yy_scan_bytes M4_YY_PARAMS( yyconst char *bytes, yy_size_t len M4_YY_PROTO_LAST_ARG );", + "YY_BUFFER_STATE yy_scan_buffer ( char *base, yy_size_t size M4_YY_PROTO_LAST_ARG );", + "YY_BUFFER_STATE yy_scan_string ( const char *yy_str M4_YY_PROTO_LAST_ARG );", + "YY_BUFFER_STATE yy_scan_bytes ( const char *bytes, int len M4_YY_PROTO_LAST_ARG );", "", "%endif", "", - "void *yyalloc M4_YY_PARAMS( yy_size_t M4_YY_PROTO_LAST_ARG );", - "void *yyrealloc M4_YY_PARAMS( void *, yy_size_t M4_YY_PROTO_LAST_ARG );", - "void yyfree M4_YY_PARAMS( void * M4_YY_PROTO_LAST_ARG );", + "void *yyalloc ( yy_size_t M4_YY_PROTO_LAST_ARG );", + "void *yyrealloc ( void *, yy_size_t M4_YY_PROTO_LAST_ARG );", + "void yyfree ( void * M4_YY_PROTO_LAST_ARG );", "", "m4_ifdef( [[M4_YY_NOT_IN_HEADER]],", "[[", "#define yy_new_buffer yy_create_buffer", - "]])", - "", - "m4_ifdef( [[M4_YY_NOT_IN_HEADER]],", - "[[", "#define yy_set_interactive(is_interactive) \\", " { \\", " if ( ! YY_CURRENT_BUFFER ){ \\", @@ -785,10 +922,6 @@ const char *skel[] = { " } \\", " YY_CURRENT_BUFFER_LVALUE->yy_is_interactive = is_interactive; \\", " }", - "]])", - "", - "m4_ifdef( [[M4_YY_NOT_IN_HEADER]],", - "[[", "#define yy_set_bol(at_bol) \\", " { \\", " if ( ! YY_CURRENT_BUFFER ){\\", @@ -798,10 +931,6 @@ const char *skel[] = { " } \\", " YY_CURRENT_BUFFER_LVALUE->yy_at_bol = at_bol; \\", " }", - "]])", - "", - "m4_ifdef( [[M4_YY_NOT_IN_HEADER]],", - "[[", "#define YY_AT_BOL() (YY_CURRENT_BUFFER_LVALUE->yy_at_bol)", "]])", "", @@ -816,10 +945,10 @@ const char *skel[] = { "", "m4_ifdef( [[M4_YY_NOT_IN_HEADER]],", "[[", - "static yy_state_type yy_get_previous_state M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );", - "static yy_state_type yy_try_NUL_trans M4_YY_PARAMS( yy_state_type current_state M4_YY_PROTO_LAST_ARG);", - "static int yy_get_next_buffer M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );", - "static void yy_fatal_error M4_YY_PARAMS( yyconst char msg[] M4_YY_PROTO_LAST_ARG ) __dead2;", + "static yy_state_type yy_get_previous_state ( M4_YY_PROTO_ONLY_ARG );", + "static yy_state_type yy_try_NUL_trans ( yy_state_type current_state M4_YY_PROTO_LAST_ARG);", + "static int yy_get_next_buffer ( M4_YY_PROTO_ONLY_ARG );", + "static void yynoreturn yy_fatal_error ( const char* msg M4_YY_PROTO_LAST_ARG ) __dead2;", "]])", "", "%endif", @@ -836,10 +965,6 @@ const char *skel[] = { " *yy_cp = '\\0'; \\", "%% [3.0] code to copy yytext_ptr to yytext[] goes here, if %array \\", " YY_G(yy_c_buf_p) = yy_cp;", - "]])", - "", - "m4_ifdef( [[M4_YY_NOT_IN_HEADER]],", - "[[", "%% [4.0] data tables for the DFA and the user's section 1 definitions go here", "]])", "", @@ -892,8 +1017,8 @@ const char *skel[] = { " size_t yy_buffer_stack_max; /**< capacity of stack. */", " YY_BUFFER_STATE * yy_buffer_stack; /**< Stack as an array. */", " char yy_hold_char;", - " yy_size_t yy_n_chars;", - " yy_size_t yyleng_r;", + " int yy_n_chars;", + " int yyleng_r;", " char *yy_c_buf_p;", " int yy_init;", " int yy_start;", @@ -951,7 +1076,7 @@ const char *skel[] = { "%if-c-only", "m4_ifdef( [[M4_YY_NOT_IN_HEADER]],", "[[", - "static int yy_init_globals M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );", + "static int yy_init_globals ( M4_YY_PROTO_ONLY_ARG );", "]])", "%endif", "", @@ -972,9 +1097,9 @@ const char *skel[] = { " ]])", "]])", "", - "int yylex_init M4_YY_PARAMS(yyscan_t* scanner);", + "int yylex_init (yyscan_t* scanner);", "", - "int yylex_init_extra M4_YY_PARAMS( YY_EXTRA_TYPE user_defined, yyscan_t* scanner);", + "int yylex_init_extra ( YY_EXTRA_TYPE user_defined, yyscan_t* scanner);", "", "%endif", "", @@ -985,74 +1110,74 @@ const char *skel[] = { "", "m4_ifdef( [[M4_YY_NO_DESTROY]],,", "[[", - "int yylex_destroy M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );", + "int yylex_destroy ( M4_YY_PROTO_ONLY_ARG );", "]])", "", "m4_ifdef( [[M4_YY_NO_GET_DEBUG]],,", "[[", - "int yyget_debug M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );", + "int yyget_debug ( M4_YY_PROTO_ONLY_ARG );", "]])", "", "m4_ifdef( [[M4_YY_NO_SET_DEBUG]],,", "[[", - "void yyset_debug M4_YY_PARAMS( int debug_flag M4_YY_PROTO_LAST_ARG );", + "void yyset_debug ( int debug_flag M4_YY_PROTO_LAST_ARG );", "]])", "", "m4_ifdef( [[M4_YY_NO_GET_EXTRA]],,", "[[", - "YY_EXTRA_TYPE yyget_extra M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );", + "YY_EXTRA_TYPE yyget_extra ( M4_YY_PROTO_ONLY_ARG );", "]])", "", "m4_ifdef( [[M4_YY_NO_SET_EXTRA]],,", "[[", - "void yyset_extra M4_YY_PARAMS( YY_EXTRA_TYPE user_defined M4_YY_PROTO_LAST_ARG );", + "void yyset_extra ( YY_EXTRA_TYPE user_defined M4_YY_PROTO_LAST_ARG );", "]])", "", "m4_ifdef( [[M4_YY_NO_GET_IN]],,", "[[", - "FILE *yyget_in M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );", + "FILE *yyget_in ( M4_YY_PROTO_ONLY_ARG );", "]])", "", "m4_ifdef( [[M4_YY_NO_SET_IN]],,", "[[", - "void yyset_in M4_YY_PARAMS( FILE * in_str M4_YY_PROTO_LAST_ARG );", + "void yyset_in ( FILE * _in_str M4_YY_PROTO_LAST_ARG );", "]])", "", "m4_ifdef( [[M4_YY_NO_GET_OUT]],,", "[[", - "FILE *yyget_out M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );", + "FILE *yyget_out ( M4_YY_PROTO_ONLY_ARG );", "]])", "", "m4_ifdef( [[M4_YY_NO_SET_OUT]],,", "[[", - "void yyset_out M4_YY_PARAMS( FILE * out_str M4_YY_PROTO_LAST_ARG );", + "void yyset_out ( FILE * _out_str M4_YY_PROTO_LAST_ARG );", "]])", "", "m4_ifdef( [[M4_YY_NO_GET_LENG]],,", "[[", - "yy_size_t yyget_leng M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );", + " int yyget_leng ( M4_YY_PROTO_ONLY_ARG );", "]])", "", "m4_ifdef( [[M4_YY_NO_GET_TEXT]],,", "[[", - "char *yyget_text M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );", + "char *yyget_text ( M4_YY_PROTO_ONLY_ARG );", "]])", "", "m4_ifdef( [[M4_YY_NO_GET_LINENO]],,", "[[", - "int yyget_lineno M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );", + "int yyget_lineno ( M4_YY_PROTO_ONLY_ARG );", "]])", "", "m4_ifdef( [[M4_YY_NO_SET_LINENO]],,", "[[", - "void yyset_lineno M4_YY_PARAMS( int line_number M4_YY_PROTO_LAST_ARG );", + "void yyset_lineno ( int _line_number M4_YY_PROTO_LAST_ARG );", "]])", "", "m4_ifdef( [[M4_YY_REENTRANT]],", "[[", "m4_ifdef( [[M4_YY_NO_GET_COLUMN]],,", "[[", - "int yyget_column M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );", + "int yyget_column ( M4_YY_PROTO_ONLY_ARG );", "]])", "]])", "", @@ -1060,28 +1185,28 @@ const char *skel[] = { "[[", "m4_ifdef( [[M4_YY_NO_SET_COLUMN]],,", "[[", - "void yyset_column M4_YY_PARAMS( int column_no M4_YY_PROTO_LAST_ARG );", + "void yyset_column ( int _column_no M4_YY_PROTO_LAST_ARG );", "]])", "]])", "", "%if-bison-bridge", "m4_ifdef( [[M4_YY_NO_GET_LVAL]],,", "[[", - "YYSTYPE * yyget_lval M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );", + "YYSTYPE * yyget_lval ( M4_YY_PROTO_ONLY_ARG );", "]])", "", - "void yyset_lval M4_YY_PARAMS( YYSTYPE * yylval_param M4_YY_PROTO_LAST_ARG );", + "void yyset_lval ( YYSTYPE * yylval_param M4_YY_PROTO_LAST_ARG );", "", "m4_ifdef( [[<M4_YY_BISON_LLOC>]],", "[[", " m4_ifdef( [[M4_YY_NO_GET_LLOC]],,", " [[", - " YYLTYPE *yyget_lloc M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );", + " YYLTYPE *yyget_lloc ( M4_YY_PROTO_ONLY_ARG );", " ]])", "", " m4_ifdef( [[M4_YY_NO_SET_LLOC]],,", " [[", - " void yyset_lloc M4_YY_PARAMS( YYLTYPE * yylloc_param M4_YY_PROTO_LAST_ARG );", + " void yyset_lloc ( YYLTYPE * yylloc_param M4_YY_PROTO_LAST_ARG );", " ]])", "]])", "%endif", @@ -1092,37 +1217,37 @@ const char *skel[] = { "", "#ifndef YY_SKIP_YYWRAP", "#ifdef __cplusplus", - "extern \"C\" int yywrap M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );", + "extern \"C\" int yywrap ( M4_YY_PROTO_ONLY_ARG );", "#else", - "extern int yywrap M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );", + "extern int yywrap ( M4_YY_PROTO_ONLY_ARG );", "#endif", "#endif", "", "%not-for-header", + "#ifndef YY_NO_UNPUT", " m4_ifdef( [[M4_YY_NO_UNPUT]],,", " [[", - "#ifndef YY_NO_UNPUT", - " static void yyunput M4_YY_PARAMS( int c, char *buf_ptr M4_YY_PROTO_LAST_ARG);", - "#endif", + " static void yyunput ( int c, char *buf_ptr M4_YY_PROTO_LAST_ARG);", " ]])", + "#endif", "%ok-for-header", "%endif", "", "#ifndef yytext_ptr", - "static void yy_flex_strncpy M4_YY_PARAMS( char *, yyconst char *, int M4_YY_PROTO_LAST_ARG);", + "static void yy_flex_strncpy ( char *, const char *, int M4_YY_PROTO_LAST_ARG);", "#endif", "", "#ifdef YY_NEED_STRLEN", - "static int yy_flex_strlen M4_YY_PARAMS( yyconst char * M4_YY_PROTO_LAST_ARG);", + "static int yy_flex_strlen ( const char * M4_YY_PROTO_LAST_ARG);", "#endif", "", "#ifndef YY_NO_INPUT", "%if-c-only Standard (non-C++) definition", "%not-for-header", "#ifdef __cplusplus", - "static int yyinput M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );", + "static int yyinput ( M4_YY_PROTO_ONLY_ARG );", "#else", - "static int input M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );", + "static int input ( M4_YY_PROTO_ONLY_ARG );", "#endif", "%ok-for-header", "%endif", @@ -1130,7 +1255,6 @@ const char *skel[] = { "", "", "%if-c-only", - "%# TODO: This is messy.", "m4_ifdef( [[M4_YY_STACK_USED]],", "[[", "", @@ -1148,15 +1272,15 @@ const char *skel[] = { "[[", " m4_ifdef( [[M4_YY_NO_PUSH_STATE]],,", " [[", - " static void yy_push_state M4_YY_PARAMS( int new_state M4_YY_PROTO_LAST_ARG);", + " static void yy_push_state ( int _new_state M4_YY_PROTO_LAST_ARG);", " ]])", " m4_ifdef( [[M4_YY_NO_POP_STATE]],,", " [[", - " static void yy_pop_state M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );", + " static void yy_pop_state ( M4_YY_PROTO_ONLY_ARG );", " ]])", " m4_ifdef( [[M4_YY_NO_TOP_STATE]],,", " [[", - " static int yy_top_state M4_YY_PARAMS( M4_YY_PROTO_ONLY_ARG );", + " static int yy_top_state ( M4_YY_PROTO_ONLY_ARG );", " ]])", "]])", "", @@ -1170,7 +1294,12 @@ const char *skel[] = { "", "/* Amount of stuff to slurp up with each read. */", "#ifndef YY_READ_BUF_SIZE", + "#ifdef __ia64__", + "/* On IA-64, the buffer size is 16k, not 8k */", + "#define YY_READ_BUF_SIZE 16384", + "#else", "#define YY_READ_BUF_SIZE 8192", + "#endif /* __ia64__ */", "#endif", "", "m4_ifdef( [[M4_YY_NOT_IN_HEADER]],", @@ -1181,7 +1310,7 @@ const char *skel[] = { "/* This used to be an fputs(), but since the string might contain NUL's,", " * we now use fwrite().", " */", - "#define ECHO do { if (fwrite( yytext, yyleng, 1, yyout )) {} } while (0)", + "#define ECHO do { if (fwrite( yytext, (size_t) yyleng, 1, yyout )) {} } while (0)", "%endif", "%if-c++-only C++ definition", "#define ECHO LexerOutput( yytext, yyleng )", @@ -1199,7 +1328,7 @@ const char *skel[] = { "%% [5.0] fread()/read() definition of YY_INPUT goes here unless we're doing C++ \\", "\\", "%if-c++-only C++ definition \\", - " if ( (result = LexerInput( (char *) buf, max_size )) < 0 ) \\", + " if ( (int)(result = LexerInput( (char *) buf, max_size )) < 0 ) \\", " YY_FATAL_ERROR( \"input in flex scanner failed\" );", "%endif", "", @@ -1383,15 +1512,15 @@ const char *skel[] = { "", "", "/* Load the DFA tables from the given stream. */", - "int yytables_fload M4_YY_PARAMS(FILE * fp M4_YY_PROTO_LAST_ARG);", + "int yytables_fload (FILE * fp M4_YY_PROTO_LAST_ARG);", "", "/* Unload the tables from memory. */", - "int yytables_destroy M4_YY_PARAMS(M4_YY_PROTO_ONLY_ARG);", + "int yytables_destroy (M4_YY_PROTO_ONLY_ARG);", "%not-for-header", "", "/** Describes a mapping from a serialized table id to its deserialized state in", " * this scanner. This is the bridge between our \"generic\" deserialization code", - " * and the specifics of this scanner. ", + " * and the specifics of this scanner.", " */", "struct yytbl_dmap {", " enum yytbl_id dm_id;/**< table identifier */", @@ -1425,8 +1554,8 @@ const char *skel[] = { "%if-c-only Standard (non-C++) definition", "", "", - "m4_define( [[M4_YY_LEX_PROTO]], [[M4_YY_PARAMS(M4_YY_PROTO_ONLY_ARG)]])", - "m4_define( [[M4_YY_LEX_DECLARATION]], [[YYFARGS0(void)]])", + "m4_define( [[M4_YY_LEX_PROTO]], [[(M4_YY_PROTO_ONLY_ARG)]])", + "m4_define( [[M4_YY_LEX_DECLARATION]], [[(M4_YY_DEF_ONLY_ARG)]])", "", "m4_ifdef( [[M4_YY_BISON_LVAL]],", "[[", @@ -1434,7 +1563,7 @@ const char *skel[] = { " m4_dnl accept the lval parameter.", "", " m4_define( [[M4_YY_LEX_PROTO]], [[\\]]", - " [[M4_YY_PARAMS(YYSTYPE * yylval_param M4_YY_PROTO_LAST_ARG)]])", + " [[(YYSTYPE * yylval_param M4_YY_PROTO_LAST_ARG)]])", " m4_define( [[M4_YY_LEX_DECLARATION]], [[\\]]", " [[YYFARGS1(YYSTYPE *,yylval_param)]])", "]])", @@ -1444,7 +1573,7 @@ const char *skel[] = { " m4_dnl Locations are used. yylex should also accept the ylloc parameter.", "", " m4_define( [[M4_YY_LEX_PROTO]], [[\\]]", - " [[M4_YY_PARAMS(YYSTYPE * yylval_param, YYLTYPE * yylloc_param M4_YY_PROTO_LAST_ARG)]])", + " [[(YYSTYPE * yylval_param, YYLTYPE * yylloc_param M4_YY_PROTO_LAST_ARG)]])", " m4_define( [[M4_YY_LEX_DECLARATION]], [[\\]]", " [[YYFARGS2(YYSTYPE *,yylval_param, YYLTYPE *,yylloc_param)]])", "]])", @@ -1472,7 +1601,7 @@ const char *skel[] = { "[[", "/* Code executed at the end of each rule. */", "#ifndef YY_BREAK", - "#define YY_BREAK break;", + "#define YY_BREAK /*LINTED*/break;", "#endif", "]])", "", @@ -1503,8 +1632,6 @@ const char *skel[] = { " ]])", "]])", "", - "%% [7.0] user's declarations go here", - "", "m4_ifdef( [[M4_YY_BISON_LVAL]],", "[[", " yylval = yylval_param;", @@ -1540,7 +1667,7 @@ const char *skel[] = { " yyin = stdin;", "%endif", "%if-c++-only", - " yyin = & std::cin;", + " yyin.rdbuf(std::cin.rdbuf());", "%endif", "", " if ( ! yyout )", @@ -1548,7 +1675,7 @@ const char *skel[] = { " yyout = stdout;", "%endif", "%if-c++-only", - " yyout = & std::cout;", + " yyout.rdbuf(std::cout.rdbuf());", "%endif", "", " if ( ! YY_CURRENT_BUFFER ) {", @@ -1560,7 +1687,10 @@ const char *skel[] = { " yy_load_buffer_state( M4_YY_CALL_ONLY_ARG );", " }", "", - " while ( 1 ) /* loops until end-of-file is reached */", + " {", + "%% [7.0] user's declarations go here", + "", + " while ( /*CONSTCOND*/1 ) /* loops until end-of-file is reached */", " {", "%% [8.0] yymore()-related code goes here", " yy_cp = YY_G(yy_c_buf_p);", @@ -1611,7 +1741,12 @@ const char *skel[] = { " * back-up) that will match for the new input source.", " */", " YY_G(yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;", + "%if-c-only", " YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin;", + "%endif", + "%if-c++-only", + " YY_CURRENT_BUFFER_LVALUE->yy_input_file = yyin.rdbuf();", + "%endif", " YY_CURRENT_BUFFER_LVALUE->yy_buffer_status = YY_BUFFER_NORMAL;", " }", "", @@ -1717,17 +1852,36 @@ const char *skel[] = { " \"fatal flex scanner internal error--no action found\" );", " } /* end of action switch */", " } /* end of scanning one token */", + " } /* end of user's declarations */", "} /* end of yylex */", "%ok-for-header", "", "%if-c++-only", "%not-for-header", "/* The contents of this function are C++ specific, so the YY_G macro is not used.", + " * This constructor simply maintains backward compatibility.", + " * DEPRECATED", + " */", + "yyFlexLexer::yyFlexLexer( std::istream* arg_yyin, std::ostream* arg_yyout ):", + " yyin(arg_yyin ? arg_yyin->rdbuf() : std::cin.rdbuf()),", + " yyout(arg_yyout ? arg_yyout->rdbuf() : std::cout.rdbuf())", + "{", + " ctor_common();", + "}", + "", + "/* The contents of this function are C++ specific, so the YY_G macro is not used.", + " */", + "yyFlexLexer::yyFlexLexer( std::istream& arg_yyin, std::ostream& arg_yyout ):", + " yyin(arg_yyin.rdbuf()),", + " yyout(arg_yyout.rdbuf())", + "{", + " ctor_common();", + "}", + "", + "/* The contents of this function are C++ specific, so the YY_G macro is not used.", " */", - "yyFlexLexer::yyFlexLexer( std::istream* arg_yyin, std::ostream* arg_yyout )", + "void yyFlexLexer::ctor_common()", "{", - " yyin = arg_yyin;", - " yyout = arg_yyout;", " yy_c_buf_p = 0;", " yy_init = 0;", " yy_start = 0;", @@ -1744,7 +1898,7 @@ const char *skel[] = { " yy_start_stack_ptr = yy_start_stack_depth = 0;", " yy_start_stack = NULL;", "", - " yy_buffer_stack = 0;", + " yy_buffer_stack = NULL;", " yy_buffer_stack_top = 0;", " yy_buffer_stack_max = 0;", "", @@ -1770,16 +1924,29 @@ const char *skel[] = { "", "/* The contents of this function are C++ specific, so the YY_G macro is not used.", " */", + "void yyFlexLexer::switch_streams( std::istream& new_in, std::ostream& new_out )", + "{", + " // was if( new_in )", + " yy_delete_buffer( YY_CURRENT_BUFFER M4_YY_CALL_LAST_ARG);", + " yy_switch_to_buffer( yy_create_buffer( new_in, YY_BUF_SIZE M4_YY_CALL_LAST_ARG) M4_YY_CALL_LAST_ARG);", + "", + " // was if( new_out )", + " yyout.rdbuf(new_out.rdbuf());", + "}", + "", + "/* The contents of this function are C++ specific, so the YY_G macro is not used.", + " */", "void yyFlexLexer::switch_streams( std::istream* new_in, std::ostream* new_out )", "{", - " if ( new_in )", - " {", - " yy_delete_buffer( YY_CURRENT_BUFFER M4_YY_CALL_LAST_ARG);", - " yy_switch_to_buffer( yy_create_buffer( new_in, YY_BUF_SIZE M4_YY_CALL_LAST_ARG) M4_YY_CALL_LAST_ARG);", - " }", + " if( ! new_in ) {", + " new_in = &yyin;", + " }", "", - " if ( new_out )", - " yyout = new_out;", + " if ( ! new_out ) {", + " new_out = &yyout;", + " }", + "", + " switch_streams(*new_in, *new_out);", "}", "", "#ifdef YY_INTERACTIVE", @@ -1788,33 +1955,33 @@ const char *skel[] = { "int yyFlexLexer::LexerInput( char* buf, int max_size )", "#endif", "{", - " if ( yyin->eof() || yyin->fail() )", + " if ( yyin.eof() || yyin.fail() )", " return 0;", "", "#ifdef YY_INTERACTIVE", - " yyin->get( buf[0] );", + " yyin.get( buf[0] );", "", - " if ( yyin->eof() )", + " if ( yyin.eof() )", " return 0;", "", - " if ( yyin->bad() )", + " if ( yyin.bad() )", " return -1;", "", " return 1;", "", "#else", - " (void) yyin->read( buf, max_size );", + " (void) yyin.read( buf, max_size );", "", - " if ( yyin->bad() )", + " if ( yyin.bad() )", " return -1;", " else", - " return yyin->gcount();", + " return yyin.gcount();", "#endif", "}", "", "void yyFlexLexer::LexerOutput( const char* buf, int size )", "{", - " (void) yyout->write( buf, size );", + " (void) yyout.write( buf, size );", "}", "%ok-for-header", "%endif", @@ -1829,7 +1996,7 @@ const char *skel[] = { " * EOB_ACT_END_OF_FILE - end of file", " */", "%if-c-only", - "static int yy_get_next_buffer YYFARGS0(void)", + "static int yy_get_next_buffer (M4_YY_DEF_ONLY_ARG)", "%endif", "%if-c++-only", "int yyFlexLexer::yy_get_next_buffer()", @@ -1867,7 +2034,7 @@ const char *skel[] = { " /* Try to read more data. */", "", " /* First move last chars to start of buffer. */", - " number_to_move = (int) (YY_G(yy_c_buf_p) - YY_G(yytext_ptr)) - 1;", + " number_to_move = (int) (YY_G(yy_c_buf_p) - YY_G(yytext_ptr) - 1);", "", " for ( i = 0; i < number_to_move; ++i )", " *(dest++) = *(source++);", @@ -1880,7 +2047,7 @@ const char *skel[] = { "", " else", " {", - " yy_size_t num_to_read =", + " int num_to_read =", " YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;", "", " while ( num_to_read <= 0 )", @@ -1899,7 +2066,7 @@ const char *skel[] = { "", " if ( b->yy_is_our_buffer )", " {", - " yy_size_t new_size = b->yy_buf_size * 2;", + " int new_size = b->yy_buf_size * 2;", "", " if ( new_size <= 0 )", " b->yy_buf_size += b->yy_buf_size / 8;", @@ -1909,11 +2076,11 @@ const char *skel[] = { " b->yy_ch_buf = (char *)", " /* Include room in for 2 EOB chars. */", " yyrealloc( (void *) b->yy_ch_buf,", - " b->yy_buf_size + 2 M4_YY_CALL_LAST_ARG );", + " (yy_size_t) (b->yy_buf_size + 2) M4_YY_CALL_LAST_ARG );", " }", " else", " /* Can't grow it, we don't own it. */", - " b->yy_ch_buf = 0;", + " b->yy_ch_buf = NULL;", "", " if ( ! b->yy_ch_buf )", " YY_FATAL_ERROR(", @@ -1955,13 +2122,15 @@ const char *skel[] = { " else", " ret_val = EOB_ACT_CONTINUE_SCAN;", "", - " if ((yy_size_t) (YY_G(yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {", + " if ((YY_G(yy_n_chars) + number_to_move) > YY_CURRENT_BUFFER_LVALUE->yy_buf_size) {", " /* Extend the array by 50%, plus the number we really need. */", - " yy_size_t new_size = YY_G(yy_n_chars) + number_to_move + (YY_G(yy_n_chars) >> 1);", + " int new_size = YY_G(yy_n_chars) + number_to_move + (YY_G(yy_n_chars) >> 1);", " YY_CURRENT_BUFFER_LVALUE->yy_ch_buf = (char *) yyrealloc(", - " (void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf, new_size M4_YY_CALL_LAST_ARG );", + " (void *) YY_CURRENT_BUFFER_LVALUE->yy_ch_buf, (yy_size_t) new_size M4_YY_CALL_LAST_ARG );", " if ( ! YY_CURRENT_BUFFER_LVALUE->yy_ch_buf )", " YY_FATAL_ERROR( \"out of dynamic memory in yy_get_next_buffer()\" );", + " /* \"- 2\" to take care of EOB's */", + " YY_CURRENT_BUFFER_LVALUE->yy_buf_size = (int) (new_size - 2);", " }", "", " YY_G(yy_n_chars) += number_to_move;", @@ -1978,7 +2147,7 @@ const char *skel[] = { "", "%if-c-only", "%not-for-header", - " static yy_state_type yy_get_previous_state YYFARGS0(void)", + " static yy_state_type yy_get_previous_state (M4_YY_DEF_ONLY_ARG)", "%endif", "%if-c++-only", " yy_state_type yyFlexLexer::yy_get_previous_state()", @@ -2020,14 +2189,13 @@ const char *skel[] = { "}", "", "", + "#ifndef YY_NO_UNPUT", "%if-c-only", "m4_ifdef( [[M4_YY_NO_UNPUT]],,", "[[", - "#ifndef YY_NO_UNPUT", " static void yyunput YYFARGS2( int,c, char *,yy_bp)", "%endif", "%if-c++-only", - "#ifndef YY_NO_UNPUT", " void yyFlexLexer::yyunput( int c, char* yy_bp)", "%endif", "{", @@ -2042,7 +2210,7 @@ const char *skel[] = { " if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )", " { /* need to shift things up to make room */", " /* +2 for EOB chars. */", - " yy_size_t number_to_move = YY_G(yy_n_chars) + 2;", + " int number_to_move = YY_G(yy_n_chars) + 2;", " char *dest = &YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[", " YY_CURRENT_BUFFER_LVALUE->yy_buf_size + 2];", " char *source =", @@ -2054,7 +2222,7 @@ const char *skel[] = { " yy_cp += (int) (dest - source);", " yy_bp += (int) (dest - source);", " YY_CURRENT_BUFFER_LVALUE->yy_n_chars =", - " YY_G(yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_buf_size;", + " YY_G(yy_n_chars) = (int) YY_CURRENT_BUFFER_LVALUE->yy_buf_size;", "", " if ( yy_cp < YY_CURRENT_BUFFER_LVALUE->yy_ch_buf + 2 )", " YY_FATAL_ERROR( \"flex scanner push-back overflow\" );", @@ -2074,17 +2242,17 @@ const char *skel[] = { " YY_G(yy_hold_char) = *yy_cp;", " YY_G(yy_c_buf_p) = yy_cp;", "}", - "#endif /* ifndef YY_NO_UNPUT */", "%if-c-only", "]])", "%endif", + "#endif", "", "%if-c-only", "#ifndef YY_NO_INPUT", "#ifdef __cplusplus", - " static int yyinput YYFARGS0(void)", + " static int yyinput (M4_YY_DEF_ONLY_ARG)", "#else", - " static int input YYFARGS0(void)", + " static int input (M4_YY_DEF_ONLY_ARG)", "#endif", "", "%endif", @@ -2109,7 +2277,7 @@ const char *skel[] = { "", " else", " { /* need more input */", - " yy_size_t offset = YY_G(yy_c_buf_p) - YY_G(yytext_ptr);", + " int offset = (int) (YY_G(yy_c_buf_p) - YY_G(yytext_ptr));", " ++YY_G(yy_c_buf_p);", "", " switch ( yy_get_next_buffer( M4_YY_CALL_ONLY_ARG ) )", @@ -2133,7 +2301,7 @@ const char *skel[] = { " case EOB_ACT_END_OF_FILE:", " {", " if ( yywrap( M4_YY_CALL_ONLY_ARG ) )", - " return EOF;", + " return 0;", "", " if ( ! YY_G(yy_did_buffer_switch_on_eof) )", " YY_NEW_FILE;", @@ -2172,7 +2340,7 @@ const char *skel[] = { " void yyrestart YYFARGS1( FILE *,input_file)", "%endif", "%if-c++-only", - " void yyFlexLexer::yyrestart( std::istream* input_file )", + " void yyFlexLexer::yyrestart( std::istream& input_file )", "%endif", "{", " M4_YY_DECL_GUTS_VAR();", @@ -2187,6 +2355,21 @@ const char *skel[] = { " yy_load_buffer_state( M4_YY_CALL_ONLY_ARG );", "}", "", + "%if-c++-only", + "/** Delegate to the new version that takes an istream reference.", + " * @param input_file A readable stream.", + " * M4_YY_DOC_PARAM", + " * @note This function does not reset the start condition to @c INITIAL .", + " */", + "void yyFlexLexer::yyrestart( std::istream* input_file )", + "{", + " if( ! input_file ) {", + " input_file = &yyin;", + " }", + " yyrestart( *input_file );", + "}", + "%endif", + "", "/** Switch to a different input buffer.", " * @param new_buffer The new input buffer.", " * M4_YY_DOC_PARAM", @@ -2230,7 +2413,7 @@ const char *skel[] = { "", "", "%if-c-only", - "static void yy_load_buffer_state YYFARGS0(void)", + "static void yy_load_buffer_state (M4_YY_DEF_ONLY_ARG)", "%endif", "%if-c++-only", " void yyFlexLexer::yy_load_buffer_state()", @@ -2239,7 +2422,12 @@ const char *skel[] = { " M4_YY_DECL_GUTS_VAR();", " YY_G(yy_n_chars) = YY_CURRENT_BUFFER_LVALUE->yy_n_chars;", " YY_G(yytext_ptr) = YY_G(yy_c_buf_p) = YY_CURRENT_BUFFER_LVALUE->yy_buf_pos;", + "%if-c-only", " yyin = YY_CURRENT_BUFFER_LVALUE->yy_input_file;", + "%endif", + "%if-c++-only", + " yyin.rdbuf(YY_CURRENT_BUFFER_LVALUE->yy_input_file);", + "%endif", " YY_G(yy_hold_char) = *YY_G(yy_c_buf_p);", "}", "", @@ -2253,7 +2441,7 @@ const char *skel[] = { " YY_BUFFER_STATE yy_create_buffer YYFARGS2( FILE *,file, int ,size)", "%endif", "%if-c++-only", - " YY_BUFFER_STATE yyFlexLexer::yy_create_buffer( std::istream* file, int size )", + " YY_BUFFER_STATE yyFlexLexer::yy_create_buffer( std::istream& file, int size )", "%endif", "{", " YY_BUFFER_STATE b;", @@ -2268,7 +2456,7 @@ const char *skel[] = { " /* yy_ch_buf has to be 2 characters longer than the size given because", " * we need to put in 2 end-of-buffer characters.", " */", - " b->yy_ch_buf = (char *) yyalloc( b->yy_buf_size + 2 M4_YY_CALL_LAST_ARG );", + " b->yy_ch_buf = (char *) yyalloc( (yy_size_t) (b->yy_buf_size + 2) M4_YY_CALL_LAST_ARG );", " if ( ! b->yy_ch_buf )", " YY_FATAL_ERROR( \"out of dynamic memory in yy_create_buffer()\" );", "", @@ -2279,6 +2467,19 @@ const char *skel[] = { " return b;", "}", "", + "%if-c++-only", + "/** Delegate creation of buffers to the new version that takes an istream reference.", + " * @param file A readable stream.", + " * @param size The character buffer size in bytes. When in doubt, use @c YY_BUF_SIZE.", + " * M4_YY_DOC_PARAM", + " * @return the allocated buffer state.", + " */", + " YY_BUFFER_STATE yyFlexLexer::yy_create_buffer( std::istream* file, int size )", + "{", + " return yy_create_buffer( *file, size );", + "}", + "%endif", + "", "/** Destroy the buffer.", " * @param b a buffer created with yy_create_buffer()", " * M4_YY_DOC_PARAM", @@ -2313,7 +2514,7 @@ const char *skel[] = { " static void yy_init_buffer YYFARGS2( YY_BUFFER_STATE ,b, FILE *,file)", "%endif", "%if-c++-only", - " void yyFlexLexer::yy_init_buffer( YY_BUFFER_STATE b, std::istream* file )", + " void yyFlexLexer::yy_init_buffer( YY_BUFFER_STATE b, std::istream& file )", "%endif", "", "{", @@ -2322,7 +2523,12 @@ const char *skel[] = { "", " yy_flush_buffer( b M4_YY_CALL_LAST_ARG);", "", + "%if-c-only", " b->yy_input_file = file;", + "%endif", + "%if-c++-only", + " b->yy_input_file = file.rdbuf();", + "%endif", " b->yy_fill_buffer = 1;", "", " /* If b is the current buffer, then yy_init_buffer was _probably_", @@ -2435,7 +2641,7 @@ const char *skel[] = { " * M4_YY_DOC_PARAM", " */", "%if-c-only", - "void yypop_buffer_state YYFARGS0(void)", + "void yypop_buffer_state (M4_YY_DEF_ONLY_ARG)", "%endif", "%if-c++-only", "void yyFlexLexer::yypop_buffer_state (void)", @@ -2463,7 +2669,7 @@ const char *skel[] = { " * Guarantees space for at least one push.", " */", "%if-c-only", - "static void yyensure_buffer_stack YYFARGS0(void)", + "static void yyensure_buffer_stack (M4_YY_DEF_ONLY_ARG)", "%endif", "%if-c++-only", "void yyFlexLexer::yyensure_buffer_stack(void)", @@ -2478,16 +2684,16 @@ const char *skel[] = { " * scanner will even need a stack. We use 2 instead of 1 to avoid an", " * immediate realloc on the next call.", " */", - " num_to_alloc = 1;", + " num_to_alloc = 1; /* After all that talk, this was set to 1 anyways... */", " YY_G(yy_buffer_stack) = (struct yy_buffer_state**)yyalloc", " (num_to_alloc * sizeof(struct yy_buffer_state*)", " M4_YY_CALL_LAST_ARG);", " if ( ! YY_G(yy_buffer_stack) )", " YY_FATAL_ERROR( \"out of dynamic memory in yyensure_buffer_stack()\" );", - " ", - " ", + "", + "", " memset(YY_G(yy_buffer_stack), 0, num_to_alloc * sizeof(struct yy_buffer_state*));", - " ", + "", " YY_G(yy_buffer_stack_max) = num_to_alloc;", " YY_G(yy_buffer_stack_top) = 0;", " return;", @@ -2496,7 +2702,7 @@ const char *skel[] = { " if (YY_G(yy_buffer_stack_top) >= (YY_G(yy_buffer_stack_max)) - 1){", "", " /* Increase the buffer to prepare for a possible push. */", - " int grow_size = 8 /* arbitrary grow size */;", + " yy_size_t grow_size = 8 /* arbitrary grow size */;", "", " num_to_alloc = YY_G(yy_buffer_stack_max) + grow_size;", " YY_G(yy_buffer_stack) = (struct yy_buffer_state**)yyrealloc", @@ -2523,7 +2729,7 @@ const char *skel[] = { " * @param base the character buffer", " * @param size the size in bytes of the character buffer", " * M4_YY_DOC_PARAM", - " * @return the newly allocated buffer state object. ", + " * @return the newly allocated buffer state object.", " */", "YY_BUFFER_STATE yy_scan_buffer YYFARGS2( char *,base, yy_size_t ,size)", "{", @@ -2534,16 +2740,16 @@ const char *skel[] = { " base[size-2] != YY_END_OF_BUFFER_CHAR ||", " base[size-1] != YY_END_OF_BUFFER_CHAR )", " /* They forgot to leave room for the EOB's. */", - " return 0;", + " return NULL;", "", " b = (YY_BUFFER_STATE) yyalloc( sizeof( struct yy_buffer_state ) M4_YY_CALL_LAST_ARG );", " if ( ! b )", " YY_FATAL_ERROR( \"out of dynamic memory in yy_scan_buffer()\" );", "", - " b->yy_buf_size = size - 2; /* \"- 2\" to take care of EOB's */", + " b->yy_buf_size = (int) (size - 2); /* \"- 2\" to take care of EOB's */", " b->yy_buf_pos = b->yy_ch_buf = base;", " b->yy_is_our_buffer = 0;", - " b->yy_input_file = 0;", + " b->yy_input_file = NULL;", " b->yy_n_chars = b->yy_buf_size;", " b->yy_is_interactive = 0;", " b->yy_at_bol = 1;", @@ -2569,11 +2775,11 @@ const char *skel[] = { " * @note If you want to scan bytes that may contain NUL values, then use", " * yy_scan_bytes() instead.", " */", - "YY_BUFFER_STATE yy_scan_string YYFARGS1( yyconst char *, yystr)", + "YY_BUFFER_STATE yy_scan_string YYFARGS1( const char *, yystr)", "{", " m4_dnl M4_YY_DECL_GUTS_VAR();", "", - " return yy_scan_bytes( yystr, strlen(yystr) M4_YY_CALL_LAST_ARG);", + " return yy_scan_bytes( yystr, (int) strlen(yystr) M4_YY_CALL_LAST_ARG);", "}", "%endif", "]])", @@ -2589,16 +2795,16 @@ const char *skel[] = { " * M4_YY_DOC_PARAM", " * @return the newly allocated buffer state object.", " */", - "YY_BUFFER_STATE yy_scan_bytes YYFARGS2( yyconst char *,yybytes, yy_size_t ,_yybytes_len)", + "YY_BUFFER_STATE yy_scan_bytes YYFARGS2( const char *,yybytes, int ,_yybytes_len)", "{", " YY_BUFFER_STATE b;", " char *buf;", " yy_size_t n;", - " yy_size_t i;", + " int i;", " m4_dnl M4_YY_DECL_GUTS_VAR();", "", " /* Get memory for full buffer, including space for trailing EOB's. */", - " n = _yybytes_len + 2;", + " n = (yy_size_t) (_yybytes_len + 2);", " buf = (char *) yyalloc( n M4_YY_CALL_LAST_ARG );", " if ( ! buf )", " YY_FATAL_ERROR( \"out of dynamic memory in yy_scan_bytes()\" );", @@ -2626,10 +2832,10 @@ const char *skel[] = { "m4_ifdef( [[M4_YY_NO_PUSH_STATE]],,", "[[", "%if-c-only", - " static void yy_push_state YYFARGS1( int ,new_state)", + " static void yy_push_state YYFARGS1( int ,_new_state)", "%endif", "%if-c++-only", - " void yyFlexLexer::yy_push_state( int new_state )", + " void yyFlexLexer::yy_push_state( int _new_state )", "%endif", "{", " M4_YY_DECL_GUTS_VAR();", @@ -2638,7 +2844,7 @@ const char *skel[] = { " yy_size_t new_size;", "", " YY_G(yy_start_stack_depth) += YY_START_STACK_INCR;", - " new_size = YY_G(yy_start_stack_depth) * sizeof( int );", + " new_size = (yy_size_t) YY_G(yy_start_stack_depth) * sizeof( int );", "", " if ( ! YY_G(yy_start_stack) )", " YY_G(yy_start_stack) = (int *) yyalloc( new_size M4_YY_CALL_LAST_ARG );", @@ -2653,7 +2859,7 @@ const char *skel[] = { "", " YY_G(yy_start_stack)[YY_G(yy_start_stack_ptr)++] = YY_START;", "", - " BEGIN(new_state);", + " BEGIN(_new_state);", "}", "]])", "", @@ -2661,7 +2867,7 @@ const char *skel[] = { "m4_ifdef( [[M4_YY_NO_POP_STATE]],,", "[[", "%if-c-only", - " static void yy_pop_state YYFARGS0(void)", + " static void yy_pop_state (M4_YY_DEF_ONLY_ARG)", "%endif", "%if-c++-only", " void yyFlexLexer::yy_pop_state()", @@ -2679,7 +2885,7 @@ const char *skel[] = { "m4_ifdef( [[M4_YY_NO_TOP_STATE]],,", "[[", "%if-c-only", - " static int yy_top_state YYFARGS0(void)", + " static int yy_top_state (M4_YY_DEF_ONLY_ARG)", "%endif", "%if-c++-only", " int yyFlexLexer::yy_top_state()", @@ -2695,15 +2901,16 @@ const char *skel[] = { "#endif", "", "%if-c-only", - "static void yy_fatal_error YYFARGS1(yyconst char*, msg)", + "static void yynoreturn yy_fatal_error YYFARGS1(const char*, msg)", "{", - " m4_dnl M4_YY_DECL_GUTS_VAR();", - " (void) fprintf( stderr, \"%s\\n\", msg );", + " M4_YY_DECL_GUTS_VAR();", + " M4_YY_NOOP_GUTS_VAR();", + " fprintf( stderr, \"%s\\n\", msg );", " exit( YY_EXIT_FAILURE );", "}", "%endif", "%if-c++-only", - "void yyFlexLexer::LexerError( yyconst char msg[] )", + "void yyFlexLexer::LexerError( const char* msg )", "{", " M4_YY_DECL_GUTS_VAR();", " std::cerr << msg << std::endl;", @@ -2739,7 +2946,7 @@ const char *skel[] = { "/** Get the user-defined data for this scanner.", " * M4_YY_DOC_PARAM", " */", - "YY_EXTRA_TYPE yyget_extra YYFARGS0(void)", + "YY_EXTRA_TYPE yyget_extra (M4_YY_DEF_ONLY_ARG)", "{", " M4_YY_DECL_GUTS_VAR();", " return yyextra;", @@ -2752,10 +2959,10 @@ const char *skel[] = { "/** Get the current line number.", " * M4_YY_DOC_PARAM", " */", - "int yyget_lineno YYFARGS0(void)", + "int yyget_lineno (M4_YY_DEF_ONLY_ARG)", "{", " M4_YY_DECL_GUTS_VAR();", - " ", + "", " m4_ifdef( [[M4_YY_REENTRANT]],", " [[", " if (! YY_CURRENT_BUFFER)", @@ -2772,10 +2979,10 @@ const char *skel[] = { "/** Get the current column number.", " * M4_YY_DOC_PARAM", " */", - "int yyget_column YYFARGS0(void)", + "int yyget_column (M4_YY_DEF_ONLY_ARG)", "{", " M4_YY_DECL_GUTS_VAR();", - " ", + "", " m4_ifdef( [[M4_YY_REENTRANT]],", " [[", " if (! YY_CURRENT_BUFFER)", @@ -2791,7 +2998,7 @@ const char *skel[] = { "/** Get the input stream.", " * M4_YY_DOC_PARAM", " */", - "FILE *yyget_in YYFARGS0(void)", + "FILE *yyget_in (M4_YY_DEF_ONLY_ARG)", "{", " M4_YY_DECL_GUTS_VAR();", " return yyin;", @@ -2803,7 +3010,7 @@ const char *skel[] = { "/** Get the output stream.", " * M4_YY_DOC_PARAM", " */", - "FILE *yyget_out YYFARGS0(void)", + "FILE *yyget_out (M4_YY_DEF_ONLY_ARG)", "{", " M4_YY_DECL_GUTS_VAR();", " return yyout;", @@ -2815,7 +3022,7 @@ const char *skel[] = { "/** Get the length of the current token.", " * M4_YY_DOC_PARAM", " */", - "yy_size_t yyget_leng YYFARGS0(void)", + "int yyget_leng (M4_YY_DEF_ONLY_ARG)", "{", " M4_YY_DECL_GUTS_VAR();", " return yyleng;", @@ -2827,7 +3034,7 @@ const char *skel[] = { " */", "m4_ifdef( [[M4_YY_NO_GET_TEXT]],,", "[[", - "char *yyget_text YYFARGS0(void)", + "char *yyget_text (M4_YY_DEF_ONLY_ARG)", "{", " M4_YY_DECL_GUTS_VAR();", " return yytext;", @@ -2852,10 +3059,10 @@ const char *skel[] = { "m4_ifdef( [[M4_YY_NO_SET_LINENO]],,", "[[", "/** Set the current line number.", - " * @param line_number", + " * @param _line_number line number", " * M4_YY_DOC_PARAM", " */", - "void yyset_lineno YYFARGS1( int ,line_number)", + "void yyset_lineno YYFARGS1( int ,_line_number)", "{", " M4_YY_DECL_GUTS_VAR();", "", @@ -2865,7 +3072,7 @@ const char *skel[] = { " if (! YY_CURRENT_BUFFER )", " YY_FATAL_ERROR( \"yyset_lineno called with no buffer\" );", " ]])", - " yylineno = line_number;", + " yylineno = _line_number;", "}", "]])", "", @@ -2874,10 +3081,10 @@ const char *skel[] = { "m4_ifdef( [[M4_YY_NO_SET_COLUMN]],,", "[[", "/** Set the current column.", - " * @param line_number", + " * @param _column_no column number", " * M4_YY_DOC_PARAM", " */", - "void yyset_column YYFARGS1( int , column_no)", + "void yyset_column YYFARGS1( int , _column_no)", "{", " M4_YY_DECL_GUTS_VAR();", "", @@ -2887,7 +3094,7 @@ const char *skel[] = { " if (! YY_CURRENT_BUFFER )", " YY_FATAL_ERROR( \"yyset_column called with no buffer\" );", " ]])", - " yycolumn = column_no;", + " yycolumn = _column_no;", "}", "]])", "]])", @@ -2897,30 +3104,30 @@ const char *skel[] = { "[[", "/** Set the input stream. This does not discard the current", " * input buffer.", - " * @param in_str A readable stream.", + " * @param _in_str A readable stream.", " * M4_YY_DOC_PARAM", " * @see yy_switch_to_buffer", " */", - "void yyset_in YYFARGS1( FILE * ,in_str)", + "void yyset_in YYFARGS1( FILE * ,_in_str)", "{", " M4_YY_DECL_GUTS_VAR();", - " yyin = in_str ;", + " yyin = _in_str ;", "}", "]])", "", "m4_ifdef( [[M4_YY_NO_SET_OUT]],,", "[[", - "void yyset_out YYFARGS1( FILE * ,out_str)", + "void yyset_out YYFARGS1( FILE * ,_out_str)", "{", " M4_YY_DECL_GUTS_VAR();", - " yyout = out_str ;", + " yyout = _out_str ;", "}", "]])", "", "", "m4_ifdef( [[M4_YY_NO_GET_DEBUG]],,", "[[", - "int yyget_debug YYFARGS0(void)", + "int yyget_debug (M4_YY_DEF_ONLY_ARG)", "{", " M4_YY_DECL_GUTS_VAR();", " return yy_flex_debug;", @@ -2929,10 +3136,10 @@ const char *skel[] = { "", "m4_ifdef( [[M4_YY_NO_SET_DEBUG]],,", "[[", - "void yyset_debug YYFARGS1( int ,bdebug)", + "void yyset_debug YYFARGS1( int ,_bdebug)", "{", " M4_YY_DECL_GUTS_VAR();", - " yy_flex_debug = bdebug ;", + " yy_flex_debug = _bdebug ;", "}", "]])", "%endif", @@ -2943,7 +3150,7 @@ const char *skel[] = { "%if-bison-bridge", "m4_ifdef( [[M4_YY_NO_GET_LVAL]],,", "[[", - "YYSTYPE * yyget_lval YYFARGS0(void)", + "YYSTYPE * yyget_lval (M4_YY_DEF_ONLY_ARG)", "{", " M4_YY_DECL_GUTS_VAR();", " return yylval;", @@ -2963,7 +3170,7 @@ const char *skel[] = { "[[", " m4_ifdef( [[M4_YY_NO_GET_LLOC]],,", " [[", - "YYLTYPE *yyget_lloc YYFARGS0(void)", + "YYLTYPE *yyget_lloc (M4_YY_DEF_ONLY_ARG)", "{", " M4_YY_DECL_GUTS_VAR();", " return yylloc;", @@ -2989,14 +3196,7 @@ const char *skel[] = { " * the ONLY reentrant function that doesn't take the scanner as the last argument.", " * That's why we explicitly handle the declaration, instead of using our macros.", " */", - "m4_ifdef( [[M4_YY_NO_ANSI_FUNC_DEFS]],", - "[[", - "int yylex_init( ptr_yy_globals )", - " yyscan_t* ptr_yy_globals;", - "]],", - "[[", "int yylex_init(yyscan_t* ptr_yy_globals)", - "]])", "{", " if (ptr_yy_globals == NULL){", " errno = EINVAL;", @@ -3024,15 +3224,7 @@ const char *skel[] = { " * The user defined value in the first argument will be available to yyalloc in", " * the yyextra field.", " */", - "m4_ifdef( [[M4_YY_NO_ANSI_FUNC_DEFS]],", - "[[", - "int yylex_init_extra( yy_user_defined, ptr_yy_globals )", - " YY_EXTRA_TYPE yy_user_defined;", - " yyscan_t* ptr_yy_globals;", - "]],", - "[[", "int yylex_init_extra( YY_EXTRA_TYPE yy_user_defined, yyscan_t* ptr_yy_globals )", - "]])", "{", " struct yyguts_t dummy_yyguts;", "", @@ -3042,28 +3234,27 @@ const char *skel[] = { " errno = EINVAL;", " return 1;", " }", - " ", + "", " *ptr_yy_globals = (yyscan_t) yyalloc ( sizeof( struct yyguts_t ), &dummy_yyguts );", - " ", + "", " if (*ptr_yy_globals == NULL){", " errno = ENOMEM;", " return 1;", " }", - " ", + "", " /* By setting to 0xAA, we expose bugs in", " yy_init_globals. Leave at 0x00 for releases. */", " memset(*ptr_yy_globals,0x00,sizeof(struct yyguts_t));", - " ", + "", " yyset_extra (yy_user_defined, *ptr_yy_globals);", - " ", + "", " return yy_init_globals ( *ptr_yy_globals );", "}", "", "%endif if-c-only", "", - "", "%if-c-only", - "static int yy_init_globals YYFARGS0(void)", + "static int yy_init_globals (M4_YY_DEF_ONLY_ARG)", "{", " M4_YY_DECL_GUTS_VAR();", " /* Initialization is the same as for the non-reentrant scanner.", @@ -3078,10 +3269,10 @@ const char *skel[] = { " yylineno = 1;", " ]])", "]])", - " YY_G(yy_buffer_stack) = 0;", + " YY_G(yy_buffer_stack) = NULL;", " YY_G(yy_buffer_stack_top) = 0;", " YY_G(yy_buffer_stack_max) = 0;", - " YY_G(yy_c_buf_p) = (char *) 0;", + " YY_G(yy_c_buf_p) = NULL;", " YY_G(yy_init) = 0;", " YY_G(yy_start) = 0;", "", @@ -3112,8 +3303,8 @@ const char *skel[] = { " yyin = stdin;", " yyout = stdout;", "#else", - " yyin = (FILE *) 0;", - " yyout = (FILE *) 0;", + " yyin = NULL;", + " yyout = NULL;", "#endif", "", " /* For future reference: Set errno on error, since we are called by", @@ -3126,7 +3317,7 @@ const char *skel[] = { "", "%if-c-only SNIP! this currently causes conflicts with the c++ scanner", "/* yylex_destroy is for both reentrant and non-reentrant scanners. */", - "int yylex_destroy YYFARGS0(void)", + "int yylex_destroy (M4_YY_DEF_ONLY_ARG)", "{", " M4_YY_DECL_GUTS_VAR();", "", @@ -3178,8 +3369,11 @@ const char *skel[] = { "m4_ifdef( [[M4_YY_NOT_IN_HEADER]],", "[[", "#ifndef yytext_ptr", - "static void yy_flex_strncpy YYFARGS3( char*,s1, yyconst char *,s2, int,n)", + "static void yy_flex_strncpy YYFARGS3( char*,s1, const char *,s2, int,n)", "{", + " M4_YY_DECL_GUTS_VAR();", + " M4_YY_NOOP_GUTS_VAR();", + "", " int i;", " for ( i = 0; i < n; ++i )", " s1[i] = s2[i];", @@ -3190,7 +3384,7 @@ const char *skel[] = { "m4_ifdef( [[M4_YY_NOT_IN_HEADER]],", "[[", "#ifdef YY_NEED_STRLEN", - "static int yy_flex_strlen YYFARGS1( yyconst char *,s)", + "static int yy_flex_strlen YYFARGS1( const char *,s)", "{", " int n;", " for ( n = 0; s[n]; ++n )", @@ -3205,7 +3399,9 @@ const char *skel[] = { "[[", "void *yyalloc YYFARGS1( yy_size_t ,size)", "{", - " return (void *) malloc( size );", + " M4_YY_DECL_GUTS_VAR();", + " M4_YY_NOOP_GUTS_VAR();", + " return malloc(size);", "}", "]])", "", @@ -3213,6 +3409,9 @@ const char *skel[] = { "[[", "void *yyrealloc YYFARGS2( void *,ptr, yy_size_t ,size)", "{", + " M4_YY_DECL_GUTS_VAR();", + " M4_YY_NOOP_GUTS_VAR();", + "", " /* The cast to (char *) in the following accommodates both", " * implementations that use char* generic pointers, and those", " * that use void* generic pointers. It works with the latter", @@ -3220,7 +3419,7 @@ const char *skel[] = { " * any pointer type to void*, and deal with argument conversions", " * as though doing an assignment.", " */", - " return (void *) realloc( (char *) ptr, size );", + " return realloc(ptr, size);", "}", "]])", "", @@ -3228,6 +3427,8 @@ const char *skel[] = { "[[", "void yyfree YYFARGS1( void *,ptr)", "{", + " M4_YY_DECL_GUTS_VAR();", + " M4_YY_NOOP_GUTS_VAR();", " free( (char *) ptr ); /* see yyrealloc() for (char *) cast */", "}", "]])", @@ -3287,12 +3488,12 @@ const char *skel[] = { "", "/** Get the number of integers in this table. This is NOT the", " * same thing as the number of elements.", - " * @param td the table ", + " * @param tbl the table", " * @return the number of integers in the table", " */", "yyskel_static flex_int32_t yytbl_calc_total_len (const struct yytbl_data *tbl)", "{", - " flex_int32_t n;", + " flex_uint32_t n;", "", " /* total number of ints */", " n = tbl->td_lolen;", @@ -3301,7 +3502,7 @@ const char *skel[] = { "", " if (tbl->td_id == YYTD_ID_TRANSITION)", " n *= 2;", - " return n;", + " return (flex_int32_t) n;", "}", "", "", @@ -3312,7 +3513,7 @@ const char *skel[] = { " errno = EIO;", " return -1;", " }", - " rd->bread += sizeof(flex_uint8_t);", + " rd->bread += (flex_uint32_t) sizeof(flex_uint8_t);", " return 0;", "}", "", @@ -3324,7 +3525,7 @@ const char *skel[] = { " return -1;", " }", " *((flex_uint16_t *) v) = ntohs (*((flex_uint16_t *) v));", - " rd->bread += sizeof(flex_uint16_t);", + " rd->bread += (flex_uint32_t) sizeof(flex_uint16_t);", " return 0;", "}", "", @@ -3336,14 +3537,14 @@ const char *skel[] = { " return -1;", " }", " *((flex_uint32_t *) v) = ntohl (*((flex_uint32_t *) v));", - " rd->bread += sizeof(flex_uint32_t);", + " rd->bread += (flex_uint32_t) sizeof(flex_uint32_t);", " return 0;", "}", "", "/** Read the header */", "static int yytbl_hdr_read YYFARGS2(struct yytbl_hdr *, th, struct yytbl_reader *, rd)", "{", - " int bytes;", + " size_t bytes;", " memset (th, 0, sizeof (struct yytbl_hdr));", "", " if (yytbl_read32 (&(th->th_magic), rd) != 0)", @@ -3379,7 +3580,7 @@ const char *skel[] = { " return -1;", " }", " else", - " rd->bread += bytes;", + " rd->bread += (flex_uint32_t) bytes;", "", " th->th_name = th->th_version + strlen (th->th_version) + 1;", " return 0;", @@ -3392,15 +3593,18 @@ const char *skel[] = { "static struct yytbl_dmap *yytbl_dmap_lookup YYFARGS2(struct yytbl_dmap *, dmap,", " int, id)", "{", + " M4_YY_DECL_GUTS_VAR();", + " M4_YY_NOOP_GUTS_VAR();", + "", " while (dmap->dm_id)", - " if (dmap->dm_id == id)", + " if ((int)(dmap->dm_id) == id)", " return dmap;", " else", " dmap++;", " return NULL;", "}", "", - "/** Read a table while mapping its contents to the local array. ", + "/** Read a table while mapping its contents to the local array.", " * @param dmap used to performing mapping", " * @return 0 on success", " */", @@ -3445,7 +3649,7 @@ const char *skel[] = { "", " if(M4_YY_TABLES_VERIFY)", " /* We point to the array itself */", - " p = dmap->dm_arr; ", + " p = dmap->dm_arr;", " else", " /* We point to the address of a pointer. */", " *dmap->dm_arr = p = (void *) yyalloc (bytes M4_YY_CALL_LAST_ARG);", @@ -3492,7 +3696,7 @@ const char *skel[] = { " rv = yytbl_read8 (&t8, rd);", " t32 = t8;", " break;", - " default: ", + " default:", " YY_FATAL_ERROR( \"invalid td_flags\" ); /* TODO: not fatal. */", " return -1;", " }", @@ -3549,7 +3753,7 @@ const char *skel[] = { " YY_FATAL_ERROR( \"transition table not found\" ); /* TODO: not fatal. */", " return -1;", " }", - " ", + "", " if( M4_YY_TABLES_VERIFY)", " v = &(((struct yy_trans_info *) (transdmap->dm_arr))[t32]);", " else", @@ -3560,7 +3764,7 @@ const char *skel[] = { " YY_FATAL_ERROR( \"tables verification failed at YYTD_PTRANS\" );", " }else", " ((struct yy_trans_info **) p)[0] = v;", - " ", + "", " /* increment p */", " p = (struct yy_trans_info **) p + 1;", " }", @@ -3675,8 +3879,8 @@ const char *skel[] = { "}", "", "/** Destroy the loaded tables, freeing memory, etc.. */", - "int yytables_destroy YYFARGS0(void)", - "{ ", + "int yytables_destroy (M4_YY_DEF_ONLY_ARG)", + "{", " struct yytbl_dmap *dmap=0;", "", " if(!M4_YY_TABLES_VERIFY){", @@ -3699,7 +3903,7 @@ const char *skel[] = { "", "", "m4_ifdef([[M4_YY_MAIN]], [[", - "int main M4_YY_PARAMS(void);", + "int main (void);", "", "int main ()", "{", @@ -3733,6 +3937,151 @@ const char *skel[] = { "#undef YY_DECL_IS_OURS", "#undef YY_DECL", "#endif", + "", + "[[#ifndef ]]M4_YY_PREFIX[[_create_buffer_ALREADY_DEFINED", + "#undef yy_create_buffer", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[_delete_buffer_ALREADY_DEFINED", + "#undef yy_delete_buffer", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[_scan_buffer_ALREADY_DEFINED", + "#undef yy_scan_buffer", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[_scan_string_ALREADY_DEFINED", + "#undef yy_scan_string", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[_scan_bytes_ALREADY_DEFINED", + "#undef yy_scan_bytes", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[_init_buffer_ALREADY_DEFINED", + "#undef yy_init_buffer", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[_flush_buffer_ALREADY_DEFINED", + "#undef yy_flush_buffer", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[_load_buffer_state_ALREADY_DEFINED", + "#undef yy_load_buffer_state", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[_switch_to_buffer_ALREADY_DEFINED", + "#undef yy_switch_to_buffer", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[push_buffer_state_ALREADY_DEFINED", + "#undef yypush_buffer_state", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[pop_buffer_state_ALREADY_DEFINED", + "#undef yypop_buffer_state", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[ensure_buffer_stack_ALREADY_DEFINED", + "#undef yyensure_buffer_stack", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[lex_ALREADY_DEFINED", + "#undef yylex", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[restart_ALREADY_DEFINED", + "#undef yyrestart", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[lex_init_ALREADY_DEFINED", + "#undef yylex_init", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[lex_init_extra_ALREADY_DEFINED", + "#undef yylex_init_extra", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[lex_destroy_ALREADY_DEFINED", + "#undef yylex_destroy", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[get_debug_ALREADY_DEFINED", + "#undef yyget_debug", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[set_debug_ALREADY_DEFINED", + "#undef yyset_debug", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[get_extra_ALREADY_DEFINED", + "#undef yyget_extra", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[set_extra_ALREADY_DEFINED", + "#undef yyset_extra", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[get_in_ALREADY_DEFINED", + "#undef yyget_in", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[set_in_ALREADY_DEFINED", + "#undef yyset_in", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[get_out_ALREADY_DEFINED", + "#undef yyget_out", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[set_out_ALREADY_DEFINED", + "#undef yyset_out", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[get_leng_ALREADY_DEFINED", + "#undef yyget_leng", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[get_text_ALREADY_DEFINED", + "#undef yyget_text", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[get_lineno_ALREADY_DEFINED", + "#undef yyget_lineno", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[set_lineno_ALREADY_DEFINED", + "#undef yyset_lineno", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[get_column_ALREADY_DEFINED", + "#undef yyget_column", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[set_column_ALREADY_DEFINED", + "#undef yyset_column", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[wrap_ALREADY_DEFINED", + "#undef yywrap", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[get_lval_ALREADY_DEFINED", + "#undef yyget_lval", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[set_lval_ALREADY_DEFINED", + "#undef yyset_lval", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[get_lloc_ALREADY_DEFINED", + "#undef yyget_lloc", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[set_lloc_ALREADY_DEFINED", + "#undef yyset_lloc", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[alloc_ALREADY_DEFINED", + "#undef yyalloc", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[realloc_ALREADY_DEFINED", + "#undef yyrealloc", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[free_ALREADY_DEFINED", + "#undef yyfree", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[text_ALREADY_DEFINED", + "#undef yytext", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[leng_ALREADY_DEFINED", + "#undef yyleng", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[in_ALREADY_DEFINED", + "#undef yyin", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[out_ALREADY_DEFINED", + "#undef yyout", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[_flex_debug_ALREADY_DEFINED", + "#undef yy_flex_debug", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[lineno_ALREADY_DEFINED", + "#undef yylineno", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[tables_fload_ALREADY_DEFINED", + "#undef yytables_fload", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[tables_destroy_ALREADY_DEFINED", + "#undef yytables_destroy", + "#endif]]", + "[[#ifndef ]]M4_YY_PREFIX[[TABLES_NAME_ALREADY_DEFINED", + "#undef yyTABLES_NAME", + "#endif]]", "]])", 0 }; diff --git a/usr.bin/lex/lex.1 b/usr.bin/lex/lex.1 index 83d3a0c12aac2..1f2c738868249 100644 --- a/usr.bin/lex/lex.1 +++ b/usr.bin/lex/lex.1 @@ -1,6 +1,6 @@ .\" $FreeBSD$ .\" -.TH FLEX 1 "May 21, 2013" "Version 2.5.37" +.TH FLEX 1 "May 6, 2017" "Version 2.6.4" .SH NAME flex, lex \- fast lexical analyzer generator .SH SYNOPSIS diff --git a/usr.bin/lex/lib/Makefile b/usr.bin/lex/lib/Makefile index 0bca11f2113e9..dfffe96159f3b 100644 --- a/usr.bin/lex/lib/Makefile +++ b/usr.bin/lex/lib/Makefile @@ -2,7 +2,7 @@ .include <src.opts.mk> -.PATH: ${SRCTOP}/contrib/flex +.PATH: ${SRCTOP}/contrib/flex/src LIB= ln SRCS= libmain.c libyywrap.c diff --git a/usr.bin/lex/version.awk b/usr.bin/lex/version.awk index 3d34093bef6d0..434c1388682ca 100644 --- a/usr.bin/lex/version.awk +++ b/usr.bin/lex/version.awk @@ -6,8 +6,6 @@ BEGIN { { if ($1 ~ /^#define$/ && $2 ~ /^VERSION$/) { - printf("-DFLEX_MAJOR_VERSION=%s\n", $3); - printf("-DFLEX_MINOR_VERSION=%s\n", $4); - printf("-DFLEX_SUBMINOR_VERSION=%s\n", $5); + printf("%s.%s.%s\n", $3, $4, $5); } } |