# ifdef YYSTACK_ALLOC
/* Pacify GCC's `empty if-body' warning. */
-# define YYSTACK_FREE(Ptr) do { /* empty */; } while (0)
+# define YYSTACK_FREE(Ptr) { /* empty */; }
# ifndef YYSTACK_ALLOC_MAXIMUM
/* The OS might guarantee only one guard page at the bottom of the stack,
and a page size can be as small as 4096 bytes. So we cannot safely
@@ -291,19 +291,20 @@
/* Copy COUNT objects from FROM to TO. The source and destination do
not overlap. */
# ifndef YYCOPY
-# if defined (__GNUC__) && 1 < __GNUC__
+# if defined (__GNUC__)
+# if 1 < __GNUC__
# define YYCOPY(To, From, Count) \
__builtin_memcpy (To, From, (Count) * sizeof (*(From)))
-# else
+# endif
+# endif
+# endif
+# ifndef YYCOPY
# define YYCOPY(To, From, Count) \
- do \
{ \
YYSIZE_T yyi; \
for (yyi = 0; yyi < (Count); yyi++) \
(To)[yyi] = (From)[yyi]; \
- } \
- while (0)
-# endif
+ }
# endif
/* Relocate STACK from its old location to the new one. The
@@ -312,15 +313,13 @@
stack. Advance YYPTR to a properly aligned location for the next
stack. */
# define YYSTACK_RELOCATE(Stack) \
- do \
{ \
YYSIZE_T yynewbytes; \
YYCOPY (&yyptr->Stack, Stack, yysize); \
Stack = &yyptr->Stack; \
yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
yyptr += yynewbytes / sizeof (*yyptr); \
- } \
- while (0)
+ }
#endif
@@ -487,6 +486,7 @@
#define YYACCEPT goto yyacceptlab
#define YYABORT goto yyabortlab
#define YYERROR goto yyerrorlab
+int yy_false=false; /* Used to suppress compiler warning about unused label */
/* Like YYERROR except do call yyerror. This remains here temporarily
@@ -498,7 +498,7 @@
#define YYRECOVERING() (!!yyerrstatus)
/*------------------------------------------------------------------.
| yy_stack_print -- Print the state stack from its BOTTOM up to its |
@@ -610,10 +610,10 @@
}
- /* Pacify compilers like GCC when the user code never invokes
- YYERROR and the label yyerrorlab therefore never appears in user
- code. */
- if (0)
- goto yyerrorlab;
-
]b4_location_if([[ yyerror_range[0] = yylsp[1-yylen];
yylsp -= yylen;
]])[yyvsp -= yylen;
@@ -1297,6 +1291,13 @@
`-----------------------------------*/
yyabortlab:
yyresult = 1;
+
+ /* Pacify compilers like GCC when the user code never invokes
+ YYERROR and the label yyerrorlab therefore never appears in user
+ code. */
+ if (yy_false)
+ goto yyerrorlab;
+
goto yyreturn;