]> git.saurik.com Git - bison.git/commitdiff
tests: use valgrind where appropriate
authorAkim Demaille <akim@lrde.epita.fr>
Mon, 12 Nov 2012 08:33:26 +0000 (09:33 +0100)
committerAkim Demaille <akim@lrde.epita.fr>
Mon, 12 Nov 2012 08:33:26 +0000 (09:33 +0100)
Reported by Théophile Ranquet.

* cfg.mk (sc_at_parser_check): New.
* tests/c++.at: Fix use of AT_CHECK vs. AT_PARSER_CHECK.

cfg.mk
tests/c++.at

diff --git a/cfg.mk b/cfg.mk
index 9f11f3774aa15fa7ab32c8d7d91a115e8833e7c2..7e46324faf6cb3f2d233b891d49eeb0c1cee8b3f 100644 (file)
--- a/cfg.mk
+++ b/cfg.mk
@@ -61,6 +61,18 @@ update-copyright: update-b4-copyright update-package-copyright-year
 update-copyright-env = \
   UPDATE_COPYRIGHT_FORCE=1 UPDATE_COPYRIGHT_USE_INTERVALS=1
 
+# At least for Mac OS X's grep, the order between . and [ in "[^.[]"
+# matters:
+# $ LC_ALL=fr_FR grep -nE '[^[.]' /dev/null
+# $ LC_ALL=C grep -nE '[^[.]' /dev/null
+# grep: invalid collating element or class
+# $ LC_ALL=fr_FR grep -nE '[^.[]' /dev/null
+# $ LC_ALL=C grep -nE '[^.[]' /dev/null
+sc_at_parser_check:
+       @prohibit='AT_PARSER_CHECK\(\[+[^.[]|AT_CHECK\(\[+\./'          \
+       halt='use AT_PARSER_CHECK for and only for generated parsers'   \
+         $(_sc_search_regexp)
+
 exclude = \
   $(foreach a,$(1),$(eval $(subst $$,$$$$,exclude_file_name_regexp--sc_$(a))))
 $(call exclude,                                                                \
index dba7a758d53c07b8ac7c2ca7e8bf2c5755ff019a..a5d8385397b71b4e34f47f40d030c56b1afc665a 100644 (file)
@@ -397,7 +397,7 @@ AT_PARSER_CHECK([[./input i]], [[2]], [[]],
 AT_PARSER_CHECK([[./input aaaap]])
 
 AT_PARSER_CHECK([[./input --debug aaaap]], [[2]], [[]], [[stderr]])
-AT_PARSER_CHECK([[grep '^exception caught: printer$' stderr]], [], [ignore])
+AT_CHECK([[grep '^exception caught: printer$' stderr]], [], [ignore])
 
 AT_PARSER_CHECK([[./input aaaae]], [[2]], [[]],
 [[exception caught: syntax error