diff options
author | Akim Demaille <akim.demaille@gmail.com> | 2020-12-06 06:54:56 +0100 |
---|---|---|
committer | Akim Demaille <akim.demaille@gmail.com> | 2020-12-06 15:11:33 +0100 |
commit | 42fe808292ba35e8e54fd220b71b0f7cd2b4110a (patch) | |
tree | 2c7187e2ffa54954ca26ad28e48984f8d601c3e8 /tests/local.at | |
parent | 4beefee4bf1022f15f9a793fb22085a09c8525de (diff) | |
download | bison-42fe808292ba35e8e54fd220b71b0f7cd2b4110a.tar.gz |
glr2.cc: run the glr-regression tests
When installed on master as of 2020-12-05 (on top of "glr2.cc: fix
when the stack is not expandable", almost all the GLR regression tests
fail (with a SEGV):
709: Badly Collapsed GLR States: glr2.cc FAILED (glr-regression.at:130)
712: Improper handling of embedded actions and dollar(-N) in GLR parsers: glr2.cc FAILED (glr-regression.at:275)
715: Improper merging of GLR delayed action sets: glr2.cc FAILED (glr-regression.at:404)
718: Duplicate representation of merged trees: glr2.cc FAILED (glr-regression.at:502)
721: User destructor for unresolved GLR semantic value: glr2.cc FAILED (glr-regression.at:566)
724: User destructor after an error during a split parse: glr2.cc FAILED (glr-regression.at:624)
727: Duplicated user destructor for lookahead: glr2.cc FAILED (glr-regression.at:724)
730: Incorrectly initialized location for empty right-hand side in GLR: glr2.cc FAILED (glr-regression.at:823)
733: No users destructors if stack 0 deleted: glr2.cc FAILED (glr-regression.at:911)
736: Corrupted semantic options if user action cuts parse: glr2.cc FAILED (glr-regression.at:974)
739: Undesirable destructors if user action cuts parse: glr2.cc FAILED (glr-regression.at:1042)
742: Leaked semantic values if user action cuts parse: glr2.cc FAILED (glr-regression.at:1173)
748: Incorrect lookahead during nondeterministic GLR: glr2.cc FAILED (glr-regression.at:1546)
751: Leaked semantic values when reporting ambiguity: glr2.cc FAILED (glr-regression.at:1639)
754: Leaked lookahead after nondeterministic parse syntax error: glr2.cc FAILED (glr-regression.at:1710)
757: Uninitialized location when reporting ambiguity: glr2.cc FAILED (glr-regression.at:1794)
766: Predicates: glr2.cc FAILED (glr-regression.at:2045)
These pass:
745: Incorrect lookahead during deterministic GLR: glr2.cc ok
760: Missed %merge type warnings when LHS type is declared later: glr2.cc ok
763: Ambiguity reports: glr2.cc ok
With Valentin Tolmer's "glr2.cc: Fix memory corruption bug" commit,
these test fail "gracefully":
712: Improper handling of embedded actions and dollar(-N) in GLR parsers: glr2.cc FAILED (glr-regression.at:268)
730: Incorrectly initialized location for empty right-hand side in GLR: glr2.cc FAILED (glr-regression.at:816)
748: Incorrect lookahead during nondeterministic GLR: glr2.cc FAILED (glr-regression.at:1539)
And these do not end:
709: Badly Collapsed GLR States: glr2.cc FAILED (glr-regression.at:123)
715: Improper merging of GLR delayed action sets: glr2.cc FAILED (glr-regression.at:397)
718: Duplicate representation of merged trees: glr2.cc FAILED (glr-regression.at:495)
751: Leaked semantic values when reporting ambiguity: glr2.cc FAILED (glr-regression.at:1632)
With "tests: glr2.cc: run the glr-regression tests", none loop, and
709, 715, and 751 pass. Only 718 still fails.
* tests/glr-regression.at: Run all the tests with glr2.cc.
* tests/local.at (AT_GLR2_CC_IF): New.
Diffstat (limited to 'tests/local.at')
-rw-r--r-- | tests/local.at | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/tests/local.at b/tests/local.at index e4242b39..f68d6e5b 100644 --- a/tests/local.at +++ b/tests/local.at @@ -244,6 +244,8 @@ m4_pushdef([AT_LALR1_CC_IF], [AT_CXX_IF([AT_GLR_IF([$2], [$1])], [$2])]) m4_pushdef([AT_GLR_CC_IF], [AT_CXX_IF([AT_GLR_IF([$1], [$2])], [$2])]) +m4_pushdef([AT_GLR2_CC_IF], + [m4_bmatch([$3], [%skeleton "glr2\.cc"], [$1], [$2])]) # Using yacc.c? m4_pushdef([AT_YACC_IF], [m4_bmatch([$3], [%language\|%glr-parser\|%skeleton], [$2], [$1])]) @@ -460,6 +462,7 @@ m4_popdef([AT_CXX_IF]) m4_popdef([AT_C_IF]) m4_popdef([AT_LANG]) m4_popdef([AT_JAVA_IF]) +m4_popdef([AT_GLR2_CC_IF]) m4_popdef([AT_GLR_CC_IF]) m4_popdef([AT_LALR1_CC_IF]) m4_popdef([AT_ERROR_SIMPLE_IF]) |