* tests/actions.at (AT_CHECK_PRINTER_AND_DESTRUCTOR): New.

Use it to test the GLR parser.
This commit is contained in:
Akim Demaille
2002-11-12 09:07:38 +00:00
parent 7bd6c77e5e
commit 3df374151b
3 changed files with 28 additions and 4 deletions

View File

@@ -1,3 +1,8 @@
2002-11-12 Akim Demaille <akim@epita.fr>
* tests/actions.at (AT_CHECK_PRINTER_AND_DESTRUCTOR): New.
Use it to test the GLR parser.
2002-11-12 Akim Demaille <akim@epita.fr> 2002-11-12 Akim Demaille <akim@epita.fr>
* tests/regression.at (input.y): s/YYEOF/MYEOF/, as the skeleton * tests/regression.at (input.y): s/YYEOF/MYEOF/, as the skeleton

View File

@@ -3395,8 +3395,7 @@ should use @code{$$} to designate the semantic value associated to the
@strong{Warning:} as of Bison 1.875, this feature is still considered as @strong{Warning:} as of Bison 1.875, this feature is still considered as
experimental, as there was not enough users feedback. In particular, experimental, as there was not enough users feedback. In particular,
the syntax might still change, and for the time being, only the default the syntax might still change.
@acronym{LALR}(1) skeleton supports this feature.
@end deffn @end deffn
For instance: For instance:

View File

@@ -157,12 +157,19 @@ AT_CLEANUP
## Printers and Destructors. ## ## Printers and Destructors. ##
## -------------------------- ## ## -------------------------- ##
AT_SETUP([Printers and Destructors]) # _AT_CHECK_PRINTER_AND_DESTRUCTOR($1, $2, $3, BISON-DIRECTIVE)
# -------------------------------------------------------------
m4_define([_AT_CHECK_PRINTER_AND_DESTRUCTOR],
[m4_if([$1$2$3], $[1]$[2]$[3], [],
[m4_fatal([$0: Invalid arguments: $@])])dnl
AT_SETUP([Printers and Destructors: $4])
# Make sure complex $n work. # Make sure complex $n work.
AT_DATA([[input.y]], AT_DATA([[input.y]],
[[%{ [[$4
%{
#include <stdio.h> #include <stdio.h>
#include <stdlib.h> #include <stdlib.h>
#include <assert.h> #include <assert.h>
@@ -339,3 +346,16 @@ Parsing FAILED.
]]) ]])
AT_CLEANUP AT_CLEANUP
])
# AT_CHECK_PRINTER_AND_DESTRUCTOR([BISON-OPTIONS])
# ------------------------------------------------
# Produce `calc.y'.
m4_define([AT_CHECK_PRINTER_AND_DESTRUCTOR],
[_AT_CHECK_PRINTER_AND_DESTRUCTOR($[1], $[2], $[3], [$1])
])
AT_CHECK_PRINTER_AND_DESTRUCTOR()
AT_CHECK_PRINTER_AND_DESTRUCTOR([%glr-parser])