From: Akim Demaille Date: Mon, 12 Nov 2012 08:33:26 +0000 (+0100) Subject: tests: use valgrind where appropriate X-Git-Tag: v2.6.90~44 X-Git-Url: https://git.saurik.com/bison.git/commitdiff_plain/ebbc76d0d7ff5f35af1a8d9b027037d8c70f0bbb tests: use valgrind where appropriate Reported by Théophile Ranquet. * cfg.mk (sc_at_parser_check): New. * tests/c++.at: Fix use of AT_CHECK vs. AT_PARSER_CHECK. --- diff --git a/cfg.mk b/cfg.mk index 9f11f377..7e46324f 100644 --- 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, \ diff --git a/tests/c++.at b/tests/c++.at index dba7a758..a5d83853 100644 --- a/tests/c++.at +++ b/tests/c++.at @@ -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