> Here are some more unresolved issues:
>
> 1. Remove the yyparse prototype when %push-parser is specified.
Hi Joel,
Thanks for all the speedy work :)
How does this look?
Bob Rossi
2006-12-14 Bob Rossi <[EMAIL PROTECTED]>
* data/push.c (yyparse): Moved define to only be generated when not
in push-parser mode.
(yyparse): Moved prototype to only be declared when not in push-parser
mode.
Index: data/push.c
===================================================================
RCS file: /sources/bison/bison/data/push.c,v
retrieving revision 1.13
diff -u -r1.13 push.c
--- data/push.c 14 Dec 2006 02:58:11 -0000 1.13
+++ data/push.c 14 Dec 2006 14:29:15 -0000
@@ -151,11 +151,11 @@
]b4_identification
m4_if(b4_prefix, [yy], [],
[/* Substitute the variable and function names. */
-#define yyparse b4_prefix[]parse
]b4_push_if([#define yypush_parse b4_prefix[]push_parse
#define yypstate_new b4_prefix[]pstate_new
#define yypstate_delete b4_prefix[]pstate_delete
-#define yypstate b4_prefix[]pstate])[
+#define yypstate b4_prefix[]pstate],
+[#define yyparse b4_prefix[]parse])[
#define yylex b4_prefix[]lex
#define yyerror b4_prefix[]error
#define yylval b4_prefix[]lval
@@ -961,13 +961,6 @@
/* Prevent warnings from -Wmissing-prototypes. */
-#ifdef YYPARSE_PARAM
-]b4_c_function_decl([yyparse], [int],
- [[void *YYPARSE_PARAM], [YYPARSE_PARAM]])[
-#else /* ! YYPARSE_PARAM */
-]b4_c_function_decl([yyparse], [int], b4_parse_param)[
-#endif /* ! YYPARSE_PARAM */
-
]b4_push_if([
struct yypstate;
enum { YYPUSH_MORE = 4 };
@@ -978,7 +971,12 @@
[[int yynchar], [yynchar]],
[[YYSTYPE const *yynlval], [yynlval]]
b4_locations_if([,[[YYLTYPE const *yynlloc], [yynlloc]]]))[
-])[
+],[#ifdef YYPARSE_PARAM
+]b4_c_function_decl([yyparse], [int],
+ [[void *YYPARSE_PARAM], [YYPARSE_PARAM]])[
+#else /* ! YYPARSE_PARAM */
+]b4_c_function_decl([yyparse], [int], b4_parse_param)[
+#endif /* ! YYPARSE_PARAM */])[
]m4_divert_push([KILL])# ======================== M4 code.
# b4_declare_parser_variables