X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/6f0a6f274c8650520003b6408684a3f0bcdece5c..07e65a77aa7b9ae259f6fcf16e8f322f4814ee39:/data/yacc.c diff --git a/data/yacc.c b/data/yacc.c index 9b227aea..74fadd1d 100644 --- a/data/yacc.c +++ b/data/yacc.c @@ -1,11 +1,11 @@ -*- C -*- # Yacc compatible skeleton for Bison -# Copyright (C) 1984, 1989-1990, 2000-2012 Free Software Foundation, +# Copyright (C) 1984, 1989-1990, 2000-2013 Free Software Foundation, # Inc. m4_pushdef([b4_copyright_years], - [1984, 1989-1990, 2000-2012]) + [1984, 1989-1990, 2000-2013]) # 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 @@ -143,7 +143,6 @@ m4_define([b4_rhs_value], [b4_symbol_value([yyvsp@{b4_subtract([$2], [$1])@}], [$3])]) - ## ----------- ## ## Locations. ## ## ----------- ## @@ -223,9 +222,9 @@ m4_define([b4_declare_parser_state_variables], [b4_pure_if([[ int yyerrstatus; /* The stacks and their tools: - `yyss': related to states. - `yyvs': related to semantic values.]b4_locations_if([[ - `yyls': related to locations.]])[ + 'yyss': related to states. + 'yyvs': related to semantic values.]b4_locations_if([[ + 'yyls': related to locations.]])[ Refer to the stacks through separate pointers, to allow yyoverflow to reallocate them elsewhere. */ @@ -346,11 +345,12 @@ m4_if(b4_api_prefix, [yy], [], #define yypstate ]b4_prefix[pstate]])[ #define yylex ]b4_prefix[lex #define yyerror ]b4_prefix[error -#define yylval ]b4_prefix[lval -#define yychar ]b4_prefix[char #define yydebug ]b4_prefix[debug -#define yynerrs ]b4_prefix[nerrs]b4_locations_if([[ -#define yylloc ]b4_prefix[lloc]])])[ +#define yynerrs ]b4_prefix[nerrs +]]b4_pure_if([], [[ +#define yylval ]b4_prefix[lval +#define yychar ]b4_prefix[char]b4_locations_if([[ +#define yylloc ]b4_prefix[lloc]])]))[ /* Copy the first part of user declarations. */ ]b4_user_pre_prologue[ @@ -430,12 +430,7 @@ typedef short int yytype_int16; # endif #endif -/* Suppress unused-variable warnings by "using" E. */ -#ifdef __GNUC__ -# define YYUSE(E) ((void) (E)) -#else -# define YYUSE(E) /* empty */ -#endif +]b4_attribute_define[ #if ]b4_lac_if([[1]], [[! defined yyoverflow || YYERROR_VERBOSE]])[ @@ -467,7 +462,7 @@ b4_push_if([], [b4_lac_if([], [[ # endif]])])[ # ifdef YYSTACK_ALLOC - /* Pacify GCC's `empty if-body' warning. */ + /* Pacify GCC's 'empty if-body' warning. */ # define YYSTACK_FREE(Ptr) do { /* empty */; } while (0) # ifndef YYSTACK_ALLOC_MAXIMUM /* The OS might guarantee only one guard page at the bottom of the stack, @@ -675,7 +670,6 @@ while (0) ]b4_yylloc_default_define[ #define YYRHSLOC(Rhs, K) ((Rhs)[K]) ]])[ -]b4_yy_location_print_define[ /* Enable debugging if requested. */ #if ]b4_api_PREFIX[DEBUG @@ -691,6 +685,8 @@ do { \ YYFPRINTF Args; \ } while (0) +]b4_yy_location_print_define[ + # define YY_SYMBOL_PRINT(Title, Type, Value, Location) \ do { \ if (yydebug) \ @@ -1652,7 +1648,7 @@ yyreduce: yylen = yyr2[yyn]; /* If YYLEN is nonzero, implement the default value of the action: - `$$ = $1'. + '$$ = $1'. Otherwise, the following line sets YYVAL to garbage. This behavior is undocumented and Bison @@ -1700,7 +1696,7 @@ yyreduce: *++yyvsp = yyval;]b4_locations_if([ *++yylsp = yyloc;])[ - /* Now `shift' the result of the reduction. Determine what state + /* Now 'shift' the result of the reduction. Determine what state that goes to, based on the state we popped back to and the rule number reduced by. */