mirror of
https://git.savannah.gnu.org/git/bison.git
synced 2026-03-09 12:23:04 +00:00
tests: check that parse-gram.y's IELR and LALR are identical.
* tests/atlocal.in (abs_top_srcdir): New shell variable.
* tests/regression.at (parse-gram.y: LALR = IELR): New test
group.
(cherry picked from commit 43aabb70a9)
This commit is contained in:
@@ -1246,3 +1246,23 @@ AT_COMPILE([[input]])
|
||||
AT_PARSER_CHECK([[./input]])
|
||||
|
||||
AT_CLEANUP
|
||||
|
||||
|
||||
|
||||
## --------------------------- ##
|
||||
## parse-gram.y: LALR = IELR. ##
|
||||
## --------------------------- ##
|
||||
|
||||
# If parse-gram.y's LALR and IELR parser tables ever begin to differ, we
|
||||
# need to fix parse-gram.y or start using IELR.
|
||||
|
||||
AT_SETUP([[parse-gram.y: LALR = IELR]])
|
||||
|
||||
# Avoid differences in synclines by telling bison that the output files
|
||||
# have the same name.
|
||||
cp $abs_top_srcdir/src/parse-gram.y input.y
|
||||
AT_BISON_CHECK([[-o input.c -Dlr.type=lalr input.y && mv input.c lalr.c]])
|
||||
AT_BISON_CHECK([[-o input.c -Dlr.type=ielr input.y && mv input.c ielr.c]])
|
||||
AT_CHECK([[diff -u lalr.c ielr.c]])
|
||||
|
||||
AT_CLEANUP
|
||||
|
||||
Reference in New Issue
Block a user