# Test suite for GNU Bison. -*- Autotest -*- # Copyright (C) 2000, 2001, 2002, 2003, 2004, 2006, 2007 Free Software # Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2, or (at your option) # any later version. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA # 02110-1301, USA. # Bison often leaks memory when its exit status is non-zero, so set # --leak-check=summary for Valgrind in that case. m4_pushdef([ORIGINAL_AT_CHECK], m4_defn([AT_CHECK])) m4_pushdef([AT_CHECK], [ORIGINAL_AT_CHECK( m4_if(m4_index(m4_quote($1), [bison ]), 0, m4_if(m4_quote($2), [0], [], m4_quote($2), [], [], [[VALGRIND_OPTS="$VALGRIND_OPTS --leak-check=summary --show-reachable=no"; export VALGRIND_OPTS; ]]))$@)]) # Testing resistance to user bugs. m4_include([input.at]) # Testing output file names. m4_include([output.at]) # Testing skeleton support. m4_include([skeletons.at]) # Testing the part of the engine that computes FOLLOW etc. m4_include([sets.at]) # Testing grammar reduction. m4_include([reduce.at]) # Testing that #lines are correct. m4_include([synclines.at]) # Testing that headers are sane. m4_include([headers.at]) # Testing that user actions are properly performed. m4_include([actions.at]) # Testing conflicts detection and resolution. m4_include([conflicts.at]) # Fulling testing (compilation and execution of the parser) on calc. m4_include([calc.at]) # Huge artificial grammars. # Torturing the stack expansion at runtime. m4_include([torture.at]) # Checking big, real world grammars. m4_include([existing.at]) # Some old bugs. m4_include([regression.at]) # Some C++ specific tests. m4_include([c++.at]) # And some Java specific tests. m4_include([java.at]) # GLR tests: # C++ types, simplified m4_include([cxx-type.at]) # Regression tests m4_include([glr-regression.at]) # Push parsing specific tests. m4_include([push.at]) m4_popdef([AT_CHECK]) m4_popdef([ORIGINAL_AT_CHECK])