[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
01-fyi-fix-bison-c++.patch
From: |
Akim Demaille |
Subject: |
01-fyi-fix-bison-c++.patch |
Date: |
Mon, 08 Apr 2002 14:31:22 +0200 |
Index: ChangeLog
from Akim Demaille <address@hidden>
* data/bison.c++: s/b4_item_number_max/b4_rhs_number_max/.
Adding #line.
Remove the duplicate `typedefs'.
(RhsNumberType): Fix the declaration and various other typos.
Use __ofile__.
* data/bison.simple: Use __ofile__.
* src/scan-skel.l: Handle __ofile__.
Index: src/scan-skel.l
--- src/scan-skel.l Mon, 04 Feb 2002 23:18:59 +0100 akim
+++ src/scan-skel.l Mon, 08 Apr 2002 14:25:10 +0200 akim
@@ -26,16 +26,20 @@
#include "files.h"
int skel_lex PARAMS ((void));
static int yylineno = 1;
+static char *yyoutname = NULL;
%}
%%
/* This is an approximation, but we don't need more. */
^"#output \""[^\"]+\"\n {
yytext[yyleng - 2] = '\0';
- skel_out = xfopen (yytext + strlen ("#output \""), "w");
+ XFREE (yyoutname);
+ yyoutname = xstrdup (yytext + strlen ("#output \""));
+ yyout = xfopen (yyoutname, "w");
yylineno = 1;
}
"__oline__" fprintf (yyout, "%d", yylineno);
+"__ofile__" fprintf (yyout, "%s", yyoutname);
[^_\n]+ ECHO;
\n+ yylineno += yyleng; ECHO;
. ECHO;
Index: data/bison.simple
--- data/bison.simple Sun, 07 Apr 2002 21:22:52 +0200 akim
+++ data/bison.simple Mon, 08 Apr 2002 14:25:58 +0200 akim
@@ -149,7 +149,7 @@ m4_define([b4_token_defines],
#endif
/* Line __line__ of __file__. */
-#line __oline__
+#line __oline__ "__ofile__"
/* All symbols defined below should begin with yy or YY, to avoid
infringing on user name space. This should be done even for local
@@ -936,7 +936,7 @@ yyreduce:
}
/* Line __line__ of __file__. */
-#line __oline__
+#line __oline__ "__ofile__"
[ yyvsp -= yylen;
yyssp -= yylen;
Index: data/bison.c++
--- data/bison.c++ Sun, 07 Apr 2002 21:22:52 +0200 akim
+++ data/bison.c++ Mon, 08 Apr 2002 14:29:18 +0200 akim
@@ -137,6 +137,7 @@ m4_define([b4_copyright],
# define YYSTYPE yystype
#endif
+#line __oline__ "__ofile__"
#ifndef YYLLOC_DEFAULT
# define YYLLOC_DEFAULT(Current, Rhs, N) \
Current.last_line = Rhs[[N]].last_line; \
@@ -167,8 +168,8 @@ m4_define([b4_copyright],
template < >
struct Traits< b4_name >
{
- typedef typedef b4_uint_type(b4_token_number_max) TokenNumberType;
- typedef typedef b4_sint_type(b4_item_number_max) RhsNumberType;
+ typedef b4_uint_type(b4_token_number_max) TokenNumberType;
+ typedef b4_sint_type(b4_rhs_number_max) RhsNumberType;
typedef int StateType;
typedef yystype SemanticType;
typedef b4_ltype LocationType;
@@ -182,7 +183,7 @@ m4_define([b4_copyright],
public:
typedef Traits< b4_name >::TokenNumberType TokenNumberType;
- typedef Traits< b4_name >::RhsNumberType TokenNumberType;
+ typedef Traits< b4_name >::RhsNumberType RhsNumberType;
typedef Traits< b4_name >::StateType StateType;
typedef Traits< b4_name >::SemanticType SemanticType;
typedef Traits< b4_name >::LocationType LocationType;
@@ -236,7 +237,7 @@ m4_define([b4_copyright],
/* More tables, for debugging. */
#if YYDEBUG
- static const short rhs_[[]];
+ static const RhsNumberType rhs_[[]];
static const short prhs_[[]];
static const short rline_[[]];
#endif
@@ -459,6 +460,9 @@ yy::b4_name::parse ()
}
}
+/* Line __line__ of __file__. */
+#line __oline__ "__ofile__"
+
state_stack_.pop (len_);
semantic_stack_.pop (len_);
location_stack_.pop (len_);
@@ -686,7 +690,7 @@ yy::b4_name::r2_[[]] =
#if YYDEBUG
/* YYRHS -- A `-1'-separated list of the rules' RHS. */
-const RhsNumberType
+const yy::b4_name::RhsNumberType
yy::b4_name::rhs_[[]] =
{
b4_rhs
@@ -709,7 +713,7 @@ yy::b4_name::rline_[[]] =
#endif
/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
-TokenNumberType
+yy::b4_name::TokenNumberType
yy::b4_name::translate_ (int token)
{
static
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- 01-fyi-fix-bison-c++.patch,
Akim Demaille <=