cfc219ae68
There are currently no tests for [concepts.compare], but they will be added ASAP. * include/Makefile.am: Add new header. * include/Makefile.in: Regenerate. * include/precompiled/stdc++.h: Include <concepts>. * include/std/concepts: New header for C++20. * include/std/version (__cpp_lib_concepts): Define. * scripts/create_testsuite_files: Look for test files in new std directory. * testsuite/libstdc++-dg/conformance.exp: Likewise. * testsuite/std/concepts/concepts.callable/invocable.cc: New test. * testsuite/std/concepts/concepts.callable/regular_invocable.cc: New test. * testsuite/std/concepts/concepts.callable/relation.cc: New test. * testsuite/std/concepts/concepts.callable/strictweakorder.cc: New test. * testsuite/std/concepts/concepts.lang/concept.arithmetic/ floating_point.cc: New test. * testsuite/std/concepts/concepts.lang/concept.arithmetic/integral.cc: New test. * testsuite/std/concepts/concepts.lang/concept.arithmetic/ signed_integral.cc: New test. * testsuite/std/concepts/concepts.lang/concept.arithmetic/ unsigned_integral.cc: New test. * testsuite/std/concepts/concepts.lang/concept.assignable/1.cc: New test. * testsuite/std/concepts/concepts.lang/concept.common/1.cc: New test. * testsuite/std/concepts/concepts.lang/concept.commonref/1.cc: New test. * testsuite/std/concepts/concepts.lang/concept.constructible/1.cc: New test. * testsuite/std/concepts/concepts.lang/concept.convertible/1.cc: New test. * testsuite/std/concepts/concepts.lang/concept.copyconstructible/1.cc: New test. * testsuite/std/concepts/concepts.lang/concept.defaultconstructible/ 1.cc: New test. * testsuite/std/concepts/concepts.lang/concept.derived/1.cc: New test. * testsuite/std/concepts/concepts.lang/concept.destructible/1.cc: New test. * testsuite/std/concepts/concepts.lang/concept.moveconstructible/1.cc: New test. * testsuite/std/concepts/concepts.lang/concept.same/1.cc: New test. * testsuite/std/concepts/concepts.lang/concept.swappable/swap.cc: New test. * testsuite/std/concepts/concepts.lang/concept.swappable/swappable.cc: New test. * testsuite/std/concepts/concepts.lang/concept.swappable/ swappable_with.cc: New test. * testsuite/std/concepts/concepts.object/copyable.cc: New test. * testsuite/std/concepts/concepts.object/movable.cc: New test. * testsuite/std/concepts/concepts.object/regular.cc: New test. * testsuite/std/concepts/concepts.object/semiregular.cc: New test. From-SVN: r276892
57 lines
2.0 KiB
Bash
Executable File
57 lines
2.0 KiB
Bash
Executable File
#!/bin/sh
|
|
|
|
# Constructs lists of source files (full pathnames) to test. Two
|
|
# files are constructed: testsuite_files, which is used to test with
|
|
# the default dg-runtest command, and testsuite_files_interactive,
|
|
# which is used to test cases that require input to be entered. In
|
|
# addition, both lists are pruned of wchar_t tests if the toolchain
|
|
# under test does not support wchar_t functionality.
|
|
#
|
|
# We mimic the mkcheck script in that the first time this is run, all
|
|
# existing files are listed in "testsuite_files" in the output
|
|
# directory. Subsequent runs pull the list from that file, allowing
|
|
# users to trim the list down to problematic tests, or just run
|
|
# particular directories or sub-directories of tests.
|
|
#
|
|
# Selecting individual tests can also be done with RUNTESTFLAGS, but
|
|
# that doesn't really do all that we are trying to accomplish here.
|
|
|
|
LC_ALL=C
|
|
export LC_ALL
|
|
|
|
# Both of these are in the appropriate testsuite subdirectories.
|
|
srcdir="$1"
|
|
outdir="$2"
|
|
|
|
tmp="${TMPDIR:-/tmp}/ctt$$"
|
|
tests_file_normal="$outdir/testsuite_files"
|
|
tests_file_inter="$outdir/testsuite_files_interactive"
|
|
tests_file_perf="$outdir/testsuite_files_performance"
|
|
|
|
cd $srcdir
|
|
# This is the ugly version of "everything but the current directory". It's
|
|
# what has to happen when find(1) doesn't support -mindepth, or -xtype.
|
|
# The directories here should be consistent with libstdc++-dg/conformance.exp
|
|
dlist=`echo [0-9][0-9]*`
|
|
dlist="$dlist std abi backward ext performance tr1 tr2 decimal experimental"
|
|
dlist="$dlist special_functions"
|
|
find $dlist "(" -type f -o -type l ")" -name "*.cc" -print > $tmp.01
|
|
find $dlist "(" -type f -o -type l ")" -name "*.c" -print > $tmp.02
|
|
cat $tmp.01 $tmp.02 | sort > $tmp.1
|
|
if test ! -s "$tmp.1"; then
|
|
exit 1
|
|
fi
|
|
|
|
# Now filter out classes of tests. These classes are run using special rules.
|
|
grep _xin $tmp.1 > $tests_file_inter
|
|
grep -v _xin $tmp.1 > $tmp.4
|
|
|
|
grep performance $tmp.4 > $tests_file_perf
|
|
grep -v performance $tmp.4 > $tmp.5
|
|
|
|
# ...more filters go here.
|
|
cp $tmp.5 $tests_file_normal
|
|
|
|
rm $tmp*
|
|
exit 0
|