bison-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

05-muscles-init.patch


From: Akim Demaille
Subject: 05-muscles-init.patch
Date: Mon, 21 Oct 2002 09:23:38 +0200

Index: ChangeLog
from  Akim Demaille  <address@hidden>
        
        * src/output.c (prepare): Use MUSCLE_INSERT_STRING.
        * src/muscle_tab.c (muscle_pair_list_grow): Rename `value' as
        `pair' to avoid name clashes.
        (muscle_init): Move the `b4_ltype', `b4_maxdepth', `b4_initdepth',
        `name' to...
        * data/glr.c, data/lalr1.cc, data/yacc.c (b4_location_type)
        (b4_stack_depth_init, b4_stack_depth_max, b4_parser_class_name):
        These.
        
Index: src/muscle_tab.c
--- src/muscle_tab.c Sat, 19 Oct 2002 15:22:21 +0200 akim
+++ src/muscle_tab.c Sun, 20 Oct 2002 08:20:35 +0200 akim
@@ -69,18 +69,8 @@
   /* FIXME: there should probably be no default here, only in the
      skeletons.  */
 
-  /* Types.  */
-  MUSCLE_INSERT_STRING ("ltype", "yyltype");
-
   /* Default #line formatting.  */
   MUSCLE_INSERT_STRING ("linef", "#line %d %s\n");
-
-  /* Stack parameters.  */
-  MUSCLE_INSERT_STRING ("maxdepth", "10000");
-  MUSCLE_INSERT_STRING ("initdepth", "200");
-
-  /* C++ macros.  */
-  MUSCLE_INSERT_STRING ("name", "Parser");
 }
 
 
@@ -173,12 +163,12 @@
 void muscle_pair_list_grow (const char *muscle,
                            const char *a1, const char *a2)
 {
-  char *value;
+  char *pair;
   obstack_fgrow2 (&muscle_obstack, "[[[%s]], [[%s]]]", a1, a2);
   obstack_1grow (&muscle_obstack, 0);
-  value = obstack_finish (&muscle_obstack);
-  muscle_grow (muscle, value, ",\n");
-  obstack_free (&muscle_obstack, value);
+  pair = obstack_finish (&muscle_obstack);
+  muscle_grow (muscle, pair, ",\n");
+  obstack_free (&muscle_obstack, pair);
 }
 
 /*-------------------------------.
Index: src/output.c
--- src/output.c Sat, 19 Oct 2002 15:22:21 +0200 akim
+++ src/output.c Sat, 19 Oct 2002 16:56:50 +0200 akim
@@ -620,7 +620,7 @@
     }
 
   /* Parse the skeleton file and output the needed parsers.  */
-  muscle_insert ("skeleton", skeleton);
+  MUSCLE_INSERT_STRING ("skeleton", skeleton);
 }
 
 
Index: data/yacc.c
--- data/yacc.c Sat, 19 Oct 2002 16:53:55 +0200 akim
+++ data/yacc.c Sun, 20 Oct 2002 08:27:38 +0200 akim
@@ -20,6 +20,27 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
 # 02111-1307  USA
 
+
+
+## ---------------- ##
+## Default values.  ##
+## ---------------- ##
+
+# Stack parameters.
+m4_define_default([b4_stack_depth_max], [10000])
+m4_define_default([b4_stack_depth_init],  [200])
+
+# Location type.
+m4_define_default([b4_location_type], [yyltype])
+
+
+
+
+## ----------------- ##
+## Semantic Values.  ##
+## ----------------- ##
+
+
 # b4_lhs_value([TYPE])
 # --------------------
 # Expansion of $<TYPE>$.
@@ -203,7 +224,7 @@ m4_define([b4_symbol_actions],
   int last_line;
   int last_column;
 } yyltype;
-# define YYLTYPE b4_ltype
+# define YYLTYPE b4_location_type
 # define YYLTYPE_IS_TRIVIAL 1
 #endif
 
@@ -543,7 +564,7 @@ m4_define([b4_symbol_actions],
 
 /* YYINITDEPTH -- initial size of the parser's stacks.  */
 #ifndef        YYINITDEPTH
-# define YYINITDEPTH b4_initdepth
+# define YYINITDEPTH b4_stack_depth_init
 #endif
 
 /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
@@ -558,7 +579,7 @@ m4_define([b4_symbol_actions],
 #endif
 
 #ifndef YYMAXDEPTH
-# define YYMAXDEPTH b4_maxdepth
+# define YYMAXDEPTH b4_stack_depth_max
 #endif
 
 
Index: data/lalr1.cc
--- data/lalr1.cc Sun, 13 Oct 2002 10:01:29 +0200 akim
+++ data/lalr1.cc Sun, 20 Oct 2002 08:27:38 +0200 akim
@@ -19,6 +19,23 @@
 
 m4_include([c.m4])
 
+## ---------------- ##
+## Default values.  ##
+## ---------------- ##
+
+# Stack parameters.
+m4_define_default([b4_stack_depth_init],  [200])
+
+# Default Parser class name.
+m4_define_default([b4_parser_class_name], [Parser])
+
+
+
+## ----------------- ##
+## Semantic Values.  ##
+## ----------------- ##
+
+
 # b4_lhs_value([TYPE])
 # --------------------
 # Expansion of $<TYPE>$.
@@ -33,7 +50,7 @@ m4_define([b4_lhs_value],
 m4_define([b4_rhs_value],
 [semantic_stack_@<:@m4_eval([$1 - $2])@:>@m4_ifval([$3], [.$3])])
 
-m4_define_default([b4_ltype], [Location])
+m4_define_default([b4_location_type], [Location])
 
 # b4_lhs_location()
 # -----------------
@@ -145,7 +162,7 @@ m4_define([b4_constructor],
 
 namespace yy
 {
-  class b4_name;
+  class b4_parser_class_name;
 
   template < typename P >
   struct Traits
@@ -153,47 +170,47 @@ m4_define([b4_constructor],
   };
 
   template < >
-  struct Traits< b4_name >
+  struct Traits< b4_parser_class_name >
   {
     typedef b4_int_type_for([b4_translate]) TokenNumberType;
     typedef b4_int_type_for([b4_rhs])       RhsNumberType;
     typedef int      StateType;
     typedef yystype  SemanticType;
-    typedef b4_ltype LocationType;
+    typedef b4_location_type LocationType;
   };
 }
 
 namespace yy
 {
-  class b4_name b4_inherit
+  class b4_parser_class_name b4_inherit
   {
   public:
 
-    typedef Traits< b4_name >::TokenNumberType 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;
+    typedef Traits< b4_parser_class_name >::TokenNumberType TokenNumberType;
+    typedef Traits< b4_parser_class_name >::RhsNumberType   RhsNumberType;
+    typedef Traits< b4_parser_class_name >::StateType       StateType;
+    typedef Traits< b4_parser_class_name >::SemanticType    SemanticType;
+    typedef Traits< b4_parser_class_name >::LocationType    LocationType;
 
     typedef Stack< StateType >    StateStack;
     typedef Stack< SemanticType > SemanticStack;
     typedef Stack< LocationType > LocationStack;
 
 #if YYLSP_NEEDED
-    b4_name (bool debug,
+    b4_parser_class_name (bool debug,
            LocationType initlocation[]b4_param) :
       b4_constructor[]debug_ (debug),
       cdebug_ (std::cerr),
       initlocation_ (initlocation)
 #else
-    b4_name (bool debug[]b4_param) :
+    b4_parser_class_name (bool debug[]b4_param) :
       b4_constructor[]debug_ (debug),
       cdebug_ (std::cerr)
 #endif
     {
     }
 
-    virtual ~b4_name ()
+    virtual ~b4_parser_class_name ()
     {
     }
 
@@ -296,7 +313,7 @@ m4_define([b4_constructor],
 #endif /* !YYDEBUG */
 
 int
-yy::b4_name::parse ()
+yy::b4_parser_class_name::parse ()
 {
   int nerrs = 0;
   int errstatus = 0;
@@ -606,7 +623,7 @@ yy::b4_name::parse ()
 }
 
 void
-yy::b4_name::lex_ ()
+yy::b4_parser_class_name::lex_ ()
 {
 #if YYLSP_NEEDED
   looka_ = yylex (&value, &location);
@@ -617,9 +634,9 @@ yy::b4_name::lex_ ()
 
 /* YYPACT[[STATE-NUM]] -- Index in YYTABLE of the portion describing
    STATE-NUM.  */
-const b4_int_type_for([b4_pact]) yy::b4_name::pact_ninf_ = b4_pact_ninf;
+const b4_int_type_for([b4_pact]) yy::b4_parser_class_name::pact_ninf_ = 
b4_pact_ninf;
 const b4_int_type_for([b4_pact])
-yy::b4_name::pact_[[]] =
+yy::b4_parser_class_name::pact_[[]] =
 {
   b4_pact
 };
@@ -628,21 +645,21 @@ yy::b4_name::pact_[[]] =
    doesn't specify something else to do.  Zero means the default is an
    error.  */
 const b4_int_type_for([b4_defact])
-yy::b4_name::defact_[[]] =
+yy::b4_parser_class_name::defact_[[]] =
 {
   b4_defact
 };
 
 /* YYPGOTO[[NTERM-NUM]].  */
 const b4_int_type_for([b4_pgoto])
-yy::b4_name::pgoto_[[]] =
+yy::b4_parser_class_name::pgoto_[[]] =
 {
   b4_pgoto
 };
 
 /* YYDEFGOTO[[NTERM-NUM]].  */
 const b4_int_type_for([b4_defgoto])
-yy::b4_name::defgoto_[[]] =
+yy::b4_parser_class_name::defgoto_[[]] =
 {
   b4_defgoto
 };
@@ -650,16 +667,16 @@ yy::b4_name::defgoto_[[]] =
 /* YYTABLE[[YYPACT[STATE-NUM]]].  What to do in state STATE-NUM.  If
    positive, shift that token.  If negative, reduce the rule which
    number is the opposite.  If zero, do what YYDEFACT says.  */
-const b4_int_type_for([b4_table]) yy::b4_name::table_ninf_ = b4_table_ninf;
+const b4_int_type_for([b4_table]) yy::b4_parser_class_name::table_ninf_ = 
b4_table_ninf;
 const b4_int_type_for([b4_table])
-yy::b4_name::table_[[]] =
+yy::b4_parser_class_name::table_[[]] =
 {
   b4_table
 };
 
 /* YYCHECK.  */
 const b4_int_type_for([b4_check])
-yy::b4_name::check_[[]] =
+yy::b4_parser_class_name::check_[[]] =
 {
   b4_check
 };
@@ -668,7 +685,7 @@ yy::b4_name::check_[[]] =
 /* STOS_[[STATE-NUM]] -- The (internal number of the) accessing
    symbol of state STATE-NUM.  */
 const b4_int_type_for([b4_stos])
-yy::b4_name::stos_[[]] =
+yy::b4_parser_class_name::stos_[[]] =
 {
   b4_stos
 };
@@ -676,7 +693,7 @@ yy::b4_name::stos_[[]] =
 /* TOKEN_NUMBER_[[YYLEX-NUM]] -- Internal token number corresponding
    to YYLEX-NUM.  */
 const b4_int_type_for([b4_toknum])
-yy::b4_name::token_number_[[]] =
+yy::b4_parser_class_name::token_number_[[]] =
 {
   b4_toknum
 };
@@ -684,14 +701,14 @@ yy::b4_name::token_number_[[]] =
 
 /* YYR1[[YYN]] -- Symbol number of symbol that rule YYN derives.  */
 const b4_int_type_for([b4_r1])
-yy::b4_name::r1_[[]] =
+yy::b4_parser_class_name::r1_[[]] =
 {
   b4_r1
 };
 
 /* YYR2[[YYN]] -- Number of symbols composing right hand side of rule YYN.  */
 const b4_int_type_for([b4_r2])
-yy::b4_name::r2_[[]] =
+yy::b4_parser_class_name::r2_[[]] =
 {
   b4_r2
 };
@@ -700,7 +717,7 @@ yy::b4_name::r2_[[]] =
 /* YYTNAME[[SYMBOL-NUM]] -- String name of the symbol SYMBOL-NUM.
    First, the terminals, then, starting at YYNTOKENS, nonterminals. */
 const char*
-const yy::b4_name::name_[[]] =
+const yy::b4_parser_class_name::name_[[]] =
 {
   b4_tname
 };
@@ -708,8 +725,8 @@ yy::b4_name::r2_[[]] =
 
 #if YYDEBUG
 /* YYRHS -- A `-1'-separated list of the rules' RHS. */
-const yy::b4_name::RhsNumberType
-yy::b4_name::rhs_[[]] =
+const yy::b4_parser_class_name::RhsNumberType
+yy::b4_parser_class_name::rhs_[[]] =
 {
   b4_rhs
 };
@@ -717,22 +734,22 @@ yy::b4_name::rhs_[[]] =
 /* YYPRHS[[YYN]] -- Index of the first RHS symbol of rule number YYN in
    YYRHS.  */
 const b4_int_type_for([b4_prhs])
-yy::b4_name::prhs_[[]] =
+yy::b4_parser_class_name::prhs_[[]] =
 {
   b4_prhs
 };
 
 /* YYRLINE[[YYN]] -- source line where rule number YYN was defined.  */
 const b4_int_type_for([b4_rline])
-yy::b4_name::rline_[[]] =
+yy::b4_parser_class_name::rline_[[]] =
 {
   b4_rline
 };
 #endif
 
 /* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX.  */
-yy::b4_name::TokenNumberType
-yy::b4_name::translate_ (int token)
+yy::b4_parser_class_name::TokenNumberType
+yy::b4_parser_class_name::translate_ (int token)
 {
   static
   const TokenNumberType
@@ -746,18 +763,18 @@ yy::b4_name::translate_ (int token)
     return undef_token_;
 }
 
-const int yy::b4_name::eof_ = 0;
-const int yy::b4_name::last_ = b4_last;
-const int yy::b4_name::nnts_ = b4_nterms_number;
-const int yy::b4_name::empty_ = -2;
-const int yy::b4_name::final_ = b4_final_state_number;
-const int yy::b4_name::terror_ = 1;
-const int yy::b4_name::errcode_ = 256;
-const int yy::b4_name::ntokens_ = b4_tokens_number;
-const int yy::b4_name::initdepth_ = b4_initdepth;
+const int yy::b4_parser_class_name::eof_ = 0;
+const int yy::b4_parser_class_name::last_ = b4_last;
+const int yy::b4_parser_class_name::nnts_ = b4_nterms_number;
+const int yy::b4_parser_class_name::empty_ = -2;
+const int yy::b4_parser_class_name::final_ = b4_final_state_number;
+const int yy::b4_parser_class_name::terror_ = 1;
+const int yy::b4_parser_class_name::errcode_ = 256;
+const int yy::b4_parser_class_name::ntokens_ = b4_tokens_number;
+const int yy::b4_parser_class_name::initdepth_ = b4_stack_depth_init;
 
-const unsigned yy::b4_name::user_token_number_max_ = b4_user_token_number_max;
-const yy::b4_name::TokenNumberType yy::b4_name::undef_token_ = 
b4_undef_token_number;
+const unsigned yy::b4_parser_class_name::user_token_number_max_ = 
b4_user_token_number_max;
+const yy::b4_parser_class_name::TokenNumberType yy::b4_name::undef_token_ = 
b4_undef_token_number;
 
 b4_epilogue
 dnl
Index: data/glr.c
--- data/glr.c Sat, 19 Oct 2002 16:53:55 +0200 akim
+++ data/glr.c Sun, 20 Oct 2002 08:27:38 +0200 akim
@@ -19,6 +19,25 @@
 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
 # 02111-1307  USA
 
+
+## ---------------- ##
+## Default values.  ##
+## ---------------- ##
+
+# Stack parameters.
+m4_define_default([b4_stack_depth_max], [10000])
+m4_define_default([b4_stack_depth_init],  [200])
+
+# Location type.
+m4_define_default([b4_location_type], [yyltype])
+
+
+
+## ----------------- ##
+## Semantic Values.  ##
+## ----------------- ##
+
+
 # b4_lhs_value([TYPE])
 # --------------------
 # Expansion of $<TYPE>$.
@@ -174,7 +193,7 @@ m4_define_default([b4_header_guard],
   int last_line;
   int last_column;])[
 } yyltype;
-# define YYLTYPE ]b4_ltype[
+# define YYLTYPE ]b4_location_type[
 # define YYLTYPE_IS_TRIVIAL 1
 #endif
 
@@ -462,7 +481,7 @@ m4_define_default([b4_header_guard],
 
 /* YYINITDEPTH -- initial size of the parser's stacks.  */
 #ifndef        YYINITDEPTH
-# define YYINITDEPTH ]b4_initdepth[
+# define YYINITDEPTH ]b4_stack_depth_init[
 #endif
 
 /* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
@@ -477,7 +496,7 @@ m4_define_default([b4_header_guard],
 #endif
 
 #ifndef YYMAXDEPTH
-# define YYMAXDEPTH ]b4_maxdepth[
+# define YYMAXDEPTH ]b4_stack_depth_max[
 #endif
 
 /* Minimum number of free items on the stack allowed after an




reply via email to

[Prev in Thread] Current Thread [Next in Thread]