1 # Test suite for GNU Bison. -*- Autotest -*-
3 # Copyright (C) 2000, 2001, 2002, 2003, 2004, 2006, 2007 Free Software
6 # This program is free software: you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation, either version 3 of the License, or
9 # (at your option) any later version.
11 # This program is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 # GNU General Public License for more details.
16 # You should have received a copy of the GNU General Public License
17 # along with this program. If not, see <http://www.gnu.org/licenses/>.
20 # Bison often leaks memory when its exit status is non-zero, so set
21 # --leak-check=summary for Valgrind in that case.
22 m4_pushdef([ORIGINAL_AT_CHECK], m4_defn([AT_CHECK]))
23 m4_pushdef([AT_CHECK],
25 m4_if(m4_index(m4_quote($1), [bison ]), 0,
26 m4_if(m4_quote($2), [0], [], m4_quote($2), [], [],
27 [[VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; ]]))$@)])
29 # Testing resistance to user bugs.
30 m4_include([input.at])
32 # Testing output file names.
33 m4_include([output.at])
35 # Testing skeleton support.
36 m4_include([skeletons.at])
38 # Testing the part of the engine that computes FOLLOW etc.
41 # Testing grammar reduction.
42 m4_include([reduce.at])
44 # Testing that #lines are correct.
45 m4_include([synclines.at])
47 # Testing that headers are sane.
48 m4_include([headers.at])
50 # Testing that user actions are properly performed.
51 m4_include([actions.at])
53 # Testing conflicts detection and resolution.
54 m4_include([conflicts.at])
56 # Fulling testing (compilation and execution of the parser) on calc.
59 # Huge artificial grammars.
60 # Torturing the stack expansion at runtime.
61 m4_include([torture.at])
63 # Checking big, real world grammars.
64 m4_include([existing.at])
67 m4_include([regression.at])
69 # Some C++ specific tests.
72 # And some Java specific tests.
76 # C++ types, simplified
77 m4_include([cxx-type.at])
79 m4_include([glr-regression.at])
81 # Push parsing specific tests.
85 m4_popdef([ORIGINAL_AT_CHECK])