]> git.saurik.com Git - bison.git/blobdiff - tests/testsuite.at
* NEWS, data/c++-skel.m4, data/c++.m4, data/c-skel.m4, data/c.m4,
[bison.git] / tests / testsuite.at
index 5cc586e4ccb73330e58d18c6c2921f59ec98857a..043ff7b0f6a4ce47bdaa910a1986a89a58000203 100644 (file)
@@ -1,7 +1,7 @@
-# Process this file with autom4te to create testsuite. -*- Autotest -*-
+# Test suite for GNU Bison.                            -*- Autotest -*-
 
-# Test suite for GNU Bison.
-# Copyright (C) 2000, 2001, 2002  Free Software Foundation, Inc.
+# Copyright (C) 2000, 2001, 2002, 2003, 2004, 2006 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
 
 # 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., 59 Temple Place - Suite 330, Boston, MA
-# 02111-1307, USA.
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+# 02110-1301, USA.
 
-# We need a recent Autotest.
-m4_version_prereq([2.52g])
 
-
-# AT_COMPILE(OUTPUT, [SOURCES = OUTPUT.c])
-# ----------------------------------------
-#
-m4_define([AT_COMPILE],
-[AT_CHECK([$CC $CFLAGS $CPPFLAGS m4_default([$2], [$1.c]) -o $1], 0,
-          [], [ignore])])
-
-
-# AT_PARSER_CHECK(COMMAND, EXIT-STATUS, EXPOUT, EXPERR)
-# -----------------------------------------------------
-# So that we can run `./testsuite PREPARSER='valgrind -q' for instance.
-m4_define([AT_PARSER_CHECK],
-[AT_CHECK([$PREPARSER $1], [$2], [$3], [$4])])
-
-AT_INIT
-
-AT_TESTED([bison])
+# 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])
@@ -77,5 +65,14 @@ m4_include([existing.at])
 # Some old bugs.
 m4_include([regression.at])
 
-# GLR tests: C++ types, simplified
+# Some C++ specific tests.
+m4_include([c++.at])
+
+# GLR tests:
+# C++ types, simplified
 m4_include([cxx-type.at])
+# Regression tests
+m4_include([glr-regression.at])
+
+m4_popdef([AT_CHECK])
+m4_popdef([ORIGINAL_AT_CHECK])