Jason is having problems with the inclusion of <err.h>; it appears to be unnecessary for sucessful builds, so I either removed or commented out the inclusions from all the AEL related code. New outputs from bison/flex are included, etc.

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@49019 65c4cc65-6c06-0410-ace0-fbb531ad65f3
1.6.0
Steve Murphy 19 years ago
parent 7231cc108a
commit 6c7f4c1e32

@ -2,7 +2,7 @@
#define _ASTERISK_AEL_STRUCTS_H
#if !defined(SOLARIS) && !defined(__CYGWIN__)
#include <err.h>
/* #include <err.h> */
#else
#define quad_t int64_t
#endif

@ -153,7 +153,7 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
#include <unistd.h>
#include <ctype.h>
#if !defined(SOLARIS) && !defined(__CYGWIN__)
#include <err.h>
/* #include <err.h> */
#else
#define quad_t int64_t
#endif

@ -35,7 +35,7 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
#include <locale.h>
#include <ctype.h>
#if !defined(SOLARIS) && !defined(__CYGWIN__)
#include <err.h>
/* #include <err.h> */
#else
#define quad_t int64_t
#endif

@ -26,7 +26,7 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
#include <unistd.h>
#include <ctype.h>
#if !defined(SOLARIS) && !defined(__CYGWIN__)
#include <err.h>
/* #include <err.h> */
#else
#define quad_t int64_t
#endif

@ -9,7 +9,7 @@
#define FLEX_SCANNER
#define YY_FLEX_MAJOR_VERSION 2
#define YY_FLEX_MINOR_VERSION 5
#define YY_FLEX_SUBMINOR_VERSION 33
#define YY_FLEX_SUBMINOR_VERSION 31
#if YY_FLEX_SUBMINOR_VERSION > 0
#define FLEX_BETA
#endif
@ -31,15 +31,7 @@
/* C99 systems have <inttypes.h>. Non-C99 systems may or may not. */
#if __STDC_VERSION__ >= 199901L
/* C99 says to define __STDC_LIMIT_MACROS before including stdint.h,
* if you want the limit (max/min) macros for int types.
*/
#ifndef __STDC_LIMIT_MACROS
#define __STDC_LIMIT_MACROS 1
#endif
#if defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L
#include <inttypes.h>
typedef int8_t flex_int8_t;
typedef uint8_t flex_uint8_t;
@ -162,10 +154,6 @@ int ast_yylex_init (yyscan_t* scanner);
#define YY_BUF_SIZE 16384
#endif
/* The state buf must be large enough to hold one state per character in the main buffer.
*/
#define YY_STATE_BUF_SIZE ((YY_BUF_SIZE + 2) * sizeof(yy_state_type))
#ifndef YY_TYPEDEF_YY_BUFFER_STATE
#define YY_TYPEDEF_YY_BUFFER_STATE
typedef struct yy_buffer_state *YY_BUFFER_STATE;
@ -1367,7 +1355,7 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
#include <locale.h>
#include <ctype.h>
#if !defined(SOLARIS) && !defined(__CYGWIN__)
#include <err.h>
/* #include <err.h> */
#else
#define quad_t int64_t
#endif
@ -1423,19 +1411,17 @@ int ast_yyget_column(yyscan_t yyscanner);
static int curlycount = 0;
static char *expr2_token_subst(char *mess);
#line 1427 "ast_expr2f.c"
#line 1415 "ast_expr2f.c"
#define INITIAL 0
#define var 1
#define trail 2
#ifndef YY_NO_UNISTD_H
/* Special case for "unistd.h", since it is non-ANSI. We include it way
* down here because we want the user's section 1 to have been scanned first.
* The user has a chance to override it with an option.
*/
#include <unistd.h>
#endif
#ifndef YY_EXTRA_TYPE
#define YY_EXTRA_TYPE void *
@ -1479,8 +1465,6 @@ struct yyguts_t
}; /* end struct yyguts_t */
static int yy_init_globals (yyscan_t yyscanner );
/* This must go here because YYSTYPE and YYLTYPE are included
* from bison output in section 1.*/
# define yylval yyg->yylval_r
@ -1615,11 +1599,9 @@ static int input (yyscan_t yyscanner );
#ifndef YY_DECL
#define YY_DECL_IS_OURS 1
extern int ast_yylex \
(YYSTYPE * yylval_param,YYLTYPE * yylloc_param ,yyscan_t yyscanner);
extern int ast_yylex (YYSTYPE * yylval_param,YYLTYPE * yylloc_param ,yyscan_t yyscanner);
#define YY_DECL int ast_yylex \
(YYSTYPE * yylval_param, YYLTYPE * yylloc_param , yyscan_t yyscanner)
#define YY_DECL int ast_yylex (YYSTYPE * yylval_param, YYLTYPE * yylloc_param , yyscan_t yyscanner)
#endif /* !YY_DECL */
/* Code executed at the beginning of each rule, after yytext and yyleng
@ -1649,15 +1631,15 @@ YY_DECL
#line 104 "ast_expr2.fl"
#line 1653 "ast_expr2f.c"
#line 1635 "ast_expr2f.c"
yylval = yylval_param;
yylloc = yylloc_param;
if ( !yyg->yy_init )
if ( yyg->yy_init )
{
yyg->yy_init = 1;
yyg->yy_init = 0;
#ifdef YY_USER_INIT
YY_USER_INIT;
@ -1966,7 +1948,7 @@ YY_RULE_SETUP
#line 205 "ast_expr2.fl"
ECHO;
YY_BREAK
#line 1970 "ast_expr2f.c"
#line 1952 "ast_expr2f.c"
case YY_STATE_EOF(INITIAL):
case YY_STATE_EOF(var):
yyterminate();
@ -2154,7 +2136,7 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
else
{
int num_to_read =
size_t num_to_read =
YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
while ( num_to_read <= 0 )
@ -2199,7 +2181,7 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
/* Read in more data. */
YY_INPUT( (&YY_CURRENT_BUFFER_LVALUE->yy_ch_buf[number_to_move]),
yyg->yy_n_chars, (size_t) num_to_read );
yyg->yy_n_chars, num_to_read );
YY_CURRENT_BUFFER_LVALUE->yy_n_chars = yyg->yy_n_chars;
}
@ -2268,7 +2250,7 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
static yy_state_type yy_try_NUL_trans (yy_state_type yy_current_state , yyscan_t yyscanner)
{
register int yy_is_jam;
struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; /* This var may be unused depending upon options. */
struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
register char *yy_cp = yyg->yy_c_buf_p;
yy_current_state = yy_NUL_trans[yy_current_state];
@ -2708,26 +2690,26 @@ YY_BUFFER_STATE ast_yy_scan_buffer (char * base, yy_size_t size , yyscan_t yys
/** Setup the input buffer state to scan a string. The next call to ast_yylex() will
* scan from a @e copy of @a str.
* @param yystr a NUL-terminated string to scan
* @param str a NUL-terminated string to scan
* @param yyscanner The scanner object.
* @return the newly allocated buffer state object.
* @note If you want to scan bytes that may contain NUL values, then use
* ast_yy_scan_bytes() instead.
*/
YY_BUFFER_STATE ast_yy_scan_string (yyconst char * yystr , yyscan_t yyscanner)
YY_BUFFER_STATE ast_yy_scan_string (yyconst char * str , yyscan_t yyscanner)
{
return ast_yy_scan_bytes(yystr,strlen(yystr) ,yyscanner);
return ast_yy_scan_bytes(str,strlen(str) ,yyscanner);
}
/** Setup the input buffer state to scan the given bytes. The next call to ast_yylex() will
* scan from a @e copy of @a bytes.
* @param yybytes the byte buffer to scan
* @param _yybytes_len the number of bytes in the buffer pointed to by @a bytes.
* @param bytes the byte buffer to scan
* @param len the number of bytes in the buffer pointed to by @a bytes.
* @param yyscanner The scanner object.
* @return the newly allocated buffer state object.
*/
YY_BUFFER_STATE ast_yy_scan_bytes (yyconst char * yybytes, int _yybytes_len , yyscan_t yyscanner)
YY_BUFFER_STATE ast_yy_scan_bytes (yyconst char * bytes, int len , yyscan_t yyscanner)
{
YY_BUFFER_STATE b;
char *buf;
@ -2735,15 +2717,15 @@ YY_BUFFER_STATE ast_yy_scan_bytes (yyconst char * yybytes, int _yybytes_len ,
int i;
/* Get memory for full buffer, including space for trailing EOB's. */
n = _yybytes_len + 2;
n = len + 2;
buf = (char *) ast_yyalloc(n ,yyscanner );
if ( ! buf )
YY_FATAL_ERROR( "out of dynamic memory in ast_yy_scan_bytes()" );
for ( i = 0; i < _yybytes_len; ++i )
buf[i] = yybytes[i];
for ( i = 0; i < len; ++i )
buf[i] = bytes[i];
buf[_yybytes_len] = buf[_yybytes_len+1] = YY_END_OF_BUFFER_CHAR;
buf[len] = buf[len+1] = YY_END_OF_BUFFER_CHAR;
b = ast_yy_scan_buffer(buf,n ,yyscanner);
if ( ! b )
@ -2884,7 +2866,7 @@ void ast_yyset_lineno (int line_number , yyscan_t yyscanner)
}
/** Set the current column.
* @param column_no
* @param line_number
* @param yyscanner The scanner object.
*/
void ast_yyset_column (int column_no , yyscan_t yyscanner)
@ -2954,51 +2936,21 @@ void ast_yyset_lloc (YYLTYPE * yylloc_param , yyscan_t yyscanner)
yylloc = yylloc_param;
}
/* User-visible API */
/* ast_yylex_init is special because it creates the scanner itself, so it is
* 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.
*/
int ast_yylex_init(yyscan_t* ptr_yy_globals)
{
if (ptr_yy_globals == NULL){
errno = EINVAL;
return 1;
}
*ptr_yy_globals = (yyscan_t) ast_yyalloc ( sizeof( struct yyguts_t ), NULL );
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));
return yy_init_globals ( *ptr_yy_globals );
}
static int yy_init_globals (yyscan_t yyscanner)
{
struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
/* Initialization is the same as for the non-reentrant scanner.
* This function is called from ast_yylex_destroy(), so don't allocate here.
*/
This function is called once per scanner lifetime. */
yyg->yy_buffer_stack = 0;
yyg->yy_buffer_stack_top = 0;
yyg->yy_buffer_stack_max = 0;
yyg->yy_c_buf_p = (char *) 0;
yyg->yy_init = 0;
yyg->yy_init = 1;
yyg->yy_start = 0;
yyg->yy_start_stack_ptr = 0;
yyg->yy_start_stack_depth = 0;
yyg->yy_start_stack = NULL;
yyg->yy_start_stack = (int *) 0;
/* Defined in main.c */
#ifdef YY_STDINIT
@ -3015,6 +2967,33 @@ static int yy_init_globals (yyscan_t yyscanner)
return 0;
}
/* User-visible API */
/* ast_yylex_init is special because it creates the scanner itself, so it is
* 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.
*/
int ast_yylex_init(yyscan_t* ptr_yy_globals)
{
if (ptr_yy_globals == NULL){
errno = EINVAL;
return 1;
}
*ptr_yy_globals = (yyscan_t) ast_yyalloc ( sizeof( struct yyguts_t ), NULL );
if (*ptr_yy_globals == NULL){
errno = ENOMEM;
return 1;
}
memset(*ptr_yy_globals,0,sizeof(struct yyguts_t));
return yy_init_globals ( *ptr_yy_globals );
}
/* ast_yylex_destroy is for both reentrant and non-reentrant scanners. */
int ast_yylex_destroy (yyscan_t yyscanner)
{
@ -3035,13 +3014,8 @@ int ast_yylex_destroy (yyscan_t yyscanner)
ast_yyfree(yyg->yy_start_stack ,yyscanner );
yyg->yy_start_stack = NULL;
/* Reset the globals. This is important in a non-reentrant scanner so the next time
* ast_yylex() is called, initialization will occur. */
yy_init_globals( yyscanner);
/* Destroy the main struct (reentrant only). */
ast_yyfree ( yyscanner , yyscanner );
yyscanner = NULL;
return 0;
}
@ -3053,6 +3027,7 @@ int ast_yylex_destroy (yyscan_t yyscanner)
static void yy_flex_strncpy (char* s1, yyconst char * s2, int n , yyscan_t yyscanner)
{
register int i;
struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
for ( i = 0; i < n; ++i )
s1[i] = s2[i];
}
@ -3062,6 +3037,7 @@ static void yy_flex_strncpy (char* s1, yyconst char * s2, int n , yyscan_t yysca
static int yy_flex_strlen (yyconst char * s , yyscan_t yyscanner)
{
register int n;
struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
for ( n = 0; s[n]; ++n )
;
@ -3093,6 +3069,18 @@ void ast_yyfree (void * ptr , yyscan_t yyscanner)
#define YYTABLES_NAME "yytables"
#undef YY_NEW_FILE
#undef YY_FLUSH_BUFFER
#undef yy_set_bol
#undef yy_new_buffer
#undef yy_set_interactive
#undef yytext_ptr
#undef YY_DO_BEFORE_ACTION
#ifdef YY_DECL_IS_OURS
#undef YY_DECL_IS_OURS
#undef YY_DECL
#endif
#line 205 "ast_expr2.fl"
@ -3134,11 +3122,11 @@ int ast_expr(char *expr, char *buf, int length)
res_length = snprintf(buf, length, "%ld", (long int) io.val->u.i);
return_value = (res_length <= length) ? res_length : length;
} else {
#if defined(STANDALONE) || defined(LOW_MEMORY)
#ifdef STANDALONE
strncpy(buf, io.val->u.s, length - 1);
#else /* !STANDALONE && !LOW_MEMORY */
#else /* !STANDALONE */
ast_copy_string(buf, io.val->u.s, length);
#endif /* STANDALONE || LOW_MEMORY */
#endif /* STANDALONE */
return_value = strlen(buf);
free(io.val->u.s);
}

@ -1,7 +1,9 @@
/* A Bison parser, made by GNU Bison 2.1a. */
/* A Bison parser, made by GNU Bison 2.3. */
/* Skeleton parser for Yacc-like parsing with Bison,
Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
/* Skeleton implementation for Bison's Yacc-like parsers in C
Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@ -18,10 +20,18 @@
Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA. */
/* As a special exception, when this file is copied by Bison into a
Bison output file, you may use that output file without restriction.
This special exception was added by the Free Software Foundation
in version 1.24 of Bison. */
/* As a special exception, you may create a larger work that contains
part or all of the Bison parser skeleton and distribute that work
under terms of your choice, so long as that work isn't itself a
parser generator using the skeleton or a modified version thereof
as a parser skeleton. Alternatively, if you modify or redistribute
the parser skeleton itself, you may (at your option) remove this
special exception, which will cause the skeleton and the resulting
Bison output files to be licensed under the GNU General Public
License without this special exception.
This special exception was added by the Free Software Foundation in
version 2.2 of Bison. */
/* C LALR(1) parser skeleton written by Richard Stallman, by
simplifying the original so-called "semantic" parser. */
@ -37,7 +47,7 @@
#define YYBISON 1
/* Bison version. */
#define YYBISON_VERSION "2.1a"
#define YYBISON_VERSION "2.3"
/* Skeleton name. */
#define YYSKELETON_NAME "yacc.c"
@ -229,8 +239,8 @@ typedef union YYSTYPE
char *str; /* strings */
struct pval *pval; /* full objects */
}
/* Line 198 of yacc.c. */
#line 234 "ael.tab.c"
/* Line 193 of yacc.c. */
#line 244 "ael.tab.c"
YYSTYPE;
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
# define YYSTYPE_IS_DECLARED 1
@ -274,8 +284,8 @@ static pval *nword(char *string, YYLTYPE *pos);
static pval *update_last(pval *, YYLTYPE *);
/* Line 221 of yacc.c. */
#line 279 "ael.tab.c"
/* Line 216 of yacc.c. */
#line 289 "ael.tab.c"
#ifdef short
# undef short
@ -405,8 +415,13 @@ YYID (i)
# ifndef YYSTACK_ALLOC_MAXIMUM
# define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
# endif
# ifdef __cplusplus
extern "C" {
# if (defined __cplusplus && ! defined _STDLIB_H \
&& ! ((defined YYMALLOC || defined malloc) \
&& (defined YYFREE || defined free)))
# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
# ifndef _STDLIB_H
# define _STDLIB_H 1
# endif
# endif
# ifndef YYMALLOC
# define YYMALLOC malloc
@ -422,9 +437,6 @@ void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
void free (void *); /* INFRINGES ON USER NAME SPACE */
# endif
# endif
# ifdef __cplusplus
}
# endif
# endif
#endif /* ! defined yyoverflow || YYERROR_VERBOSE */
@ -1029,14 +1041,14 @@ do { \
#if (defined __STDC__ || defined __C99__FUNC__ \
|| defined __cplusplus || defined _MSC_VER)
static void
yy_symbol_value_print (FILE *yyoutput, int yytype, const YYSTYPE * const yyvaluep, const YYLTYPE * const yylocationp, struct parse_io *parseio)
yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, YYLTYPE const * const yylocationp, struct parse_io *parseio)
#else
static void
yy_symbol_value_print (yyoutput, yytype, yyvaluep, yylocationp, parseio)
FILE *yyoutput;
int yytype;
const YYSTYPE * const yyvaluep;
const YYLTYPE * const yylocationp;
YYSTYPE const * const yyvaluep;
YYLTYPE const * const yylocationp;
struct parse_io *parseio;
#endif
{
@ -1065,14 +1077,14 @@ yy_symbol_value_print (yyoutput, yytype, yyvaluep, yylocationp, parseio)
#if (defined __STDC__ || defined __C99__FUNC__ \
|| defined __cplusplus || defined _MSC_VER)
static void
yy_symbol_print (FILE *yyoutput, int yytype, const YYSTYPE * const yyvaluep, const YYLTYPE * const yylocationp, struct parse_io *parseio)
yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, YYLTYPE const * const yylocationp, struct parse_io *parseio)
#else
static void
yy_symbol_print (yyoutput, yytype, yyvaluep, yylocationp, parseio)
FILE *yyoutput;
int yytype;
const YYSTYPE * const yyvaluep;
const YYLTYPE * const yylocationp;
YYSTYPE const * const yyvaluep;
YYLTYPE const * const yylocationp;
struct parse_io *parseio;
#endif
{
@ -1250,7 +1262,7 @@ yytnamerr (char *yyres, const char *yystr)
{
if (*yystr == '"')
{
size_t yyn = 0;
YYSIZE_T yyn = 0;
char const *yyp = yystr;
for (;;)
@ -1297,7 +1309,7 @@ yysyntax_error (char *yyresult, int yystate, int yychar)
{
int yyn = yypact[yystate];
if (! (YYPACT_NINF < yyn && yyn < YYLAST))
if (! (YYPACT_NINF < yyn && yyn <= YYLAST))
return 0;
else
{
@ -1335,7 +1347,7 @@ yysyntax_error (char *yyresult, int yystate, int yychar)
int yyxbegin = yyn < 0 ? -yyn : 0;
/* Stay within bounds of both yycheck and yytname. */
int yychecklim = YYLAST - yyn;
int yychecklim = YYLAST - yyn + 1;
int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
int yycount = 1;
@ -1427,7 +1439,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
case 41: /* "word" */
#line 177 "ael.y"
{ free((yyvaluep->str));};
#line 1431 "ael.tab.c"
#line 1443 "ael.tab.c"
break;
case 44: /* "objects" */
#line 164 "ael.y"
@ -1435,7 +1447,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1439 "ael.tab.c"
#line 1451 "ael.tab.c"
break;
case 45: /* "object" */
#line 164 "ael.y"
@ -1443,12 +1455,12 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1447 "ael.tab.c"
#line 1459 "ael.tab.c"
break;
case 46: /* "context_name" */
#line 177 "ael.y"
{ free((yyvaluep->str));};
#line 1452 "ael.tab.c"
#line 1464 "ael.tab.c"
break;
case 47: /* "context" */
#line 164 "ael.y"
@ -1456,7 +1468,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1460 "ael.tab.c"
#line 1472 "ael.tab.c"
break;
case 49: /* "macro" */
#line 164 "ael.y"
@ -1464,7 +1476,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1468 "ael.tab.c"
#line 1480 "ael.tab.c"
break;
case 50: /* "globals" */
#line 164 "ael.y"
@ -1472,7 +1484,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1476 "ael.tab.c"
#line 1488 "ael.tab.c"
break;
case 51: /* "global_statements" */
#line 164 "ael.y"
@ -1480,7 +1492,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1484 "ael.tab.c"
#line 1496 "ael.tab.c"
break;
case 52: /* "assignment" */
#line 164 "ael.y"
@ -1488,7 +1500,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1492 "ael.tab.c"
#line 1504 "ael.tab.c"
break;
case 54: /* "arglist" */
#line 164 "ael.y"
@ -1496,7 +1508,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1500 "ael.tab.c"
#line 1512 "ael.tab.c"
break;
case 55: /* "elements" */
#line 164 "ael.y"
@ -1504,7 +1516,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1508 "ael.tab.c"
#line 1520 "ael.tab.c"
break;
case 56: /* "element" */
#line 164 "ael.y"
@ -1512,7 +1524,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1516 "ael.tab.c"
#line 1528 "ael.tab.c"
break;
case 57: /* "ignorepat" */
#line 164 "ael.y"
@ -1520,7 +1532,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1524 "ael.tab.c"
#line 1536 "ael.tab.c"
break;
case 58: /* "extension" */
#line 164 "ael.y"
@ -1528,7 +1540,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1532 "ael.tab.c"
#line 1544 "ael.tab.c"
break;
case 59: /* "statements" */
#line 164 "ael.y"
@ -1536,12 +1548,12 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1540 "ael.tab.c"
#line 1552 "ael.tab.c"
break;
case 60: /* "timerange" */
#line 177 "ael.y"
{ free((yyvaluep->str));};
#line 1545 "ael.tab.c"
#line 1557 "ael.tab.c"
break;
case 61: /* "timespec" */
#line 164 "ael.y"
@ -1549,12 +1561,12 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1553 "ael.tab.c"
#line 1565 "ael.tab.c"
break;
case 62: /* "test_expr" */
#line 177 "ael.y"
{ free((yyvaluep->str));};
#line 1558 "ael.tab.c"
#line 1570 "ael.tab.c"
break;
case 64: /* "if_like_head" */
#line 164 "ael.y"
@ -1562,22 +1574,22 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1566 "ael.tab.c"
#line 1578 "ael.tab.c"
break;
case 65: /* "word_list" */
#line 177 "ael.y"
{ free((yyvaluep->str));};
#line 1571 "ael.tab.c"
#line 1583 "ael.tab.c"
break;
case 67: /* "word3_list" */
#line 177 "ael.y"
{ free((yyvaluep->str));};
#line 1576 "ael.tab.c"
#line 1588 "ael.tab.c"
break;
case 68: /* "goto_word" */
#line 177 "ael.y"
{ free((yyvaluep->str));};
#line 1581 "ael.tab.c"
#line 1593 "ael.tab.c"
break;
case 69: /* "switch_statement" */
#line 164 "ael.y"
@ -1585,7 +1597,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1589 "ael.tab.c"
#line 1601 "ael.tab.c"
break;
case 70: /* "statement" */
#line 164 "ael.y"
@ -1593,7 +1605,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1597 "ael.tab.c"
#line 1609 "ael.tab.c"
break;
case 75: /* "opt_else" */
#line 164 "ael.y"
@ -1601,7 +1613,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1605 "ael.tab.c"
#line 1617 "ael.tab.c"
break;
case 76: /* "target" */
#line 164 "ael.y"
@ -1609,12 +1621,12 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1613 "ael.tab.c"
#line 1625 "ael.tab.c"
break;
case 77: /* "opt_pri" */
#line 177 "ael.y"
{ free((yyvaluep->str));};
#line 1618 "ael.tab.c"
#line 1630 "ael.tab.c"
break;
case 78: /* "jumptarget" */
#line 164 "ael.y"
@ -1622,7 +1634,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1626 "ael.tab.c"
#line 1638 "ael.tab.c"
break;
case 79: /* "macro_call" */
#line 164 "ael.y"
@ -1630,7 +1642,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1634 "ael.tab.c"
#line 1646 "ael.tab.c"
break;
case 81: /* "application_call_head" */
#line 164 "ael.y"
@ -1638,7 +1650,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1642 "ael.tab.c"
#line 1654 "ael.tab.c"
break;
case 83: /* "application_call" */
#line 164 "ael.y"
@ -1646,12 +1658,12 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1650 "ael.tab.c"
#line 1662 "ael.tab.c"
break;
case 84: /* "opt_word" */
#line 177 "ael.y"
{ free((yyvaluep->str));};
#line 1655 "ael.tab.c"
#line 1667 "ael.tab.c"
break;
case 85: /* "eval_arglist" */
#line 164 "ael.y"
@ -1659,7 +1671,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1663 "ael.tab.c"
#line 1675 "ael.tab.c"
break;
case 86: /* "case_statements" */
#line 164 "ael.y"
@ -1667,7 +1679,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1671 "ael.tab.c"
#line 1683 "ael.tab.c"
break;
case 87: /* "case_statement" */
#line 164 "ael.y"
@ -1675,7 +1687,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1679 "ael.tab.c"
#line 1691 "ael.tab.c"
break;
case 88: /* "macro_statements" */
#line 164 "ael.y"
@ -1683,7 +1695,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1687 "ael.tab.c"
#line 1699 "ael.tab.c"
break;
case 89: /* "macro_statement" */
#line 164 "ael.y"
@ -1691,7 +1703,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1695 "ael.tab.c"
#line 1707 "ael.tab.c"
break;
case 90: /* "switches" */
#line 164 "ael.y"
@ -1699,7 +1711,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1703 "ael.tab.c"
#line 1715 "ael.tab.c"
break;
case 91: /* "eswitches" */
#line 164 "ael.y"
@ -1707,7 +1719,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1711 "ael.tab.c"
#line 1723 "ael.tab.c"
break;
case 92: /* "switchlist" */
#line 164 "ael.y"
@ -1715,7 +1727,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1719 "ael.tab.c"
#line 1731 "ael.tab.c"
break;
case 93: /* "included_entry" */
#line 164 "ael.y"
@ -1723,7 +1735,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1727 "ael.tab.c"
#line 1739 "ael.tab.c"
break;
case 94: /* "includeslist" */
#line 164 "ael.y"
@ -1731,7 +1743,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1735 "ael.tab.c"
#line 1747 "ael.tab.c"
break;
case 95: /* "includes" */
#line 164 "ael.y"
@ -1739,7 +1751,7 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp, parseio)
destroy_pval((yyvaluep->pval));
prev_word=0;
};
#line 1743 "ael.tab.c"
#line 1755 "ael.tab.c"
break;
default:
@ -2911,8 +2923,8 @@ yyreduce:
break;
/* Line 1270 of yacc.c. */
#line 2916 "ael.tab.c"
/* Line 1267 of yacc.c. */
#line 2928 "ael.tab.c"
default: break;
}
YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
@ -3127,7 +3139,8 @@ yyreturn:
if (yymsg != yymsgbuf)
YYSTACK_FREE (yymsg);
#endif
return yyresult;
/* Make sure YYID is used. */
return YYID (yyresult);
}

@ -1,7 +1,9 @@
/* A Bison parser, made by GNU Bison 2.1a. */
/* A Bison parser, made by GNU Bison 2.3. */
/* Skeleton parser for Yacc-like parsing with Bison,
Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
/* Skeleton interface for Bison's Yacc-like parsers in C
Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@ -18,10 +20,18 @@
Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA. */
/* As a special exception, when this file is copied by Bison into a
Bison output file, you may use that output file without restriction.
This special exception was added by the Free Software Foundation
in version 1.24 of Bison. */
/* As a special exception, you may create a larger work that contains
part or all of the Bison parser skeleton and distribute that work
under terms of your choice, so long as that work isn't itself a
parser generator using the skeleton or a modified version thereof
as a parser skeleton. Alternatively, if you modify or redistribute
the parser skeleton itself, you may (at your option) remove this
special exception, which will cause the skeleton and the resulting
Bison output files to be licensed under the GNU General Public
License without this special exception.
This special exception was added by the Free Software Foundation in
version 2.2 of Bison. */
/* Tokens. */
#ifndef YYTOKENTYPE
@ -122,8 +132,8 @@ typedef union YYSTYPE
char *str; /* strings */
struct pval *pval; /* full objects */
}
/* Line 1536 of yacc.c. */
#line 127 "ael.tab.h"
/* Line 1529 of yacc.c. */
#line 137 "ael.tab.h"
YYSTYPE;
# define yystype YYSTYPE /* obsolescent; will be withdrawn */
# define YYSTYPE_IS_DECLARED 1
@ -146,5 +156,3 @@ typedef struct YYLTYPE
#endif

@ -730,7 +730,7 @@ static yyconst flex_int16_t yy_chk[1033] =
#define yymore() (yyg->yy_more_flag = 1)
#define YY_MORE_ADJ yyg->yy_more_len
#define YY_RESTORE_YY_MORE_OFFSET
#line 1 "ael.flex"
#line 1 "ael/ael.flex"
/*
* Asterisk -- An open source telephony toolkit.
*
@ -775,7 +775,7 @@ static yyconst flex_int16_t yy_chk[1033] =
* bison-bridge passes an additional yylval argument to ael_yylex().
* bison-locations is probably not needed.
*/
#line 59 "ael.flex"
#line 59 "ael/ael.flex"
ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
#include <sys/types.h>
@ -889,13 +889,11 @@ static void pbcwhere(const char *text, int *line, int *col )
#define argg 3
#define comment 4
#ifndef YY_NO_UNISTD_H
/* Special case for "unistd.h", since it is non-ANSI. We include it way
* down here because we want the user's section 1 to have been scanned first.
* The user has a chance to override it with an option.
*/
#include <unistd.h>
#endif
#ifndef YY_EXTRA_TYPE
#define YY_EXTRA_TYPE void *
@ -939,8 +937,6 @@ struct yyguts_t
}; /* end struct yyguts_t */
static int yy_init_globals (yyscan_t yyscanner );
/* This must go here because YYSTYPE and YYLTYPE are included
* from bison output in section 1.*/
# define yylval yyg->yylval_r
@ -1091,11 +1087,9 @@ static int input (yyscan_t yyscanner );
#ifndef YY_DECL
#define YY_DECL_IS_OURS 1
extern int ael_yylex \
(YYSTYPE * yylval_param,YYLTYPE * yylloc_param ,yyscan_t yyscanner);
extern int ael_yylex (YYSTYPE * yylval_param,YYLTYPE * yylloc_param ,yyscan_t yyscanner);
#define YY_DECL int ael_yylex \
(YYSTYPE * yylval_param, YYLTYPE * yylloc_param , yyscan_t yyscanner)
#define YY_DECL int ael_yylex (YYSTYPE * yylval_param, YYLTYPE * yylloc_param , yyscan_t yyscanner)
#endif /* !YY_DECL */
/* Code executed at the beginning of each rule, after yytext and yyleng
@ -1122,10 +1116,10 @@ YY_DECL
register int yy_act;
struct yyguts_t * yyg = (struct yyguts_t*)yyscanner;
#line 173 "ael.flex"
#line 173 "ael/ael.flex"
#line 1128 "ael_lex.c"
#line 1122 "ael_lex.c"
yylval = yylval_param;
@ -1216,250 +1210,250 @@ do_action: /* This label is used only to access EOF actions. */
case 1:
YY_RULE_SETUP
#line 175 "ael.flex"
#line 175 "ael/ael.flex"
{ STORE_POS; return LC;}
YY_BREAK
case 2:
YY_RULE_SETUP
#line 176 "ael.flex"
#line 176 "ael/ael.flex"
{ STORE_POS; return RC;}
YY_BREAK
case 3:
YY_RULE_SETUP
#line 177 "ael.flex"
#line 177 "ael/ael.flex"
{ STORE_POS; return LP;}
YY_BREAK
case 4:
YY_RULE_SETUP
#line 178 "ael.flex"
#line 178 "ael/ael.flex"
{ STORE_POS; return RP;}
YY_BREAK
case 5:
YY_RULE_SETUP
#line 179 "ael.flex"
#line 179 "ael/ael.flex"
{ STORE_POS; return SEMI;}
YY_BREAK
case 6:
YY_RULE_SETUP
#line 180 "ael.flex"
#line 180 "ael/ael.flex"
{ STORE_POS; return EQ;}
YY_BREAK
case 7:
YY_RULE_SETUP
#line 181 "ael.flex"
#line 181 "ael/ael.flex"
{ STORE_POS; return COMMA;}
YY_BREAK
case 8:
YY_RULE_SETUP
#line 182 "ael.flex"
#line 182 "ael/ael.flex"
{ STORE_POS; return COLON;}
YY_BREAK
case 9:
YY_RULE_SETUP
#line 183 "ael.flex"
#line 183 "ael/ael.flex"
{ STORE_POS; return AMPER;}
YY_BREAK
case 10:
YY_RULE_SETUP
#line 184 "ael.flex"
#line 184 "ael/ael.flex"
{ STORE_POS; return BAR;}
YY_BREAK
case 11:
YY_RULE_SETUP
#line 185 "ael.flex"
#line 185 "ael/ael.flex"
{ STORE_POS; return EXTENMARK;}
YY_BREAK
case 12:
YY_RULE_SETUP
#line 186 "ael.flex"
#line 186 "ael/ael.flex"
{ STORE_POS; return AT;}
YY_BREAK
case 13:
YY_RULE_SETUP
#line 187 "ael.flex"
#line 187 "ael/ael.flex"
{/*comment*/}
YY_BREAK
case 14:
YY_RULE_SETUP
#line 188 "ael.flex"
#line 188 "ael/ael.flex"
{ STORE_POS; return KW_CONTEXT;}
YY_BREAK
case 15:
YY_RULE_SETUP
#line 189 "ael.flex"
#line 189 "ael/ael.flex"
{ STORE_POS; return KW_ABSTRACT;}
YY_BREAK
case 16:
YY_RULE_SETUP
#line 190 "ael.flex"
#line 190 "ael/ael.flex"
{ STORE_POS; return KW_MACRO;};
YY_BREAK
case 17:
YY_RULE_SETUP
#line 191 "ael.flex"
#line 191 "ael/ael.flex"
{ STORE_POS; return KW_GLOBALS;}
YY_BREAK
case 18:
YY_RULE_SETUP
#line 192 "ael.flex"
#line 192 "ael/ael.flex"
{ STORE_POS; return KW_IGNOREPAT;}
YY_BREAK
case 19:
YY_RULE_SETUP
#line 193 "ael.flex"
#line 193 "ael/ael.flex"
{ STORE_POS; return KW_SWITCH;}
YY_BREAK
case 20:
YY_RULE_SETUP
#line 194 "ael.flex"
#line 194 "ael/ael.flex"
{ STORE_POS; return KW_IF;}
YY_BREAK
case 21:
YY_RULE_SETUP
#line 195 "ael.flex"
#line 195 "ael/ael.flex"
{ STORE_POS; return KW_IFTIME;}
YY_BREAK
case 22:
YY_RULE_SETUP
#line 196 "ael.flex"
#line 196 "ael/ael.flex"
{ STORE_POS; return KW_RANDOM;}
YY_BREAK
case 23:
YY_RULE_SETUP
#line 197 "ael.flex"
#line 197 "ael/ael.flex"
{ STORE_POS; return KW_REGEXTEN;}
YY_BREAK
case 24:
YY_RULE_SETUP
#line 198 "ael.flex"
#line 198 "ael/ael.flex"
{ STORE_POS; return KW_HINT;}
YY_BREAK
case 25:
YY_RULE_SETUP
#line 199 "ael.flex"
#line 199 "ael/ael.flex"
{ STORE_POS; return KW_ELSE;}
YY_BREAK
case 26:
YY_RULE_SETUP
#line 200 "ael.flex"
#line 200 "ael/ael.flex"
{ STORE_POS; return KW_GOTO;}
YY_BREAK
case 27:
YY_RULE_SETUP
#line 201 "ael.flex"
#line 201 "ael/ael.flex"
{ STORE_POS; return KW_JUMP;}
YY_BREAK
case 28:
YY_RULE_SETUP
#line 202 "ael.flex"
#line 202 "ael/ael.flex"
{ STORE_POS; return KW_RETURN;}
YY_BREAK
case 29:
YY_RULE_SETUP
#line 203 "ael.flex"
#line 203 "ael/ael.flex"
{ STORE_POS; return KW_BREAK;}
YY_BREAK
case 30:
YY_RULE_SETUP
#line 204 "ael.flex"
#line 204 "ael/ael.flex"
{ STORE_POS; return KW_CONTINUE;}
YY_BREAK
case 31:
YY_RULE_SETUP
#line 205 "ael.flex"
#line 205 "ael/ael.flex"
{ STORE_POS; return KW_FOR;}
YY_BREAK
case 32:
YY_RULE_SETUP
#line 206 "ael.flex"
#line 206 "ael/ael.flex"
{ STORE_POS; return KW_WHILE;}
YY_BREAK
case 33:
YY_RULE_SETUP
#line 207 "ael.flex"
#line 207 "ael/ael.flex"
{ STORE_POS; return KW_CASE;}
YY_BREAK
case 34:
YY_RULE_SETUP
#line 208 "ael.flex"
#line 208 "ael/ael.flex"
{ STORE_POS; return KW_DEFAULT;}
YY_BREAK
case 35:
YY_RULE_SETUP
#line 209 "ael.flex"
#line 209 "ael/ael.flex"
{ STORE_POS; return KW_PATTERN;}
YY_BREAK
case 36:
YY_RULE_SETUP
#line 210 "ael.flex"
#line 210 "ael/ael.flex"
{ STORE_POS; return KW_CATCH;}
YY_BREAK
case 37:
YY_RULE_SETUP
#line 211 "ael.flex"
#line 211 "ael/ael.flex"
{ STORE_POS; return KW_SWITCHES;}
YY_BREAK
case 38:
YY_RULE_SETUP
#line 212 "ael.flex"
#line 212 "ael/ael.flex"
{ STORE_POS; return KW_ESWITCHES;}
YY_BREAK
case 39:
YY_RULE_SETUP
#line 213 "ael.flex"
#line 213 "ael/ael.flex"
{ STORE_POS; return KW_INCLUDES;}
YY_BREAK
case 40:
YY_RULE_SETUP
#line 214 "ael.flex"
#line 214 "ael/ael.flex"
{ BEGIN(comment); my_col += 2; }
YY_BREAK
case 41:
YY_RULE_SETUP
#line 216 "ael.flex"
#line 216 "ael/ael.flex"
{ my_col += yyleng; }
YY_BREAK
case 42:
/* rule 42 can match eol */
YY_RULE_SETUP
#line 217 "ael.flex"
#line 217 "ael/ael.flex"
{ ++my_lineno; my_col=1;}
YY_BREAK
case 43:
YY_RULE_SETUP
#line 218 "ael.flex"
#line 218 "ael/ael.flex"
{ my_col += yyleng; }
YY_BREAK
case 44:
/* rule 44 can match eol */
YY_RULE_SETUP
#line 219 "ael.flex"
#line 219 "ael/ael.flex"
{ ++my_lineno; my_col=1;}
YY_BREAK
case 45:
YY_RULE_SETUP
#line 220 "ael.flex"
#line 220 "ael/ael.flex"
{ my_col += 2; BEGIN(INITIAL); }
YY_BREAK
case 46:
/* rule 46 can match eol */
YY_RULE_SETUP
#line 222 "ael.flex"
#line 222 "ael/ael.flex"
{ my_lineno++; my_col = 1; }
YY_BREAK
case 47:
YY_RULE_SETUP
#line 223 "ael.flex"
#line 223 "ael/ael.flex"
{ my_col += yyleng; }
YY_BREAK
case 48:
YY_RULE_SETUP
#line 224 "ael.flex"
#line 224 "ael/ael.flex"
{ my_col += (yyleng*8)-(my_col%8); }
YY_BREAK
case 49:
YY_RULE_SETUP
#line 226 "ael.flex"
#line 226 "ael/ael.flex"
{
STORE_POS;
yylval->str = strdup(yytext);
@ -1477,7 +1471,7 @@ YY_RULE_SETUP
case 50:
/* rule 50 can match eol */
YY_RULE_SETUP
#line 242 "ael.flex"
#line 242 "ael/ael.flex"
{
if ( pbcpop(')') ) { /* error */
STORE_LOC;
@ -1503,7 +1497,7 @@ YY_RULE_SETUP
case 51:
/* rule 51 can match eol */
YY_RULE_SETUP
#line 264 "ael.flex"
#line 264 "ael/ael.flex"
{
char c = yytext[yyleng-1];
if (c == '(')
@ -1515,7 +1509,7 @@ YY_RULE_SETUP
case 52:
/* rule 52 can match eol */
YY_RULE_SETUP
#line 272 "ael.flex"
#line 272 "ael/ael.flex"
{
char c = yytext[yyleng-1];
if ( pbcpop(c)) { /* error */
@ -1540,7 +1534,7 @@ YY_RULE_SETUP
case 53:
/* rule 53 can match eol */
YY_RULE_SETUP
#line 294 "ael.flex"
#line 294 "ael/ael.flex"
{
char c = yytext[yyleng-1];
if (c == '(')
@ -1552,7 +1546,7 @@ YY_RULE_SETUP
case 54:
/* rule 54 can match eol */
YY_RULE_SETUP
#line 302 "ael.flex"
#line 302 "ael/ael.flex"
{
if ( pbcpop(')') ) { /* error */
STORE_LOC;
@ -1580,7 +1574,7 @@ YY_RULE_SETUP
case 55:
/* rule 55 can match eol */
YY_RULE_SETUP
#line 326 "ael.flex"
#line 326 "ael/ael.flex"
{
if( parencount != 0) { /* printf("Folding in a comma!\n"); */
yymore();
@ -1598,7 +1592,7 @@ YY_RULE_SETUP
case 56:
/* rule 56 can match eol */
YY_RULE_SETUP
#line 340 "ael.flex"
#line 340 "ael/ael.flex"
{
char c = yytext[yyleng-1];
if ( pbcpop(c) ) { /* error */
@ -1619,7 +1613,7 @@ YY_RULE_SETUP
case 57:
/* rule 57 can match eol */
YY_RULE_SETUP
#line 357 "ael.flex"
#line 357 "ael/ael.flex"
{
char c = yytext[yyleng-1];
yymore();
@ -1629,7 +1623,7 @@ YY_RULE_SETUP
case 58:
/* rule 58 can match eol */
YY_RULE_SETUP
#line 363 "ael.flex"
#line 363 "ael/ael.flex"
{
char c = yytext[yyleng-1];
if ( pbcpop(c) ) { /* error */
@ -1645,7 +1639,7 @@ YY_RULE_SETUP
case 59:
/* rule 59 can match eol */
YY_RULE_SETUP
#line 375 "ael.flex"
#line 375 "ael/ael.flex"
{
STORE_LOC;
yylval->str = strdup(yytext);
@ -1658,7 +1652,7 @@ YY_RULE_SETUP
case 60:
/* rule 60 can match eol */
YY_RULE_SETUP
#line 384 "ael.flex"
#line 384 "ael/ael.flex"
{
FILE *in1;
char fnamebuf[1024],*p1,*p2;
@ -1689,7 +1683,7 @@ YY_RULE_SETUP
if (*(p1+1) != '/')
snprintf(fnamebuf, sizeof(fnamebuf), "%s/%s", ast_config_AST_CONFIG_DIR, p1 + 1);
else
#if defined(STANDALONE) || defined(LOW_MEMORY)
#ifdef STANDALONE
strncpy(fnamebuf, p1 + 1, sizeof(fnamebuf) - 1);
#else
ast_copy_string(fnamebuf, p1 + 1, sizeof(fnamebuf));
@ -1727,7 +1721,7 @@ case YY_STATE_EOF(paren):
case YY_STATE_EOF(semic):
case YY_STATE_EOF(argg):
case YY_STATE_EOF(comment):
#line 447 "ael.flex"
#line 447 "ael/ael.flex"
{
if ( --include_stack_index < 0 ) {
yyterminate();
@ -1743,10 +1737,10 @@ case YY_STATE_EOF(comment):
YY_BREAK
case 61:
YY_RULE_SETUP
#line 460 "ael.flex"
#line 460 "ael/ael.flex"
ECHO;
YY_BREAK
#line 1749 "ael_lex.c"
#line 1743 "ael_lex.c"
case YY_END_OF_BUFFER:
{
@ -1932,7 +1926,7 @@ static int yy_get_next_buffer (yyscan_t yyscanner)
else
{
int num_to_read =
size_t num_to_read =
YY_CURRENT_BUFFER_LVALUE->yy_buf_size - number_to_move - 1;
while ( num_to_read <= 0 )
@ -2497,10 +2491,10 @@ YY_BUFFER_STATE ael_yy_scan_buffer (char * base, yy_size_t size , yyscan_t yys
* @note If you want to scan bytes that may contain NUL values, then use
* ael_yy_scan_bytes() instead.
*/
YY_BUFFER_STATE ael_yy_scan_string (yyconst char * yy_str , yyscan_t yyscanner)
YY_BUFFER_STATE ael_yy_scan_string (yyconst char * str , yyscan_t yyscanner)
{
return ael_yy_scan_bytes(yy_str,strlen(yy_str) ,yyscanner);
return ael_yy_scan_bytes(str,strlen(str) ,yyscanner);
}
/** Setup the input buffer state to scan the given bytes. The next call to ael_yylex() will
@ -2882,7 +2876,7 @@ void ael_yyfree (void * ptr , yyscan_t yyscanner)
#undef YY_DECL_IS_OURS
#undef YY_DECL
#endif
#line 460 "ael.flex"
#line 460 "ael/ael.flex"

@ -5,9 +5,6 @@
#include <string.h>
#include <locale.h>
#include <ctype.h>
#if !defined(SOLARIS) && !defined(__CYGWIN__)
#include <err.h>
#endif
#include <errno.h>
#include <regex.h>
#include <limits.h>

Loading…
Cancel
Save