mirror of
				https://github.com/asterisk/asterisk.git
				synced 2025-10-31 10:47:18 +00:00 
			
		
		
		
	Merged revisions 309033-309034 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.6.2 ........ r309033 | tilghman | 2011-02-28 04:43:12 -0600 (Mon, 28 Feb 2011) | 4 lines A later version of flex already includes the fwrite workaround code, which if used twice causes a compilation error. Detect whether Flex will compile without the workaround; if so, suppress our workaround code. ........ r309034 | tilghman | 2011-02-28 05:07:52 -0600 (Mon, 28 Feb 2011) | 2 lines Clarify meaning, removing double negative (stupid!) ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@309035 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
		
							
								
								
									
										41
									
								
								configure.ac
									
									
									
									
									
								
							
							
						
						
									
										41
									
								
								configure.ac
									
									
									
									
									
								
							| @@ -295,6 +295,47 @@ __EOL__ | |||||||
| 		rm -rf ${tmp} | 		rm -rf ${tmp} | ||||||
| 	fi | 	fi | ||||||
| 	]) | 	]) | ||||||
|  | AC_CACHE_CHECK([for flex that ignores fwrite return value], [ac_cv_FLEX_WORKAROUND], [ | ||||||
|  | 	if test "x$FLEX" != "x:" ; then | ||||||
|  | 		# Create a temporary directory $tmp in $TMPDIR (default /tmp). | ||||||
|  | 		# Use mktemp if possible; otherwise fall back on mkdir, | ||||||
|  | 		# with $RANDOM to make collisions less likely. | ||||||
|  | 		: ${TMPDIR=/tmp} | ||||||
|  | 		{ | ||||||
|  | 		  tmp=` | ||||||
|  | 		    (umask 077 && mktemp -d "$TMPDIR/fooXXXXXX") 2>/dev/null | ||||||
|  | 		  ` && | ||||||
|  | 		  test -n "$tmp" && test -d "$tmp" | ||||||
|  | 		} || { | ||||||
|  | 		  tmp=$TMPDIR/foo$$-$RANDOM | ||||||
|  | 		  (umask 077 && mkdir "$tmp") | ||||||
|  | 		} || exit $? | ||||||
|  | 		cat >$tmp/test.fl <<__EOL__ | ||||||
|  | %{ | ||||||
|  | #include <unistd.h> | ||||||
|  | #include <stdio.h> | ||||||
|  | static void yyunput (int c,char *buf_ptr  ) __attribute__((unused)); | ||||||
|  | static int input(void) __attribute__((unused)); | ||||||
|  | %} | ||||||
|  |  | ||||||
|  | %% | ||||||
|  | username    printf( "%s", getlogin() ); | ||||||
|  | __EOL__ | ||||||
|  | 		${FLEX} -o ${tmp}/test.c ${tmp}/test.fl | ||||||
|  | 		${CC} -o ${tmp}/test.o -c ${tmp}/test.c -Wall -Werror >/dev/null 2>&1 | ||||||
|  | 		if test -e "${tmp}/test.o"; then | ||||||
|  | 			ac_cv_FLEX_WORKAROUND=no | ||||||
|  | 		else | ||||||
|  | 			ac_cv_FLEX_WORKAROUND=yes | ||||||
|  | 		fi | ||||||
|  | 		rm -rf ${tmp} | ||||||
|  | 	fi | ||||||
|  | 	]) | ||||||
|  |  | ||||||
|  | if test "x${ac_cv_FLEX_WORKAROUND}" = "xyes"; then | ||||||
|  | 	AC_DEFINE([NEED_FLEX_FWRITE_WORKAROUND], 1, [Define to 1 if your system has a version of flex that does not check the return value of fwrite.]) | ||||||
|  | fi | ||||||
|  |  | ||||||
| if test "x${ac_cv_path_BISON2}" = "x" ; then | if test "x${ac_cv_path_BISON2}" = "x" ; then | ||||||
| 	BISON=: | 	BISON=: | ||||||
| 	PBX_BISON=0 | 	PBX_BISON=0 | ||||||
|   | |||||||
| @@ -1091,6 +1091,10 @@ | |||||||
| /* Build chan_misdn for mISDN 1.2 or later. */ | /* Build chan_misdn for mISDN 1.2 or later. */ | ||||||
| #undef MISDN_1_2 | #undef MISDN_1_2 | ||||||
|  |  | ||||||
|  | /* Define to 1 if your system has a version of flex that does not check the | ||||||
|  |    return value of fwrite. */ | ||||||
|  | #undef NEED_FLEX_FWRITE_WORKAROUND | ||||||
|  |  | ||||||
| /* Define to the address where bug reports for this package should be sent. */ | /* Define to the address where bug reports for this package should be sent. */ | ||||||
| #undef PACKAGE_BUGREPORT | #undef PACKAGE_BUGREPORT | ||||||
|  |  | ||||||
|   | |||||||
| @@ -65,10 +65,12 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$") | |||||||
| #include "asterisk/channel.h" | #include "asterisk/channel.h" | ||||||
| #endif | #endif | ||||||
|  |  | ||||||
| /*!\note The latest Flex uses fwrite without checking its return value, which | #ifdef NEED_FLEX_FWRITE_WORKAROUND | ||||||
|  | /*!\note Some versions of Flex use fwrite without checking its return value, which | ||||||
|  * is a warning on some compilers.  Therefore, we use this workaround, to trick |  * is a warning on some compilers.  Therefore, we use this workaround, to trick | ||||||
|  * the compiler into suppressing this warning. */ |  * the compiler into suppressing this warning. */ | ||||||
| #define fwrite(a,b,c,d)	do { int __res = fwrite(a,b,c,d); (__res); } while (0) | #define fwrite(a,b,c,d)	do { int __res = fwrite(a,b,c,d); (__res); } while (0) | ||||||
|  | #endif | ||||||
|  |  | ||||||
| enum valtype { | enum valtype { | ||||||
| 	AST_EXPR_number, AST_EXPR_numeric_string, AST_EXPR_string | 	AST_EXPR_number, AST_EXPR_numeric_string, AST_EXPR_string | ||||||
|   | |||||||
| @@ -56,7 +56,6 @@ typedef int flex_int32_t; | |||||||
| typedef unsigned char flex_uint8_t;  | typedef unsigned char flex_uint8_t;  | ||||||
| typedef unsigned short int flex_uint16_t; | typedef unsigned short int flex_uint16_t; | ||||||
| typedef unsigned int flex_uint32_t; | typedef unsigned int flex_uint32_t; | ||||||
| #endif /* ! C99 */ |  | ||||||
|  |  | ||||||
| /* Limits of integral types. */ | /* Limits of integral types. */ | ||||||
| #ifndef INT8_MIN | #ifndef INT8_MIN | ||||||
| @@ -87,6 +86,8 @@ typedef unsigned int flex_uint32_t; | |||||||
| #define UINT32_MAX             (4294967295U) | #define UINT32_MAX             (4294967295U) | ||||||
| #endif | #endif | ||||||
|  |  | ||||||
|  | #endif /* ! C99 */ | ||||||
|  |  | ||||||
| #endif /* ! FLEXINT_H */ | #endif /* ! FLEXINT_H */ | ||||||
|  |  | ||||||
| #ifdef __cplusplus | #ifdef __cplusplus | ||||||
| @@ -160,7 +161,15 @@ typedef void* yyscan_t; | |||||||
|  |  | ||||||
| /* Size of default input buffer. */ | /* Size of default input buffer. */ | ||||||
| #ifndef YY_BUF_SIZE | #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 | #define YY_BUF_SIZE 16384 | ||||||
|  | #endif /* __ia64__ */ | ||||||
| #endif | #endif | ||||||
|  |  | ||||||
| /* The state buf must be large enough to hold one state per character in the main buffer. | /* The state buf must be large enough to hold one state per character in the main buffer. | ||||||
| @@ -550,10 +559,12 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$") | |||||||
| #include "asterisk/channel.h" | #include "asterisk/channel.h" | ||||||
| #endif | #endif | ||||||
|  |  | ||||||
| /*!\note The latest Flex uses fwrite without checking its return value, which | #ifdef NEED_FLEX_FWRITE_WORKAROUND | ||||||
|  | /*!\note Some versions of Flex use fwrite without checking its return value, which | ||||||
|  * is a warning on some compilers.  Therefore, we use this workaround, to trick |  * is a warning on some compilers.  Therefore, we use this workaround, to trick | ||||||
|  * the compiler into suppressing this warning. */ |  * the compiler into suppressing this warning. */ | ||||||
| #define fwrite(a,b,c,d)	do { int __res = fwrite(a,b,c,d); (__res); } while (0) | #define fwrite(a,b,c,d)	do { int __res = fwrite(a,b,c,d); (__res); } while (0) | ||||||
|  | #endif | ||||||
|  |  | ||||||
| enum valtype { | enum valtype { | ||||||
| 	AST_EXPR_number, AST_EXPR_numeric_string, AST_EXPR_string | 	AST_EXPR_number, AST_EXPR_numeric_string, AST_EXPR_string | ||||||
| @@ -600,7 +611,7 @@ int ast_yyget_column(yyscan_t yyscanner); | |||||||
| static int curlycount = 0; | static int curlycount = 0; | ||||||
| static char *expr2_token_subst(const char *mess); | static char *expr2_token_subst(const char *mess); | ||||||
|  |  | ||||||
| #line 602 "ast_expr2f.c" | #line 613 "ast_expr2f.c" | ||||||
|  |  | ||||||
| #define INITIAL 0 | #define INITIAL 0 | ||||||
| #define var 1 | #define var 1 | ||||||
| @@ -739,7 +750,12 @@ static int input (yyscan_t yyscanner ); | |||||||
|  |  | ||||||
| /* Amount of stuff to slurp up with each read. */ | /* Amount of stuff to slurp up with each read. */ | ||||||
| #ifndef YY_READ_BUF_SIZE | #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 | #define YY_READ_BUF_SIZE 8192 | ||||||
|  | #endif /* __ia64__ */ | ||||||
| #endif | #endif | ||||||
|  |  | ||||||
| /* Copy whatever the last rule matched to the standard output. */ | /* Copy whatever the last rule matched to the standard output. */ | ||||||
| @@ -747,7 +763,7 @@ static int input (yyscan_t yyscanner ); | |||||||
| /* This used to be an fputs(), but since the string might contain NUL's, | /* This used to be an fputs(), but since the string might contain NUL's, | ||||||
|  * we now use fwrite(). |  * we now use fwrite(). | ||||||
|  */ |  */ | ||||||
| #define ECHO fwrite( yytext, yyleng, 1, yyout ) | #define ECHO do { if (fwrite( yytext, yyleng, 1, yyout )) {} } while (0) | ||||||
| #endif | #endif | ||||||
|  |  | ||||||
| /* Gets input and stuffs it into "buf".  number of characters read, or YY_NULL, | /* Gets input and stuffs it into "buf".  number of characters read, or YY_NULL, | ||||||
| @@ -758,7 +774,7 @@ static int input (yyscan_t yyscanner ); | |||||||
| 	if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \ | 	if ( YY_CURRENT_BUFFER_LVALUE->yy_is_interactive ) \ | ||||||
| 		{ \ | 		{ \ | ||||||
| 		int c = '*'; \ | 		int c = '*'; \ | ||||||
| 		int n; \ | 		size_t n; \ | ||||||
| 		for ( n = 0; n < max_size && \ | 		for ( n = 0; n < max_size && \ | ||||||
| 			     (c = getc( yyin )) != EOF && c != '\n'; ++n ) \ | 			     (c = getc( yyin )) != EOF && c != '\n'; ++n ) \ | ||||||
| 			buf[n] = (char) c; \ | 			buf[n] = (char) c; \ | ||||||
| @@ -843,10 +859,10 @@ YY_DECL | |||||||
| 	register int yy_act; | 	register int yy_act; | ||||||
|     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; |     struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; | ||||||
|  |  | ||||||
| #line 130 "ast_expr2.fl" | #line 132 "ast_expr2.fl" | ||||||
|  |  | ||||||
|  |  | ||||||
| #line 848 "ast_expr2f.c" | #line 864 "ast_expr2f.c" | ||||||
|  |  | ||||||
|     yylval = yylval_param; |     yylval = yylval_param; | ||||||
|  |  | ||||||
| @@ -937,132 +953,132 @@ do_action:	/* This label is used only to access EOF actions. */ | |||||||
|  |  | ||||||
| case 1: | case 1: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 132 "ast_expr2.fl" | #line 134 "ast_expr2.fl" | ||||||
| { SET_COLUMNS; SET_STRING; return TOK_OR;} | { SET_COLUMNS; SET_STRING; return TOK_OR;} | ||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 2: | case 2: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 133 "ast_expr2.fl" | #line 135 "ast_expr2.fl" | ||||||
| { SET_COLUMNS; SET_STRING; return TOK_AND;} | { SET_COLUMNS; SET_STRING; return TOK_AND;} | ||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 3: | case 3: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 134 "ast_expr2.fl" | #line 136 "ast_expr2.fl" | ||||||
| { SET_COLUMNS; SET_STRING; return TOK_EQ;} | { SET_COLUMNS; SET_STRING; return TOK_EQ;} | ||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 4: | case 4: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 135 "ast_expr2.fl" | #line 137 "ast_expr2.fl" | ||||||
| { SET_COLUMNS; SET_STRING; return TOK_OR;} | { SET_COLUMNS; SET_STRING; return TOK_OR;} | ||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 5: | case 5: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 136 "ast_expr2.fl" | #line 138 "ast_expr2.fl" | ||||||
| { SET_COLUMNS; SET_STRING; return TOK_AND;} | { SET_COLUMNS; SET_STRING; return TOK_AND;} | ||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 6: | case 6: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 137 "ast_expr2.fl" | #line 139 "ast_expr2.fl" | ||||||
| { SET_COLUMNS; SET_STRING; return TOK_EQ;} | { SET_COLUMNS; SET_STRING; return TOK_EQ;} | ||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 7: | case 7: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 138 "ast_expr2.fl" | #line 140 "ast_expr2.fl" | ||||||
| { SET_COLUMNS; SET_STRING; return TOK_EQTILDE;} | { SET_COLUMNS; SET_STRING; return TOK_EQTILDE;} | ||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 8: | case 8: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 139 "ast_expr2.fl" | #line 141 "ast_expr2.fl" | ||||||
| { SET_COLUMNS; SET_STRING; return TOK_TILDETILDE;} | { SET_COLUMNS; SET_STRING; return TOK_TILDETILDE;} | ||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 9: | case 9: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 140 "ast_expr2.fl" | #line 142 "ast_expr2.fl" | ||||||
| { SET_COLUMNS; SET_STRING; return TOK_GT;} | { SET_COLUMNS; SET_STRING; return TOK_GT;} | ||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 10: | case 10: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 141 "ast_expr2.fl" | #line 143 "ast_expr2.fl" | ||||||
| { SET_COLUMNS; SET_STRING; return TOK_LT;} | { SET_COLUMNS; SET_STRING; return TOK_LT;} | ||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 11: | case 11: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 142 "ast_expr2.fl" | #line 144 "ast_expr2.fl" | ||||||
| { SET_COLUMNS; SET_STRING; return TOK_GE;} | { SET_COLUMNS; SET_STRING; return TOK_GE;} | ||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 12: | case 12: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 143 "ast_expr2.fl" | #line 145 "ast_expr2.fl" | ||||||
| { SET_COLUMNS; SET_STRING; return TOK_LE;} | { SET_COLUMNS; SET_STRING; return TOK_LE;} | ||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 13: | case 13: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 144 "ast_expr2.fl" | #line 146 "ast_expr2.fl" | ||||||
| { SET_COLUMNS; SET_STRING; return TOK_NE;} | { SET_COLUMNS; SET_STRING; return TOK_NE;} | ||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 14: | case 14: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 145 "ast_expr2.fl" | #line 147 "ast_expr2.fl" | ||||||
| { SET_COLUMNS; SET_STRING; return TOK_PLUS;} | { SET_COLUMNS; SET_STRING; return TOK_PLUS;} | ||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 15: | case 15: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 146 "ast_expr2.fl" | #line 148 "ast_expr2.fl" | ||||||
| { SET_COLUMNS; SET_STRING; return TOK_COMMA;} | { SET_COLUMNS; SET_STRING; return TOK_COMMA;} | ||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 16: | case 16: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 147 "ast_expr2.fl" | #line 149 "ast_expr2.fl" | ||||||
| { SET_COLUMNS; SET_STRING; return TOK_MINUS;} | { SET_COLUMNS; SET_STRING; return TOK_MINUS;} | ||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 17: | case 17: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 148 "ast_expr2.fl" | #line 150 "ast_expr2.fl" | ||||||
| { SET_COLUMNS; SET_STRING; return TOK_MULT;} | { SET_COLUMNS; SET_STRING; return TOK_MULT;} | ||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 18: | case 18: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 149 "ast_expr2.fl" | #line 151 "ast_expr2.fl" | ||||||
| { SET_COLUMNS; SET_STRING; return TOK_DIV;} | { SET_COLUMNS; SET_STRING; return TOK_DIV;} | ||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 19: | case 19: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 150 "ast_expr2.fl" | #line 152 "ast_expr2.fl" | ||||||
| { SET_COLUMNS; SET_STRING; return TOK_MOD;} | { SET_COLUMNS; SET_STRING; return TOK_MOD;} | ||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 20: | case 20: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 151 "ast_expr2.fl" | #line 153 "ast_expr2.fl" | ||||||
| { SET_COLUMNS; SET_STRING; return TOK_COND;} | { SET_COLUMNS; SET_STRING; return TOK_COND;} | ||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 21: | case 21: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 152 "ast_expr2.fl" | #line 154 "ast_expr2.fl" | ||||||
| { SET_COLUMNS; SET_STRING; return TOK_COMPL;} | { SET_COLUMNS; SET_STRING; return TOK_COMPL;} | ||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 22: | case 22: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 153 "ast_expr2.fl" | #line 155 "ast_expr2.fl" | ||||||
| { SET_COLUMNS; SET_STRING; return TOK_COLON;} | { SET_COLUMNS; SET_STRING; return TOK_COLON;} | ||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 23: | case 23: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 154 "ast_expr2.fl" | #line 156 "ast_expr2.fl" | ||||||
| { SET_COLUMNS; SET_STRING; return TOK_COLONCOLON;} | { SET_COLUMNS; SET_STRING; return TOK_COLONCOLON;} | ||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 24: | case 24: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 155 "ast_expr2.fl" | #line 157 "ast_expr2.fl" | ||||||
| { SET_COLUMNS; SET_STRING; return TOK_LP;} | { SET_COLUMNS; SET_STRING; return TOK_LP;} | ||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 25: | case 25: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 156 "ast_expr2.fl" | #line 158 "ast_expr2.fl" | ||||||
| { SET_COLUMNS; SET_STRING; return TOK_RP;} | { SET_COLUMNS; SET_STRING; return TOK_RP;} | ||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 26: | case 26: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 157 "ast_expr2.fl" | #line 159 "ast_expr2.fl" | ||||||
| { | { | ||||||
| 		/* gather the contents of ${} expressions, with trailing stuff, | 		/* gather the contents of ${} expressions, with trailing stuff, | ||||||
| 		 * into a single TOKEN. | 		 * into a single TOKEN. | ||||||
| @@ -1075,24 +1091,24 @@ YY_RULE_SETUP | |||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 27: | case 27: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 167 "ast_expr2.fl" | #line 169 "ast_expr2.fl" | ||||||
| {} | {} | ||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 28: | case 28: | ||||||
| /* rule 28 can match eol */ | /* rule 28 can match eol */ | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 168 "ast_expr2.fl" | #line 170 "ast_expr2.fl" | ||||||
| {SET_COLUMNS; SET_STRING; return TOKEN;} | {SET_COLUMNS; SET_STRING; return TOKEN;} | ||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 29: | case 29: | ||||||
| /* rule 29 can match eol */ | /* rule 29 can match eol */ | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 170 "ast_expr2.fl" | #line 172 "ast_expr2.fl" | ||||||
| {/* what to do with eol */} | {/* what to do with eol */} | ||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 30: | case 30: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 171 "ast_expr2.fl" | #line 173 "ast_expr2.fl" | ||||||
| { | { | ||||||
| 		SET_COLUMNS; | 		SET_COLUMNS; | ||||||
| 		/* the original behavior of the expression parser was | 		/* the original behavior of the expression parser was | ||||||
| @@ -1105,7 +1121,7 @@ YY_RULE_SETUP | |||||||
| case 31: | case 31: | ||||||
| /* rule 31 can match eol */ | /* rule 31 can match eol */ | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 180 "ast_expr2.fl" | #line 182 "ast_expr2.fl" | ||||||
| { | { | ||||||
| 		SET_COLUMNS; | 		SET_COLUMNS; | ||||||
| 		SET_STRING; | 		SET_STRING; | ||||||
| @@ -1115,7 +1131,7 @@ YY_RULE_SETUP | |||||||
| case 32: | case 32: | ||||||
| /* rule 32 can match eol */ | /* rule 32 can match eol */ | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 186 "ast_expr2.fl" | #line 188 "ast_expr2.fl" | ||||||
| { | { | ||||||
| 		curlycount = 0; | 		curlycount = 0; | ||||||
| 		BEGIN(var); | 		BEGIN(var); | ||||||
| @@ -1125,7 +1141,7 @@ YY_RULE_SETUP | |||||||
| case 33: | case 33: | ||||||
| /* rule 33 can match eol */ | /* rule 33 can match eol */ | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 192 "ast_expr2.fl" | #line 194 "ast_expr2.fl" | ||||||
| { | { | ||||||
| 		curlycount--; | 		curlycount--; | ||||||
| 		if (curlycount < 0) { | 		if (curlycount < 0) { | ||||||
| @@ -1139,7 +1155,7 @@ YY_RULE_SETUP | |||||||
| case 34: | case 34: | ||||||
| /* rule 34 can match eol */ | /* rule 34 can match eol */ | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 202 "ast_expr2.fl" | #line 204 "ast_expr2.fl" | ||||||
| { | { | ||||||
| 		curlycount++; | 		curlycount++; | ||||||
| 		yymore(); | 		yymore(); | ||||||
| @@ -1147,7 +1163,7 @@ YY_RULE_SETUP | |||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 35: | case 35: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 208 "ast_expr2.fl" | #line 210 "ast_expr2.fl" | ||||||
| { | { | ||||||
| 		BEGIN(0); | 		BEGIN(0); | ||||||
| 		SET_COLUMNS; | 		SET_COLUMNS; | ||||||
| @@ -1157,7 +1173,7 @@ YY_RULE_SETUP | |||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 36: | case 36: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 215 "ast_expr2.fl" | #line 217 "ast_expr2.fl" | ||||||
| { | { | ||||||
| 		curlycount = 0; | 		curlycount = 0; | ||||||
| 		BEGIN(var); | 		BEGIN(var); | ||||||
| @@ -1167,7 +1183,7 @@ YY_RULE_SETUP | |||||||
| case 37: | case 37: | ||||||
| /* rule 37 can match eol */ | /* rule 37 can match eol */ | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 221 "ast_expr2.fl" | #line 223 "ast_expr2.fl" | ||||||
| { | { | ||||||
| 		char c = yytext[yyleng-1]; | 		char c = yytext[yyleng-1]; | ||||||
| 		BEGIN(0); | 		BEGIN(0); | ||||||
| @@ -1178,7 +1194,7 @@ YY_RULE_SETUP | |||||||
| 	} | 	} | ||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case YY_STATE_EOF(trail): | case YY_STATE_EOF(trail): | ||||||
| #line 230 "ast_expr2.fl" | #line 232 "ast_expr2.fl" | ||||||
| { | { | ||||||
| 		BEGIN(0); | 		BEGIN(0); | ||||||
| 		SET_COLUMNS; | 		SET_COLUMNS; | ||||||
| @@ -1189,10 +1205,10 @@ case YY_STATE_EOF(trail): | |||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| case 38: | case 38: | ||||||
| YY_RULE_SETUP | YY_RULE_SETUP | ||||||
| #line 238 "ast_expr2.fl" | #line 240 "ast_expr2.fl" | ||||||
| ECHO; | ECHO; | ||||||
| 	YY_BREAK | 	YY_BREAK | ||||||
| #line 1194 "ast_expr2f.c" | #line 1210 "ast_expr2f.c" | ||||||
| case YY_STATE_EOF(INITIAL): | case YY_STATE_EOF(INITIAL): | ||||||
| case YY_STATE_EOF(var): | case YY_STATE_EOF(var): | ||||||
| 	yyterminate(); | 	yyterminate(); | ||||||
| @@ -2128,7 +2144,7 @@ void ast_yyset_lineno (int  line_number , yyscan_t yyscanner) | |||||||
| } | } | ||||||
|  |  | ||||||
| /** Set the current column. | /** Set the current column. | ||||||
|  * @param column_no  |  * @param line_number | ||||||
|  * @param yyscanner The scanner object. |  * @param yyscanner The scanner object. | ||||||
|  */ |  */ | ||||||
| void ast_yyset_column (int  column_no , yyscan_t yyscanner) | void ast_yyset_column (int  column_no , yyscan_t yyscanner) | ||||||
| @@ -2368,7 +2384,7 @@ void *ast_yyrealloc  (void * ptr, yy_size_t  size , yyscan_t yyscanner) | |||||||
|  |  | ||||||
| #define YYTABLES_NAME "yytables" | #define YYTABLES_NAME "yytables" | ||||||
|  |  | ||||||
| #line 238 "ast_expr2.fl" | #line 240 "ast_expr2.fl" | ||||||
|  |  | ||||||
|  |  | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user