]> git.saurik.com Git - bison.git/blobdiff - data/push.c
* data/push.c (union yyalloc): Rename yyss, yyvs, and yyls fields to
[bison.git] / data / push.c
index b7eededf9ceb25070e1b7a19fb18418419240d04..a1cdb1864527496c27a5d1088277f7c4f532083a 100644 (file)
@@ -373,9 +373,9 @@ void free (void *); /* INFRINGES ON USER NAME SPACE */
 /* A type that is properly aligned for any stack member.  */
 union yyalloc
 {
-  yytype_int16 yyss;
-  YYSTYPE yyvs;
-  ]b4_locations_if([  YYLTYPE yyls;
+  yytype_int16 yyss_alloc;
+  YYSTYPE yyvs_alloc;
+  ]b4_locations_if([  YYLTYPE yyls_alloc;
 ])dnl
 [};
 
@@ -415,12 +415,12 @@ union yyalloc
    elements in the stack, and YYPTR gives the new location of the
    stack.  Advance YYPTR to a properly aligned location for the next
    stack.  */
-# define YYSTACK_RELOCATE(Stack)                                       \
+# define YYSTACK_RELOCATE(Stack_alloc, Stack)                          \
     do                                                                 \
       {                                                                        \
        YYSIZE_T yynewbytes;                                            \
-       YYCOPY (&yyptr->Stack, Stack, yysize);                          \
-       Stack = &yyptr->Stack;                                          \
+       YYCOPY (&yyptr->Stack_alloc, Stack, yysize);                    \
+       Stack = &yyptr->Stack_alloc;                                    \
        yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
        yyptr += yynewbytes / sizeof (*yyptr);                          \
       }                                                                        \
@@ -706,7 +706,7 @@ do {                                                                \
                   [[YYSTYPE *yyvsp], [yyvsp]],
     b4_locations_if([[[YYLTYPE *yylsp], [yylsp]],
                   ])[[int yyrule], [yyrule]]m4_ifset([b4_parse_param], [,
-                  ])b4_parse_param)[
+                  b4_parse_param]))[
 {
   int yynrhs = yyr2[yyrule];
   int yyi;
@@ -971,7 +971,8 @@ enum { YYPUSH_MORE = 4 };
    [[yypstate *yyps], [yyps]],
    [[int yynchar], [yynchar]],
    [[YYSTYPE const *yynlval], [yynlval]]
-   b4_locations_if([,[[YYLTYPE const *yynlloc], [yynlloc]]]))[
+   b4_locations_if([,[[YYLTYPE const *yynlloc], [yynlloc]]])
+   m4_ifset([b4_parse_param], [, b4_parse_param]))[
 ],[#ifdef YYPARSE_PARAM
 ]b4_c_function_decl([yyparse], [int],
    [[void *YYPARSE_PARAM], [YYPARSE_PARAM]])[
@@ -1081,8 +1082,7 @@ m4_define([b4_declare_yyparse_variables],
 ])
 m4_divert_pop([KILL])dnl# ====================== End of M4 code.
 
-b4_push_if([],[b4_pure_if([],
-          [b4_declare_parser_variables])])
+b4_pure_if([], [b4_declare_parser_variables])
 
 b4_push_if([b4_declare_yyparse_variables])
 
@@ -1094,7 +1094,8 @@ b4_push_if([
 b4_c_function_def([yypush_parse], [int], [[yypstate *yyps], [yyps]], 
                   [[int yynchar], [yynchar]],
                   [[YYSTYPE const *yynlval], [yynlval]]
-                 b4_locations_if([,[[YYLTYPE const *yynlloc], [yynlloc]]]))],[
+                 b4_locations_if([,[[YYLTYPE const *yynlloc], [yynlloc]]])
+                  m4_ifset([b4_parse_param], [, b4_parse_param]))],[
 #ifdef YYPARSE_PARAM
 b4_c_function_def([yyparse], [int], [[void *YYPARSE_PARAM], [YYPARSE_PARAM]])
 #else /* ! YYPARSE_PARAM */
@@ -1102,7 +1103,6 @@ b4_c_function_def([yyparse], [int], b4_parse_param)
 #endif])
 {[
   ]b4_pure_if([b4_declare_parser_variables])[
-  ]b4_push_if([b4_declare_parser_variables])[
   int yystate;
   int yyn;
   int yyresult;
@@ -1277,9 +1277,9 @@ m4_ifdef([b4_at_dollar_used], [[  yylsp[0] = yylloc;
          (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
        if (! yyptr)
          goto yyexhaustedlab;
-       YYSTACK_RELOCATE (yyss);
-       YYSTACK_RELOCATE (yyvs);
-]b4_locations_if([     YYSTACK_RELOCATE (yyls);])[
+       YYSTACK_RELOCATE (yyss_alloc, yyss);
+       YYSTACK_RELOCATE (yyvs_alloc, yyvs);
+]b4_locations_if([     YYSTACK_RELOCATE (yyls_alloc, yyls);])[
 #  undef YYSTACK_RELOCATE
        if (yyss1 != ]b4_yyssa[)
          YYSTACK_FREE (yyss1);
@@ -1700,7 +1700,8 @@ typedef struct ]b4_prefix[pstate ]b4_prefix[pstate;
    [[]b4_prefix[pstate *]b4_prefix[pstate], []b4_prefix[pstate]],
    [[int yynchar], [yynchar]],
    [[YYSTYPE const *yynlval], [yynlval]]
-   b4_locations_if([,[[YYLTYPE const *yynlloc], [yynlloc]]]))[
+   b4_locations_if([,[[YYLTYPE const *yynlloc], [yynlloc]]])
+   m4_ifset([b4_parse_param], [, b4_parse_param]))[
 enum { YYPUSH_MORE = 4 };])[
 
 m4_ifdef([b4_provides],