CMake Nightly Date Stamp
Tests: create output files for all memory checkers

The dummy memory tester implementation now understands the command line
switches for all memory checkers to redirect the output to a file. This avoids
triggering the error cases for BoundsChecker and Purify because the output file
does not exist.
CTest: use an output file for Valgrind (#14110)

This makes sure Valgrind output will not screw up tests that match on the
output.
CTest: remove unreachable code and CTestTestMemcheckUnknown test

The memory checker command can't be quoted at this point, because previously it
has been tested that the given file exists, which will fail if the name is
quoted. The CTestTestMemcheckUnknown test aimed to test this case, has always
failed to do so and serves no useful purpose therefore.
Tests: remove code duplication in CTestTestMemCheck tests

The code for the tests is basically the same for all those subtests, so have
one template and configure that for as many tests as possible to make it
easier maintainable.
Tests: verify that memory checker output files are always present

All supported memory checkers now write their output to a file. Use a dummy
checker that ignores the given filename and ensure that the missing file is
reported as error.
CTest: drop suppression for gcc 2.9.6 errors from default Valgrind flags

The --workaround-gcc296-bugs has been part of the default Valgrind flags since
Valgrind support was added in commit 5b232ded151fc22144978b74cdaf7031d466e527
(ENH: Add initial memory check support which works for Valgrind, 2003-12-15).
The Valgrind manpage says that this option should be avoided if not really
needed as it may cause real errors to get ignored. If someone uses a compiler
that really needs the flag this flag should be set by the user explicitely.
Most users will never set any flags and probably never notice that they use a
flag they shouldn't.
tests: add test for non-existent Valgrind suppression file
Merge topic 'MemChecker-improvements' into next

3e36874 tests: add test for non-existent Valgrind suppression file
4b505e4 CTest: drop suppression for gcc 2.9.6 errors from default Valgrind flags
641593a Tests: verify that memory checker output files are always present
dc91f37 Tests: remove code duplication in CTestTestMemCheck tests
6b418ed CTest: remove unreachable code and CTestTestMemcheckUnknown test
ed84fdd CTest: use an output file for Valgrind (#14110)
3bc666d Tests: create output files for all memory checkers
ff298ff CMake Nightly Date Stamp