[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
FYI: [Main] Options prefix.
From: |
Pascal Bart |
Subject: |
FYI: [Main] Options prefix. |
Date: |
Fri, 31 Aug 2001 20:24:00 +0000 (GMT) |
Hello,
This patch corrects the name_prefix option.
Index: ChangeLog
===================================================================
RCS file: /cvsroot/bison/bison/ChangeLog,v
retrieving revision 1.201
diff -u -r1.201 ChangeLog
--- ChangeLog 2001/08/31 16:56:44 1.201
+++ ChangeLog 2001/08/31 18:18:12
@@ -1,5 +1,17 @@
2001-08-31 Pascal Bart <address@hidden>
+ * src/output.c (prepare): Delete insertion of previous muscles,
+ and insert the `prefix' muscles.
+ * src/macrotab.c (macro_init): Likewise.
+ (macro_init): Initialization prefix directive by `yy'.
+ * src/bison.simple: Substitute all %%yylex, %%yychar, %%yylval,
+ %%yydebug, %%yyerror, %%yynerrs and %%yyparse by yylex, yychar,
+ yylval, yydebug, yyerror, yynerrs and yyparse.
+ New directive `#define' to substitute yydebug, ... with option
+ name_prefix.
+
+2001-08-31 Pascal Bart <address@hidden>
+
* src/main.c (main): Standardize.
* src/output.c (output_table_data, output_parser): Likewise.
* src/macrotab.h, src/macrotab.c, src/bison.simple: Likewise.
Index: src/bison.simple
===================================================================
RCS file: /cvsroot/bison/bison/src/bison.simple,v
retrieving revision 1.61
diff -u -r1.61 bison.simple
--- src/bison.simple 2001/08/31 16:56:44 1.61
+++ src/bison.simple 2001/08/31 18:18:12
@@ -33,6 +33,16 @@
#include <stdio.h>
+/* If name_prefix is specify substitute the variables and functions
+ names. */
+#define yyparse %%prefix##parse
+#define yylex %%prefix##lex
+#define yyerror %%prefix##error
+#define yylval %%prefix##lval
+#define yychar %%prefix##char
+#define yydebug %%prefix##debug
+#define yynerrs %%prefix##nerrs
+
/* Copy the user declarations. */
%%prologue
@@ -219,7 +229,7 @@
};
#define yyerrok (yyerrstatus = 0)
-#define yyclearin (%%yychar = YYEMPTY)
+#define yyclearin (yychar = YYEMPTY)
#define YYEMPTY -2
#define YYEOF 0
@@ -237,17 +247,17 @@
#define YYBACKUP(Token, Value) \
do \
- if (%%yychar == YYEMPTY && yylen == 1) \
+ if (yychar == YYEMPTY && yylen == 1) \
{ \
- %%yychar = (Token); \
- %%yylval = (Value); \
- yychar1 = YYTRANSLATE (%%yychar); \
+ yychar = (Token); \
+ yylval = (Value); \
+ yychar1 = YYTRANSLATE (yychar); \
YYPOPSTACK; \
goto yybackup; \
} \
else \
{ \
- %%yyerror ("syntax error: cannot back up"); \
+ yyerror ("syntax error: cannot back up"); \
YYERROR; \
} \
while (0)
@@ -273,33 +283,33 @@
#if YYPURE
# if YYLSP_NEEDED
# ifdef YYLEX_PARAM
-# define YYLEX %%yylex (&%%yylval, &yylloc, YYLEX_PARAM)
+# define YYLEX yylex (&yylval, &yylloc, YYLEX_PARAM)
# else
-# define YYLEX %%yylex (&%%yylval, &yylloc)
+# define YYLEX yylex (&yylval, &yylloc)
# endif
# else /* !YYLSP_NEEDED */
# ifdef YYLEX_PARAM
-# define YYLEX %%yylex (&%%yylval, YYLEX_PARAM)
+# define YYLEX yylex (&yylval, YYLEX_PARAM)
# else
-# define YYLEX %%yylex (&%%yylval)
+# define YYLEX yylex (&yylval)
# endif
# endif /* !YYLSP_NEEDED */
#else /* !YYPURE */
-# define YYLEX %%yylex ()
+# define YYLEX yylex ()
#endif /* !YYPURE */
/* Enable debugging if requested. */
#if YYDEBUG
# define YYDPRINTF(Args) \
do { \
- if (%%yydebug) \
+ if (yydebug) \
fprintf Args; \
} while (0)
/* Nonzero means print parse trace. [The following comment makes no
sense to me. Could someone clarify it? --akim] Since this is
uninitialized, it does not stop multiple parsers from coexisting.
*/
-int %%yydebug;
+int yydebug;
#else /* !YYDEBUG */
# define YYDPRINTF(Args)
#endif /* !YYDEBUG */
@@ -377,9 +387,9 @@
/* Prevent warning if -Wstrict-prototypes. */
#ifdef __GNUC__
# ifdef YYPARSE_PARAM
-int %%yyparse (void *);
+int yyparse (void *);
# else
-int %%yyparse (void);
+int yyparse (void);
# endif
#endif
@@ -388,13 +398,13 @@
#define _YY_DECL_VARIABLES \
/* The lookahead symbol. */ \
-int %%yychar; \
+int yychar; \
\
/* The semantic value of the lookahead symbol. */ \
-YYSTYPE %%yylval; \
+YYSTYPE yylval; \
\
/* Number of parse errors so far. */ \
-int %%yynerrs;
+int yynerrs;
#if YYLSP_NEEDED
# define YY_DECL_VARIABLES \
@@ -414,7 +424,7 @@
#endif /* !YYPURE */
int
-%%yyparse (YYPARSE_PARAM_ARG)
+yyparse (YYPARSE_PARAM_ARG)
YYPARSE_PARAM_DECL
{
/* If reentrant, generate the variables here. */
@@ -478,8 +488,8 @@
yystate = 0;
yyerrstatus = 0;
- %%yynerrs = 0;
- %%yychar = YYEMPTY; /* Cause a token to be read. */
+ yynerrs = 0;
+ yychar = YYEMPTY; /* Cause a token to be read. */
/* Initialize stack pointers.
Waste one element of value and location stack
@@ -545,7 +555,7 @@
/* Extend the stack our own way. */
if (yystacksize >= YYMAXDEPTH)
{
- %%yyerror ("parser stack overflow");
+ yyerror ("parser stack overflow");
if (yyfree_stacks)
{
free (yyss);
@@ -611,35 +621,35 @@
/* yychar is either YYEMPTY or YYEOF
or a valid token in external form. */
- if (%%yychar == YYEMPTY)
+ if (yychar == YYEMPTY)
{
YYDPRINTF ((stderr, "Reading a token: "));
- %%yychar = YYLEX;
+ yychar = YYLEX;
}
/* Convert token to internal form (in yychar1) for indexing tables with. */
- if (%%yychar <= 0) /* This means end of input. */
+ if (yychar <= 0) /* This means end of input. */
{
yychar1 = 0;
- %%yychar = YYEOF; /* Don't call YYLEX any more. */
+ yychar = YYEOF; /* Don't call YYLEX any more. */
YYDPRINTF ((stderr, "Now at end of input.\n"));
}
else
{
- yychar1 = YYTRANSLATE (%%yychar);
+ yychar1 = YYTRANSLATE (yychar);
#if YYDEBUG
/* We have to keep this `#if YYDEBUG', since we use variables
which are defined only if `YYDEBUG' is set. */
- if (%%yydebug)
+ if (yydebug)
{
- fprintf (stderr, "Next token is %d (%s", %%yychar, yytname[yychar1]);
+ fprintf (stderr, "Next token is %d (%s", yychar, yytname[yychar1]);
/* Give the individual parser a way to print the precise
meaning of a token, for further debugging info. */
# ifdef YYPRINT
- YYPRINT (stderr, %%yychar, %%yylval);
+ YYPRINT (stderr, yychar, yylval);
# endif
fprintf (stderr, ")\n");
}
@@ -673,13 +683,13 @@
YYACCEPT;
/* Shift the lookahead token. */
- YYDPRINTF ((stderr, "Shifting token %d (%s), ", %%yychar, yytname[yychar1]));
+ YYDPRINTF ((stderr, "Shifting token %d (%s), ", yychar, yytname[yychar1]));
/* Discard the token being shifted unless it is eof. */
- if (%%yychar != YYEOF)
- %%yychar = YYEMPTY;
+ if (yychar != YYEOF)
+ yychar = YYEMPTY;
- *++yyvsp = %%yylval;
+ *++yyvsp = yylval;
#if YYLSP_NEEDED
*++yylsp = yylloc;
#endif
@@ -730,7 +740,7 @@
#if YYDEBUG
/* We have to keep this `#if YYDEBUG', since we use variables which
are defined only if `YYDEBUG' is set. */
- if (%%yydebug)
+ if (yydebug)
{
int i;
@@ -756,7 +766,7 @@
#endif
#if YYDEBUG
- if (%%yydebug)
+ if (yydebug)
{
short *ssp1 = yyss - 1;
fprintf (stderr, "state stack now");
@@ -793,7 +803,7 @@
/* If not already recovering from an error, report this error. */
if (!yyerrstatus)
{
- ++%%yynerrs;
+ ++yynerrs;
#if YYERROR_VERBOSE
yyn = yypact[yystate];
@@ -811,12 +821,12 @@
if (yycheck[x + yyn] == x)
size += strlen (yytname[x]) + 15, count++;
size += strlen ("parse error, unexpected `") + 1;
- size += strlen (yytname[YYTRANSLATE (%%yychar)]);
+ size += strlen (yytname[YYTRANSLATE (yychar)]);
msg = (char *) malloc (size);
if (msg != 0)
{
strcpy (msg, "parse error, unexpected `");
- strcat (msg, yytname[YYTRANSLATE (%%yychar)]);
+ strcat (msg, yytname[YYTRANSLATE (yychar)]);
strcat (msg, "'");
if (count < 5)
@@ -832,15 +842,15 @@
count++;
}
}
- %%yyerror (msg);
+ yyerror (msg);
free (msg);
}
else
- %%yyerror ("parse error; also virtual memory exceeded");
+ yyerror ("parse error; also virtual memory exceeded");
}
else
#endif /* YYERROR_VERBOSE */
- %%yyerror ("parse error");
+ yyerror ("parse error");
}
goto yyerrlab1;
@@ -855,11 +865,11 @@
error, discard it. */
/* Return failure if at end of input. */
- if (%%yychar == YYEOF)
+ if (yychar == YYEOF)
YYABORT;
YYDPRINTF ((stderr, "Discarding token %d (%s).\n",
- %%yychar, yytname[yychar1]));
- %%yychar = YYEMPTY;
+ yychar, yytname[yychar1]));
+ yychar = YYEMPTY;
}
/* Else will try to reuse lookahead token after shifting the error
@@ -900,7 +910,7 @@
#endif
#if YYDEBUG
- if (%%yydebug)
+ if (yydebug)
{
short *ssp1 = yyss - 1;
fprintf (stderr, "Error: state stack now");
@@ -938,7 +948,7 @@
YYDPRINTF ((stderr, "Shifting error token, "));
- *++yyvsp = %%yylval;
+ *++yyvsp = yylval;
#if YYLSP_NEEDED
*++yylsp = yylloc;
#endif
Index: src/macrotab.c
===================================================================
RCS file: /cvsroot/bison/bison/src/macrotab.c,v
retrieving revision 1.5
diff -u -r1.5 macrotab.c
--- src/macrotab.c 2001/08/31 16:56:44 1.5
+++ src/macrotab.c 2001/08/31 18:18:12
@@ -86,15 +86,7 @@
macro_insert ("maxtok", "0");
macro_insert ("ntbase", "0");
macro_insert ("verbose", "0");
-
- /* Variable prefix names. */
- macro_insert ("yyparse", "yyparse");
- macro_insert ("yylex", "yylex");
- macro_insert ("yyerror", "yyerror");
- macro_insert ("yylval", "yylval");
- macro_insert ("yychar", "yychar");
- macro_insert ("yydebug", "yydebug");
- macro_insert ("yynerrs", "yynerrs");
+ macro_insert ("prefix", "yy");
/* No parser macros. */
macro_insert ("nnts", "0");
Index: src/output.c
===================================================================
RCS file: /cvsroot/bison/bison/src/output.c,v
retrieving revision 1.51
diff -u -r1.51 output.c
--- src/output.c 2001/08/31 16:56:44 1.51
+++ src/output.c 2001/08/31 18:18:13
@@ -1075,15 +1075,7 @@
MACRO_INSERT_INT ("ntokens", ntokens);
if (spec_name_prefix)
- {
- MACRO_INSERT_PREFIX ("yylex", "lex");
- MACRO_INSERT_PREFIX ("yychar", "char");
- MACRO_INSERT_PREFIX ("yylval", "lval");
- MACRO_INSERT_PREFIX ("yydebug", "debug");
- MACRO_INSERT_PREFIX ("yyerror", "error");
- MACRO_INSERT_PREFIX ("yynerrs", "nerrs");
- MACRO_INSERT_PREFIX ("yyparse", "parse");
- }
+ MACRO_INSERT_STRING ("prefix", spec_name_prefix);
}
/*----------------------------------------------------------.
Pascal Bart (address@hidden)
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- FYI: [Main] Options prefix.,
Pascal Bart <=