]> git.saurik.com Git - bison.git/commitdiff
glr.cc, lalr1.cc: define b4_shared_declarations
authorAkim Demaille <akim@lrde.epita.fr>
Mon, 30 Jul 2012 13:30:31 +0000 (15:30 +0200)
committerAkim Demaille <akim@lrde.epita.fr>
Tue, 31 Jul 2012 09:33:46 +0000 (11:33 +0200)
* data/glr.cc, data/lalr1.cc: here.
The name is no longer right, but at least it is consistent with
the other skeletons.

TODO
data/glr.cc
data/lalr1.cc

diff --git a/TODO b/TODO
index 6457742526d82946cfa5954ea2a2bdf6e890f64f..4f4674f700acbcdc09a6e809eebf8333b55f7180 100644 (file)
--- a/TODO
+++ b/TODO
@@ -3,6 +3,10 @@
 Avoid variables for format strings, as then GCC cannot check them.
 show_sub_messages should call show_sub_message.
 
+** m4 names
+b4_shared_declarations is no longer what it is.  Make it
+b4_parser_declaration for instance.
+
 ** Variable names.
 What should we name `variant' and `lex_symbol'?
 
index cbe68eaac4378cc5a04d10fb1f80d4cb81419627..e1826da999178069841a54922213a5be29a6f862 100644 (file)
@@ -223,16 +223,13 @@ m4_defn([b4_parse_param]))],
 m4_include(b4_pkgdatadir/[glr.c])
 m4_popdef([b4_parse_param])
 
-m4_divert_push(0)
-@output(b4_spec_defines_file@)@
-b4_copyright([Skeleton interface for Bison GLR parsers in C++],
-             [2002-2012])[
 
-/* C++ GLR parser skeleton written by Akim Demaille.  */
-
-]b4_cpp_guard_open([b4_spec_defines_file])[
-
-]b4_percent_code_get([[requires]])[
+# b4_shared_declarations
+# ----------------------
+# Declaration that might either go into the header (if --defines)
+# or open coded in the parser body.
+m4_define([b4_shared_declarations],
+[b4_percent_code_get([[requires]])[
 
 #include <stdexcept>
 #include <string>
@@ -312,5 +309,16 @@ b4_percent_define_flag_if([[global_tokens_and_yystype]],
 
 ]b4_namespace_close[
 ]b4_percent_code_get([[provides]])[
+]])
+
+m4_divert_push(0)
+@output(b4_spec_defines_file@)@
+b4_copyright([Skeleton interface for Bison GLR parsers in C++],
+             [2002-2012])[
+
+/* C++ GLR parser skeleton written by Akim Demaille.  */
+
+]b4_cpp_guard_open([b4_spec_defines_file])[
+]b4_shared_declarations[
 ]b4_cpp_guard_close([b4_spec_defines_file])[
 ]m4_divert_pop(0)
index 0a190e9b0db3dd7e2de34e65b1c9aca68e6a8d60..f71be3f29a674310732bac658f7c275d94471733 100644 (file)
@@ -131,21 +131,12 @@ b4_locations_if([b4_percent_define_ifdef([[location_type]], [],
 m4_include(b4_pkgdatadir/[stack.hh])
 b4_variant_if([m4_include(b4_pkgdatadir/[variant.hh])])
 
-# We do want M4 expansion after # for CPP macros.
-m4_changecom()
-m4_divert_push(0)dnl
-@output(b4_spec_defines_file@)@
-b4_copyright([Skeleton interface for Bison LALR(1) parsers in C++])
-[
-/**
- ** \file ]b4_spec_defines_file[
- ** Define the ]b4_namespace_ref[::parser class.
- */
-
-/* C++ LALR(1) parser skeleton written by Akim Demaille.  */
-
-]b4_cpp_guard_open([b4_spec_defines_file])[
-]b4_percent_code_get([[requires]])[
+# b4_shared_declarations
+# ----------------------
+# Declaration that might either go into the header (if --defines)
+# or open coded in the parser body.
+m4_define([b4_shared_declarations],
+[b4_percent_code_get([[requires]])[
 ]b4_parse_assert_if([# include <cassert>])[
 # include <stdexcept>
 # include <string>
@@ -341,6 +332,23 @@ b4_public_types_define])[
 #endif
 ])[
 ]b4_percent_code_get([[provides]])[
+]])
+
+# We do want M4 expansion after # for CPP macros.
+m4_changecom()
+m4_divert_push(0)dnl
+@output(b4_spec_defines_file@)@
+b4_copyright([Skeleton interface for Bison LALR(1) parsers in C++])
+[
+/**
+ ** \file ]b4_spec_defines_file[
+ ** Define the ]b4_namespace_ref[::parser class.
+ */
+
+/* C++ LALR(1) parser skeleton written by Akim Demaille.  */
+
+]b4_cpp_guard_open([b4_spec_defines_file])[
+]b4_shared_declarations[
 ]b4_cpp_guard_close([b4_spec_defines_file])
 @output(b4_parser_file_name@)@
 b4_copyright([Skeleton implementation for Bison LALR(1) parsers in C++])