+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>
* tests/regression.at (input.y): s/YYEOF/MYEOF/, as the skeleton
@strong{Warning:} as of Bison 1.875, this feature is still considered as
experimental, as there was not enough users feedback. In particular,
-the syntax might still change, and for the time being, only the default
-@acronym{LALR}(1) skeleton supports this feature.
+the syntax might still change.
@end deffn
For instance:
## 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.
AT_DATA([[input.y]],
-[[%{
+[[$4
+%{
#include <stdio.h>
#include <stdlib.h>
#include <assert.h>
]])
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])