[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
FYI: master: examples: ship and install variant.yy
From: |
Akim Demaille |
Subject: |
FYI: master: examples: ship and install variant.yy |
Date: |
Tue, 14 Aug 2018 13:42:29 +0200 |
Pushed in master (in two commits, merged here in a single one).
commit 30c179fee8dc13b0d0cb0c4d725b549d1afab439
Author: Akim Demaille <address@hidden>
Date: Tue Aug 14 07:49:09 2018 +0200
examples: ship and install variant.yy
This file was meant to be shown as an example. Install it.
* README, data/README: Put Emacs metadata in the final section.
* examples/README: New.
* examples/variant.yy: Use %empty.
* examples/local.mk: Install both these files.
diff --git a/README b/README
index 7ec93e49..5370f335 100644
--- a/README
+++ b/README
@@ -37,13 +37,12 @@ test case in each bug report.
For any copyright year range specified as YYYY-ZZZZ in this package,
note that the range specifies every single year in that closed interval.
+-----
Local Variables:
mode: outline
End:
------
-
Copyright (C) 1992, 1998-1999, 2003-2005, 2008-2015, 2018 Free Software
Foundation, Inc.
diff --git a/data/README b/data/README
index 629599cc..798750f7 100644
--- a/data/README
+++ b/data/README
@@ -1,5 +1,3 @@
--*- outline -*-
-
This directory contains data needed by Bison.
* Skeletons
@@ -52,6 +50,10 @@ into various formats.
-----
+Local Variables:
+mode: outline
+End:
+
Copyright (C) 2002, 2008-2015, 2018 Free Software Foundation, Inc.
This file is part of GNU Bison.
diff --git a/examples/README b/examples/README
new file mode 100644
index 00000000..bfdd8c68
--- /dev/null
+++ b/examples/README
@@ -0,0 +1,39 @@
+This directory contains examples of Bison grammar files.
+
+* mfcalc
+A C example of a multi-function calculator. Extracted from the
+documentation.
+
+* calc++
+A C++ version of the canonical example for parsers: a calculator.
+Also uses Flex for the scanner. Extracted from the documentation.
+
+* variant.yy
+A C++ example that uses variants (they allow to use any C++ type as
+semantic value type) and symbol constructors (they ensure consistency
+between declared token type and effective semantic value).
+
+-----
+
+Local Variables:
+mode: outline
+End:
+
+Copyright (C) 2018 Free Software Foundation, Inc.
+
+This file is part of Bison, the GNU Compiler Compiler.
+
+This program is free software: you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation, either version 3 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+# LocalWords: mfcalc calc parsers yy
diff --git a/examples/local.mk b/examples/local.mk
index 3a23d808..6dfbf2eb 100644
--- a/examples/local.mk
+++ b/examples/local.mk
@@ -41,6 +41,13 @@ $(extracted): %D%/extracted.stamp
@test -f $@ || rm -f %D%/extracted.stamp
@test -f $@ || $(MAKE) $(AM_MAKEFLAGS) %D%/extracted.stamp
+## ---------- ##
+## Examples. ##
+## ---------- ##
+
+examplesdir = $(docdir)/examples
+dist_examples_DATA = %D%/README %D%/variant.yy
+
include %D%/calc++/local.mk
include %D%/mfcalc/local.mk
include %D%/rpcalc/local.mk
diff --git a/examples/variant.yy b/examples/variant.yy
index b6d97c9c..6c8e4635 100644
--- a/examples/variant.yy
+++ b/examples/variant.yy
@@ -88,13 +88,13 @@ result:
;
list:
- /* nothing */ { /* Generates an empty string list */ }
-| list item { std::swap ($$, $1); $$.push_back ($2); }
+ %empty { /* Generates an empty string list */ }
+| list item { std::swap ($$, $1); $$.push_back ($2); }
;
item:
- TEXT { std::swap ($$, $1); }
-| NUMBER { $$ = string_cast ($1); }
+ TEXT { std::swap ($$, $1); }
+| NUMBER { $$ = string_cast ($1); }
;
%%
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- FYI: master: examples: ship and install variant.yy,
Akim Demaille <=