c++: make stack.hh completely useless

Let's completely deprecate stack.hh.  Don't provide a means to give it
a new name, allow only its removal.

See https://lists.gnu.org/archive/html/bison-patches/2018-09/msg00151.html
and https://lists.gnu.org/archive/html/bison-patches/2018-09/msg00182.html.

* data/stack.hh: Reduce stack.hh to a simple comment explaining how to
get rid of it.
* data/lalr1.cc: Adjust
* tests/input.at (%define file variables): Adjust.
* tests/output.at: Remove cases where stack.hh was removed.
This commit is contained in:
Akim Demaille
2018-10-02 07:01:13 +02:00
parent 667588ee8a
commit 29b1da4e18
5 changed files with 17 additions and 38 deletions

View File

@@ -694,10 +694,8 @@ AT_CHECK_CALC_LALR1_CC([%defines %locations %define parse.error verbose %debug %
AT_CHECK_CALC_LALR1_CC([%define parse.error verbose %debug %define api.prefix {calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count}])
AT_CHECK_CALC_LALR1_CC([%defines %locations %define parse.error verbose %debug %define api.prefix {calc} %verbose %yacc %parse-param {semantic_value *result} %parse-param {int *count}])
AT_CHECK_CALC_LALR1_CC([%locations %define api.stack.file "my-stack.hh"])
AT_CHECK_CALC_LALR1_CC([%locations %defines %define api.stack.file none %define api.location.file none %define api.position.file none])
AT_CHECK_CALC_LALR1_CC([%defines %locations %define api.stack.file "my-stack.hh"])
AT_CHECK_CALC_LALR1_CC([%defines %locations %define api.stack.file "my-stack.hh" %define api.position.file none %define api.location.file "my-location.hh"])
AT_CHECK_CALC_LALR1_CC([%defines %locations %define api.stack.file none %define api.position.file none %define api.location.file "my-location.hh"])
# --------------------------- #

View File

@@ -1673,9 +1673,10 @@ AT_BISON_CHECK([[-fcaret input.y]], [[1]], [[]],
input.y:4.9-25: error: %define variable 'api.location.file' requires 'none' or '"..."' values
%define api.location.file {bogus}
^^^^^^^^^^^^^^^^^
input.y:3.9-22: error: %define variable 'api.stack.file' requires 'none' or '"..."' values
input.y:3.9-22: error: invalid value for %define variable 'api.stack.file': 'bogus'
%define api.stack.file bogus
^^^^^^^^^^^^^^
input.y:3.9-22: accepted value: 'none'
]])
AT_CLEANUP

View File

@@ -180,11 +180,6 @@ AT_CHECK_OUTPUT([gram_dir/foo.yy],
[output_dir/foo.output output_dir/foo.tab.cc output_dir/foo.tab.hh output_dir/location.hh output_dir/position.hh output_dir/stack.hh])
# api.stack.file.
AT_CHECK_OUTPUT([foo.yy],
[%skeleton "lalr1.cc" %define api.stack.file "foo.sta.hh"],
[],
[foo.sta.hh foo.tab.cc])
AT_CHECK_OUTPUT([foo.yy],
[%skeleton "lalr1.cc" %defines %define api.stack.file none],
[],
@@ -216,9 +211,9 @@ AT_CHECK_OUTPUT([foo.yy],
[foo.loc.hh foo.pos.hh foo.tab.cc foo.tab.hh])
AT_CHECK_OUTPUT([gram_dir/foo.yy],
[%skeleton "lalr1.cc" %verbose %defines %define api.stack.file "foo.sta.hh" %file-prefix "output_dir/foo"],
[%skeleton "lalr1.cc" %verbose %defines %file-prefix "output_dir/foo"],
[],
[output_dir/foo.output output_dir/foo.sta.hh output_dir/foo.tab.cc output_dir/foo.tab.hh])
[output_dir/foo.output output_dir/foo.tab.cc output_dir/foo.tab.hh])
# AT_CHECK_CONFLICTING_OUTPUT(INPUT-FILE, DIRECTIVES, FLAGS, STDERR,