From c260301476fefa97f9c718caee8737f008e36928 Mon Sep 17 00:00:00 2001 From: Russell Bryant Date: Tue, 20 Jun 2006 01:06:50 +0000 Subject: - use $(CC) instead of gcc when building testexpr2 - modify ast_expr2.fl and ast_expr2.y to not try to register the file version in a STANDALONE build - add config.status as a dependency on testexpr2 to ensure configure is executed before building it - add include/asterisk/buildopts.h as a dependency for testexpr2 as well - add -Iinclude to the gcc commands for building the testexpr2 objects so that it can find the local asterisk headers git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@34980 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- Makefile | 8 +-- ast_expr2.c | 220 +++++++++++++++++++++++++++++++---------------------------- ast_expr2.fl | 2 + ast_expr2.h | 32 +++++---- ast_expr2.y | 2 + ast_expr2f.c | 86 +++++++++++------------ 6 files changed, 189 insertions(+), 161 deletions(-) diff --git a/Makefile b/Makefile index e0db13a79..8d4a6e838 100644 --- a/Makefile +++ b/Makefile @@ -423,10 +423,10 @@ ast_expr2.c ast_expr2.h: ast_expr2f.c: flex -o $@ --full ast_expr2.fl -testexpr2: ast_expr2f.c ast_expr2.c ast_expr2.h - gcc -g -c -DSTANDALONE ast_expr2f.c - gcc -g -c -DSTANDALONE ast_expr2.c - gcc -g -o testexpr2 ast_expr2f.o ast_expr2.o +testexpr2: config.status include/asterisk/buildopts.h ast_expr2f.c ast_expr2.c ast_expr2.h + $(CC) -g -c -Iinclude -DSTANDALONE ast_expr2f.c + $(CC) -g -c -Iinclude -DSTANDALONE ast_expr2.c + $(CC) -g -o testexpr2 ast_expr2f.o ast_expr2.o rm ast_expr2.o ast_expr2f.o manpage: asterisk.8 diff --git a/ast_expr2.c b/ast_expr2.c index dbd1db802..bd152549b 100644 --- a/ast_expr2.c +++ b/ast_expr2.c @@ -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" @@ -131,7 +141,9 @@ #include "asterisk.h" +#ifndef STANDALONE ASTERISK_FILE_VERSION(__FILE__, "$Revision$") +#endif #include #include @@ -272,12 +284,12 @@ int ast_yyerror(const char *,YYLTYPE *, struct parse_io *); #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 140 "ast_expr2.y" +#line 147 "ast_expr2.y" { struct val *val; } -/* Line 198 of yacc.c. */ -#line 276 "ast_expr2.c" +/* Line 193 of yacc.c. */ +#line 293 "ast_expr2.c" YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 @@ -299,13 +311,13 @@ typedef struct YYLTYPE /* Copy the second part of user declarations. */ -#line 144 "ast_expr2.y" +#line 151 "ast_expr2.y" extern int ast_yylex __P((YYSTYPE *, YYLTYPE *, yyscan_t)); -/* Line 221 of yacc.c. */ -#line 304 "ast_expr2.c" +/* Line 216 of yacc.c. */ +#line 321 "ast_expr2.c" #ifdef short # undef short @@ -435,8 +447,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 /* INFRINGES ON USER NAME SPACE */ +# ifndef _STDLIB_H +# define _STDLIB_H 1 +# endif # endif # ifndef YYMALLOC # define YYMALLOC malloc @@ -452,9 +469,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 */ @@ -598,9 +612,9 @@ static const yytype_int8 yyrhs[] = /* YYRLINE[YYN] -- source line where rule number YYN was defined. */ static const yytype_uint16 yyrline[] = { - 0, 168, 168, 176, 183, 184, 188, 192, 196, 200, - 204, 208, 212, 216, 220, 224, 228, 232, 236, 240, - 244, 248, 252, 256 + 0, 175, 175, 183, 190, 191, 195, 199, 203, 207, + 211, 215, 219, 223, 227, 231, 235, 239, 243, 247, + 251, 255, 259, 263 }; #endif @@ -858,14 +872,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) +yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, YYLTYPE const * const yylocationp) #else static void yy_symbol_value_print (yyoutput, yytype, yyvaluep, yylocationp) FILE *yyoutput; int yytype; - const YYSTYPE * const yyvaluep; - const YYLTYPE * const yylocationp; + YYSTYPE const * const yyvaluep; + YYLTYPE const * const yylocationp; #endif { if (!yyvaluep) @@ -892,14 +906,14 @@ yy_symbol_value_print (yyoutput, yytype, yyvaluep, yylocationp) #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) +yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep, YYLTYPE const * const yylocationp) #else static void yy_symbol_print (yyoutput, yytype, yyvaluep, yylocationp) FILE *yyoutput; int yytype; - const YYSTYPE * const yyvaluep; - const YYLTYPE * const yylocationp; + YYSTYPE const * const yyvaluep; + YYLTYPE const * const yylocationp; #endif { if (yytype < YYNTOKENS) @@ -952,8 +966,7 @@ static void yy_reduce_print (YYSTYPE *yyvsp, YYLTYPE *yylsp, int yyrule) #else static void -yy_reduce_print (yyvsp, yylsp, yyrule - ) +yy_reduce_print (yyvsp, yylsp, yyrule) YYSTYPE *yyvsp; YYLTYPE *yylsp; int yyrule; @@ -1076,7 +1089,7 @@ yytnamerr (char *yyres, const char *yystr) { if (*yystr == '"') { - size_t yyn = 0; + YYSIZE_T yyn = 0; char const *yyp = yystr; for (;;) @@ -1123,7 +1136,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 { @@ -1161,7 +1174,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; @@ -1249,114 +1262,114 @@ yydestruct (yymsg, yytype, yyvaluep, yylocationp) switch (yytype) { case 3: /* "TOK_COLONCOLON" */ -#line 162 "ast_expr2.y" +#line 169 "ast_expr2.y" { free_value((yyvaluep->val)); }; -#line 1250 "ast_expr2.c" +#line 1268 "ast_expr2.c" break; case 4: /* "TOK_COND" */ -#line 162 "ast_expr2.y" +#line 169 "ast_expr2.y" { free_value((yyvaluep->val)); }; -#line 1255 "ast_expr2.c" +#line 1273 "ast_expr2.c" break; case 5: /* "TOK_OR" */ -#line 162 "ast_expr2.y" +#line 169 "ast_expr2.y" { free_value((yyvaluep->val)); }; -#line 1260 "ast_expr2.c" +#line 1278 "ast_expr2.c" break; case 6: /* "TOK_AND" */ -#line 162 "ast_expr2.y" +#line 169 "ast_expr2.y" { free_value((yyvaluep->val)); }; -#line 1265 "ast_expr2.c" +#line 1283 "ast_expr2.c" break; case 7: /* "TOK_NE" */ -#line 162 "ast_expr2.y" +#line 169 "ast_expr2.y" { free_value((yyvaluep->val)); }; -#line 1270 "ast_expr2.c" +#line 1288 "ast_expr2.c" break; case 8: /* "TOK_LE" */ -#line 162 "ast_expr2.y" +#line 169 "ast_expr2.y" { free_value((yyvaluep->val)); }; -#line 1275 "ast_expr2.c" +#line 1293 "ast_expr2.c" break; case 9: /* "TOK_GE" */ -#line 162 "ast_expr2.y" +#line 169 "ast_expr2.y" { free_value((yyvaluep->val)); }; -#line 1280 "ast_expr2.c" +#line 1298 "ast_expr2.c" break; case 10: /* "TOK_LT" */ -#line 162 "ast_expr2.y" +#line 169 "ast_expr2.y" { free_value((yyvaluep->val)); }; -#line 1285 "ast_expr2.c" +#line 1303 "ast_expr2.c" break; case 11: /* "TOK_GT" */ -#line 162 "ast_expr2.y" +#line 169 "ast_expr2.y" { free_value((yyvaluep->val)); }; -#line 1290 "ast_expr2.c" +#line 1308 "ast_expr2.c" break; case 12: /* "TOK_EQ" */ -#line 162 "ast_expr2.y" +#line 169 "ast_expr2.y" { free_value((yyvaluep->val)); }; -#line 1295 "ast_expr2.c" +#line 1313 "ast_expr2.c" break; case 13: /* "TOK_MINUS" */ -#line 162 "ast_expr2.y" +#line 169 "ast_expr2.y" { free_value((yyvaluep->val)); }; -#line 1300 "ast_expr2.c" +#line 1318 "ast_expr2.c" break; case 14: /* "TOK_PLUS" */ -#line 162 "ast_expr2.y" +#line 169 "ast_expr2.y" { free_value((yyvaluep->val)); }; -#line 1305 "ast_expr2.c" +#line 1323 "ast_expr2.c" break; case 15: /* "TOK_MOD" */ -#line 162 "ast_expr2.y" +#line 169 "ast_expr2.y" { free_value((yyvaluep->val)); }; -#line 1310 "ast_expr2.c" +#line 1328 "ast_expr2.c" break; case 16: /* "TOK_DIV" */ -#line 162 "ast_expr2.y" +#line 169 "ast_expr2.y" { free_value((yyvaluep->val)); }; -#line 1315 "ast_expr2.c" +#line 1333 "ast_expr2.c" break; case 17: /* "TOK_MULT" */ -#line 162 "ast_expr2.y" +#line 169 "ast_expr2.y" { free_value((yyvaluep->val)); }; -#line 1320 "ast_expr2.c" +#line 1338 "ast_expr2.c" break; case 18: /* "TOK_COMPL" */ -#line 162 "ast_expr2.y" +#line 169 "ast_expr2.y" { free_value((yyvaluep->val)); }; -#line 1325 "ast_expr2.c" +#line 1343 "ast_expr2.c" break; case 19: /* "TOK_EQTILDE" */ -#line 162 "ast_expr2.y" +#line 169 "ast_expr2.y" { free_value((yyvaluep->val)); }; -#line 1330 "ast_expr2.c" +#line 1348 "ast_expr2.c" break; case 20: /* "TOK_COLON" */ -#line 162 "ast_expr2.y" +#line 169 "ast_expr2.y" { free_value((yyvaluep->val)); }; -#line 1335 "ast_expr2.c" +#line 1353 "ast_expr2.c" break; case 21: /* "TOK_LP" */ -#line 162 "ast_expr2.y" +#line 169 "ast_expr2.y" { free_value((yyvaluep->val)); }; -#line 1340 "ast_expr2.c" +#line 1358 "ast_expr2.c" break; case 22: /* "TOK_RP" */ -#line 162 "ast_expr2.y" +#line 169 "ast_expr2.y" { free_value((yyvaluep->val)); }; -#line 1345 "ast_expr2.c" +#line 1363 "ast_expr2.c" break; case 23: /* "TOKEN" */ -#line 162 "ast_expr2.y" +#line 169 "ast_expr2.y" { free_value((yyvaluep->val)); }; -#line 1350 "ast_expr2.c" +#line 1368 "ast_expr2.c" break; case 26: /* "expr" */ -#line 162 "ast_expr2.y" +#line 169 "ast_expr2.y" { free_value((yyvaluep->val)); }; -#line 1355 "ast_expr2.c" +#line 1373 "ast_expr2.c" break; default: @@ -1679,7 +1692,7 @@ yyreduce: switch (yyn) { case 2: -#line 168 "ast_expr2.y" +#line 175 "ast_expr2.y" { ((struct parse_io *)parseio)->val = (struct val *)calloc(sizeof(struct val),1); ((struct parse_io *)parseio)->val->type = (yyvsp[(1) - (1)].val)->type; if( (yyvsp[(1) - (1)].val)->type == AST_EXPR_integer ) @@ -1691,7 +1704,7 @@ yyreduce: break; case 3: -#line 176 "ast_expr2.y" +#line 183 "ast_expr2.y" {/* nothing */ ((struct parse_io *)parseio)->val = (struct val *)calloc(sizeof(struct val),1); ((struct parse_io *)parseio)->val->type = AST_EXPR_string; ((struct parse_io *)parseio)->val->u.s = strdup(""); @@ -1699,12 +1712,12 @@ yyreduce: break; case 4: -#line 183 "ast_expr2.y" +#line 190 "ast_expr2.y" { (yyval.val)= (yyvsp[(1) - (1)].val);;} break; case 5: -#line 184 "ast_expr2.y" +#line 191 "ast_expr2.y" { (yyval.val) = (yyvsp[(2) - (3)].val); (yyloc).first_column = (yylsp[(1) - (3)]).first_column; (yyloc).last_column = (yylsp[(3) - (3)]).last_column; (yyloc).first_line=0; (yyloc).last_line=0; @@ -1712,7 +1725,7 @@ yyreduce: break; case 6: -#line 188 "ast_expr2.y" +#line 195 "ast_expr2.y" { (yyval.val) = op_or ((yyvsp[(1) - (3)].val), (yyvsp[(3) - (3)].val)); DESTROY((yyvsp[(2) - (3)].val)); (yyloc).first_column = (yylsp[(1) - (3)]).first_column; (yyloc).last_column = (yylsp[(3) - (3)]).last_column; @@ -1720,7 +1733,7 @@ yyreduce: break; case 7: -#line 192 "ast_expr2.y" +#line 199 "ast_expr2.y" { (yyval.val) = op_and ((yyvsp[(1) - (3)].val), (yyvsp[(3) - (3)].val)); DESTROY((yyvsp[(2) - (3)].val)); (yyloc).first_column = (yylsp[(1) - (3)]).first_column; (yyloc).last_column = (yylsp[(3) - (3)]).last_column; @@ -1728,7 +1741,7 @@ yyreduce: break; case 8: -#line 196 "ast_expr2.y" +#line 203 "ast_expr2.y" { (yyval.val) = op_eq ((yyvsp[(1) - (3)].val), (yyvsp[(3) - (3)].val)); DESTROY((yyvsp[(2) - (3)].val)); (yyloc).first_column = (yylsp[(1) - (3)]).first_column; (yyloc).last_column = (yylsp[(3) - (3)]).last_column; @@ -1736,7 +1749,7 @@ yyreduce: break; case 9: -#line 200 "ast_expr2.y" +#line 207 "ast_expr2.y" { (yyval.val) = op_gt ((yyvsp[(1) - (3)].val), (yyvsp[(3) - (3)].val)); DESTROY((yyvsp[(2) - (3)].val)); (yyloc).first_column = (yylsp[(1) - (3)]).first_column; (yyloc).last_column = (yylsp[(3) - (3)]).last_column; @@ -1744,7 +1757,7 @@ yyreduce: break; case 10: -#line 204 "ast_expr2.y" +#line 211 "ast_expr2.y" { (yyval.val) = op_lt ((yyvsp[(1) - (3)].val), (yyvsp[(3) - (3)].val)); DESTROY((yyvsp[(2) - (3)].val)); (yyloc).first_column = (yylsp[(1) - (3)]).first_column; (yyloc).last_column = (yylsp[(3) - (3)]).last_column; @@ -1752,7 +1765,7 @@ yyreduce: break; case 11: -#line 208 "ast_expr2.y" +#line 215 "ast_expr2.y" { (yyval.val) = op_ge ((yyvsp[(1) - (3)].val), (yyvsp[(3) - (3)].val)); DESTROY((yyvsp[(2) - (3)].val)); (yyloc).first_column = (yylsp[(1) - (3)]).first_column; (yyloc).last_column = (yylsp[(3) - (3)]).last_column; @@ -1760,7 +1773,7 @@ yyreduce: break; case 12: -#line 212 "ast_expr2.y" +#line 219 "ast_expr2.y" { (yyval.val) = op_le ((yyvsp[(1) - (3)].val), (yyvsp[(3) - (3)].val)); DESTROY((yyvsp[(2) - (3)].val)); (yyloc).first_column = (yylsp[(1) - (3)]).first_column; (yyloc).last_column = (yylsp[(3) - (3)]).last_column; @@ -1768,7 +1781,7 @@ yyreduce: break; case 13: -#line 216 "ast_expr2.y" +#line 223 "ast_expr2.y" { (yyval.val) = op_ne ((yyvsp[(1) - (3)].val), (yyvsp[(3) - (3)].val)); DESTROY((yyvsp[(2) - (3)].val)); (yyloc).first_column = (yylsp[(1) - (3)]).first_column; (yyloc).last_column = (yylsp[(3) - (3)]).last_column; @@ -1776,7 +1789,7 @@ yyreduce: break; case 14: -#line 220 "ast_expr2.y" +#line 227 "ast_expr2.y" { (yyval.val) = op_plus ((yyvsp[(1) - (3)].val), (yyvsp[(3) - (3)].val)); DESTROY((yyvsp[(2) - (3)].val)); (yyloc).first_column = (yylsp[(1) - (3)]).first_column; (yyloc).last_column = (yylsp[(3) - (3)]).last_column; @@ -1784,7 +1797,7 @@ yyreduce: break; case 15: -#line 224 "ast_expr2.y" +#line 231 "ast_expr2.y" { (yyval.val) = op_minus ((yyvsp[(1) - (3)].val), (yyvsp[(3) - (3)].val)); DESTROY((yyvsp[(2) - (3)].val)); (yyloc).first_column = (yylsp[(1) - (3)]).first_column; (yyloc).last_column = (yylsp[(3) - (3)]).last_column; @@ -1792,7 +1805,7 @@ yyreduce: break; case 16: -#line 228 "ast_expr2.y" +#line 235 "ast_expr2.y" { (yyval.val) = op_negate ((yyvsp[(2) - (2)].val)); DESTROY((yyvsp[(1) - (2)].val)); (yyloc).first_column = (yylsp[(1) - (2)]).first_column; (yyloc).last_column = (yylsp[(2) - (2)]).last_column; @@ -1800,7 +1813,7 @@ yyreduce: break; case 17: -#line 232 "ast_expr2.y" +#line 239 "ast_expr2.y" { (yyval.val) = op_compl ((yyvsp[(2) - (2)].val)); DESTROY((yyvsp[(1) - (2)].val)); (yyloc).first_column = (yylsp[(1) - (2)]).first_column; (yyloc).last_column = (yylsp[(2) - (2)]).last_column; @@ -1808,7 +1821,7 @@ yyreduce: break; case 18: -#line 236 "ast_expr2.y" +#line 243 "ast_expr2.y" { (yyval.val) = op_times ((yyvsp[(1) - (3)].val), (yyvsp[(3) - (3)].val)); DESTROY((yyvsp[(2) - (3)].val)); (yyloc).first_column = (yylsp[(1) - (3)]).first_column; (yyloc).last_column = (yylsp[(3) - (3)]).last_column; @@ -1816,7 +1829,7 @@ yyreduce: break; case 19: -#line 240 "ast_expr2.y" +#line 247 "ast_expr2.y" { (yyval.val) = op_div ((yyvsp[(1) - (3)].val), (yyvsp[(3) - (3)].val)); DESTROY((yyvsp[(2) - (3)].val)); (yyloc).first_column = (yylsp[(1) - (3)]).first_column; (yyloc).last_column = (yylsp[(3) - (3)]).last_column; @@ -1824,7 +1837,7 @@ yyreduce: break; case 20: -#line 244 "ast_expr2.y" +#line 251 "ast_expr2.y" { (yyval.val) = op_rem ((yyvsp[(1) - (3)].val), (yyvsp[(3) - (3)].val)); DESTROY((yyvsp[(2) - (3)].val)); (yyloc).first_column = (yylsp[(1) - (3)]).first_column; (yyloc).last_column = (yylsp[(3) - (3)]).last_column; @@ -1832,7 +1845,7 @@ yyreduce: break; case 21: -#line 248 "ast_expr2.y" +#line 255 "ast_expr2.y" { (yyval.val) = op_colon ((yyvsp[(1) - (3)].val), (yyvsp[(3) - (3)].val)); DESTROY((yyvsp[(2) - (3)].val)); (yyloc).first_column = (yylsp[(1) - (3)]).first_column; (yyloc).last_column = (yylsp[(3) - (3)]).last_column; @@ -1840,7 +1853,7 @@ yyreduce: break; case 22: -#line 252 "ast_expr2.y" +#line 259 "ast_expr2.y" { (yyval.val) = op_eqtilde ((yyvsp[(1) - (3)].val), (yyvsp[(3) - (3)].val)); DESTROY((yyvsp[(2) - (3)].val)); (yyloc).first_column = (yylsp[(1) - (3)]).first_column; (yyloc).last_column = (yylsp[(3) - (3)]).last_column; @@ -1848,7 +1861,7 @@ yyreduce: break; case 23: -#line 256 "ast_expr2.y" +#line 263 "ast_expr2.y" { (yyval.val) = op_cond ((yyvsp[(1) - (5)].val), (yyvsp[(3) - (5)].val), (yyvsp[(5) - (5)].val)); DESTROY((yyvsp[(2) - (5)].val)); DESTROY((yyvsp[(4) - (5)].val)); @@ -1857,8 +1870,8 @@ yyreduce: break; -/* Line 1270 of yacc.c. */ -#line 1857 "ast_expr2.c" +/* Line 1267 of yacc.c. */ +#line 1875 "ast_expr2.c" default: break; } YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); @@ -2073,11 +2086,12 @@ yyreturn: if (yymsg != yymsgbuf) YYSTACK_FREE (yymsg); #endif - return yyresult; + /* Make sure YYID is used. */ + return YYID (yyresult); } -#line 263 "ast_expr2.y" +#line 270 "ast_expr2.y" static struct val * diff --git a/ast_expr2.fl b/ast_expr2.fl index 480350283..df9668fe8 100644 --- a/ast_expr2.fl +++ b/ast_expr2.fl @@ -24,7 +24,9 @@ #include "asterisk.h" +#ifndef STANDALONE ASTERISK_FILE_VERSION(__FILE__, "$Revision$") +#endif #include #include diff --git a/ast_expr2.h b/ast_expr2.h index 190ef975c..5b3fc5c3b 100644 --- a/ast_expr2.h +++ b/ast_expr2.h @@ -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 @@ -80,12 +90,12 @@ #if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED typedef union YYSTYPE -#line 140 "ast_expr2.y" +#line 147 "ast_expr2.y" { struct val *val; } -/* Line 1536 of yacc.c. */ -#line 89 "ast_expr2.h" +/* Line 1529 of yacc.c. */ +#line 99 "ast_expr2.h" YYSTYPE; # define yystype YYSTYPE /* obsolescent; will be withdrawn */ # define YYSTYPE_IS_DECLARED 1 @@ -108,5 +118,3 @@ typedef struct YYLTYPE #endif - - diff --git a/ast_expr2.y b/ast_expr2.y index 61a3142ef..85c34b2c9 100644 --- a/ast_expr2.y +++ b/ast_expr2.y @@ -14,7 +14,9 @@ #include "asterisk.h" +#ifndef STANDALONE ASTERISK_FILE_VERSION(__FILE__, "$Revision$") +#endif #include #include diff --git a/ast_expr2f.c b/ast_expr2f.c index 77731ae4c..7d790924d 100644 --- a/ast_expr2f.c +++ b/ast_expr2f.c @@ -1356,7 +1356,9 @@ static yyconst yy_state_type yy_NUL_trans[54] = #include "asterisk.h" +#ifndef STANDALONE ASTERISK_FILE_VERSION(__FILE__, "$Revision$") +#endif #include #include @@ -1421,7 +1423,7 @@ int ast_yyget_column(yyscan_t yyscanner); static int curlycount = 0; static char *expr2_token_subst(char *mess); -#line 1425 "ast_expr2f.c" +#line 1427 "ast_expr2f.c" #define INITIAL 0 #define var 1 @@ -1644,10 +1646,10 @@ YY_DECL register int yy_act; struct yyguts_t * yyg = (struct yyguts_t*)yyscanner; -#line 102 "ast_expr2.fl" +#line 104 "ast_expr2.fl" -#line 1651 "ast_expr2f.c" +#line 1653 "ast_expr2f.c" yylval = yylval_param; @@ -1730,122 +1732,122 @@ do_action: /* This label is used only to access EOF actions. */ case 1: YY_RULE_SETUP -#line 104 "ast_expr2.fl" +#line 106 "ast_expr2.fl" { SET_COLUMNS; SET_STRING; return TOK_OR;} YY_BREAK case 2: YY_RULE_SETUP -#line 105 "ast_expr2.fl" +#line 107 "ast_expr2.fl" { SET_COLUMNS; SET_STRING; return TOK_AND;} YY_BREAK case 3: YY_RULE_SETUP -#line 106 "ast_expr2.fl" +#line 108 "ast_expr2.fl" { SET_COLUMNS; SET_STRING; return TOK_EQ;} YY_BREAK case 4: YY_RULE_SETUP -#line 107 "ast_expr2.fl" +#line 109 "ast_expr2.fl" { SET_COLUMNS; SET_STRING; return TOK_OR;} YY_BREAK case 5: YY_RULE_SETUP -#line 108 "ast_expr2.fl" +#line 110 "ast_expr2.fl" { SET_COLUMNS; SET_STRING; return TOK_AND;} YY_BREAK case 6: YY_RULE_SETUP -#line 109 "ast_expr2.fl" +#line 111 "ast_expr2.fl" { SET_COLUMNS; SET_STRING; return TOK_EQ;} YY_BREAK case 7: YY_RULE_SETUP -#line 110 "ast_expr2.fl" +#line 112 "ast_expr2.fl" { SET_COLUMNS; SET_STRING; return TOK_EQTILDE;} YY_BREAK case 8: YY_RULE_SETUP -#line 111 "ast_expr2.fl" +#line 113 "ast_expr2.fl" { SET_COLUMNS; SET_STRING; return TOK_GT;} YY_BREAK case 9: YY_RULE_SETUP -#line 112 "ast_expr2.fl" +#line 114 "ast_expr2.fl" { SET_COLUMNS; SET_STRING; return TOK_LT;} YY_BREAK case 10: YY_RULE_SETUP -#line 113 "ast_expr2.fl" +#line 115 "ast_expr2.fl" { SET_COLUMNS; SET_STRING; return TOK_GE;} YY_BREAK case 11: YY_RULE_SETUP -#line 114 "ast_expr2.fl" +#line 116 "ast_expr2.fl" { SET_COLUMNS; SET_STRING; return TOK_LE;} YY_BREAK case 12: YY_RULE_SETUP -#line 115 "ast_expr2.fl" +#line 117 "ast_expr2.fl" { SET_COLUMNS; SET_STRING; return TOK_NE;} YY_BREAK case 13: YY_RULE_SETUP -#line 116 "ast_expr2.fl" +#line 118 "ast_expr2.fl" { SET_COLUMNS; SET_STRING; return TOK_PLUS;} YY_BREAK case 14: YY_RULE_SETUP -#line 117 "ast_expr2.fl" +#line 119 "ast_expr2.fl" { SET_COLUMNS; SET_STRING; return TOK_MINUS;} YY_BREAK case 15: YY_RULE_SETUP -#line 118 "ast_expr2.fl" +#line 120 "ast_expr2.fl" { SET_COLUMNS; SET_STRING; return TOK_MULT;} YY_BREAK case 16: YY_RULE_SETUP -#line 119 "ast_expr2.fl" +#line 121 "ast_expr2.fl" { SET_COLUMNS; SET_STRING; return TOK_DIV;} YY_BREAK case 17: YY_RULE_SETUP -#line 120 "ast_expr2.fl" +#line 122 "ast_expr2.fl" { SET_COLUMNS; SET_STRING; return TOK_MOD;} YY_BREAK case 18: YY_RULE_SETUP -#line 121 "ast_expr2.fl" +#line 123 "ast_expr2.fl" { SET_COLUMNS; SET_STRING; return TOK_COND;} YY_BREAK case 19: YY_RULE_SETUP -#line 122 "ast_expr2.fl" +#line 124 "ast_expr2.fl" { SET_COLUMNS; SET_STRING; return TOK_COMPL;} YY_BREAK case 20: YY_RULE_SETUP -#line 123 "ast_expr2.fl" +#line 125 "ast_expr2.fl" { SET_COLUMNS; SET_STRING; return TOK_COLON;} YY_BREAK case 21: YY_RULE_SETUP -#line 124 "ast_expr2.fl" +#line 126 "ast_expr2.fl" { SET_COLUMNS; SET_STRING; return TOK_COLONCOLON;} YY_BREAK case 22: YY_RULE_SETUP -#line 125 "ast_expr2.fl" +#line 127 "ast_expr2.fl" { SET_COLUMNS; SET_STRING; return TOK_LP;} YY_BREAK case 23: YY_RULE_SETUP -#line 126 "ast_expr2.fl" +#line 128 "ast_expr2.fl" { SET_COLUMNS; SET_STRING; return TOK_RP;} YY_BREAK case 24: YY_RULE_SETUP -#line 127 "ast_expr2.fl" +#line 129 "ast_expr2.fl" { /* gather the contents of ${} expressions, with trailing stuff, * into a single TOKEN. @@ -1858,24 +1860,24 @@ YY_RULE_SETUP YY_BREAK case 25: YY_RULE_SETUP -#line 137 "ast_expr2.fl" +#line 139 "ast_expr2.fl" {} YY_BREAK case 26: /* rule 26 can match eol */ YY_RULE_SETUP -#line 138 "ast_expr2.fl" +#line 140 "ast_expr2.fl" {SET_COLUMNS; SET_STRING; return TOKEN;} YY_BREAK case 27: /* rule 27 can match eol */ YY_RULE_SETUP -#line 140 "ast_expr2.fl" +#line 142 "ast_expr2.fl" {/* what to do with eol */} YY_BREAK case 28: YY_RULE_SETUP -#line 141 "ast_expr2.fl" +#line 143 "ast_expr2.fl" { SET_COLUMNS; /* the original behavior of the expression parser was @@ -1887,7 +1889,7 @@ YY_RULE_SETUP YY_BREAK case 29: YY_RULE_SETUP -#line 150 "ast_expr2.fl" +#line 152 "ast_expr2.fl" { SET_COLUMNS; SET_STRING; @@ -1897,7 +1899,7 @@ YY_RULE_SETUP case 30: /* rule 30 can match eol */ YY_RULE_SETUP -#line 157 "ast_expr2.fl" +#line 159 "ast_expr2.fl" { curlycount--; if (curlycount < 0) { @@ -1911,7 +1913,7 @@ YY_RULE_SETUP case 31: /* rule 31 can match eol */ YY_RULE_SETUP -#line 167 "ast_expr2.fl" +#line 169 "ast_expr2.fl" { curlycount++; yymore(); @@ -1919,7 +1921,7 @@ YY_RULE_SETUP YY_BREAK case 32: YY_RULE_SETUP -#line 173 "ast_expr2.fl" +#line 175 "ast_expr2.fl" { BEGIN(0); SET_COLUMNS; @@ -1930,7 +1932,7 @@ YY_RULE_SETUP case 33: /* rule 33 can match eol */ YY_RULE_SETUP -#line 180 "ast_expr2.fl" +#line 182 "ast_expr2.fl" { char c = yytext[yyleng-1]; BEGIN(0); @@ -1942,7 +1944,7 @@ YY_RULE_SETUP YY_BREAK case 34: YY_RULE_SETUP -#line 189 "ast_expr2.fl" +#line 191 "ast_expr2.fl" { curlycount = 0; BEGIN(var); @@ -1950,7 +1952,7 @@ YY_RULE_SETUP } YY_BREAK case YY_STATE_EOF(trail): -#line 195 "ast_expr2.fl" +#line 197 "ast_expr2.fl" { BEGIN(0); SET_COLUMNS; @@ -1961,10 +1963,10 @@ case YY_STATE_EOF(trail): YY_BREAK case 35: YY_RULE_SETUP -#line 203 "ast_expr2.fl" +#line 205 "ast_expr2.fl" ECHO; YY_BREAK -#line 1968 "ast_expr2f.c" +#line 1970 "ast_expr2f.c" case YY_STATE_EOF(INITIAL): case YY_STATE_EOF(var): yyterminate(); @@ -2197,7 +2199,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, num_to_read ); + yyg->yy_n_chars, (size_t) num_to_read ); YY_CURRENT_BUFFER_LVALUE->yy_n_chars = yyg->yy_n_chars; } @@ -3091,7 +3093,7 @@ void ast_yyfree (void * ptr , yyscan_t yyscanner) #define YYTABLES_NAME "yytables" -#line 203 "ast_expr2.fl" +#line 205 "ast_expr2.fl" -- cgit v1.2.3