[multiple changes]

2007-02-20  Benjamin Kosnik  <bkoz@redhat.com>

	Revamp library API testing.
	Added:
	* 17_intro/headers
	* 17_intro/headers/all_assert_neg.cc
	* 17_intro/headers/all_c++200x_compatibility.cc
	* 17_intro/headers/all.cc
	* 17_intro/headers/c++1998
	* 17_intro/headers/c++1998/all.cc
	* 17_intro/headers/c++1998/all_multiple_inclusion.cc
	* 17_intro/headers/c++1998/c++_for_c.tar
	* 17_intro/headers/c++1998/c++.tar
	* 17_intro/using_namespace_std.cc
	* 18_support/headers
	* 18_support/headers/cfloat
	* 18_support/headers/cfloat/values.cc
	* 18_support/headers/climits
	* 18_support/headers/climits/values.cc
	* 18_support/headers/csetjmp
	* 18_support/headers/csetjmp/functions_std.cc
	* 18_support/headers/csetjmp/macros.cc
	* 18_support/headers/csetjmp/types_std.cc
	* 18_support/headers/csignal
	* 18_support/headers/csignal/functions_std.cc
	* 18_support/headers/csignal/macros.cc
	* 18_support/headers/csignal/types_std.cc
	* 18_support/headers/cstdarg
	* 18_support/headers/cstdarg/macros.cc
	* 18_support/headers/cstdarg/types_std.cc
	* 18_support/headers/cstddef
	* 18_support/headers/cstddef/macros.cc
	* 18_support/headers/cstddef/types_std.cc
	* 18_support/headers/cstdlib
	* 18_support/headers/cstdlib/functions_std.cc
	* 18_support/headers/cstdlib/macros.cc
	* 18_support/headers/ctime
	* 18_support/headers/ctime/functions_std.cc
	* 18_support/headers/ctime/macros.cc
	* 18_support/headers/ctime/types_std.cc
	* 18_support/headers/exception
	* 18_support/headers/exception/synopsis.cc
	* 18_support/headers/exception/types_std.cc
	* 18_support/headers/limits
	* 18_support/headers/limits/synopsis.cc
	* 18_support/headers/new
	* 18_support/headers/new/synopsis.cc
	* 18_support/headers/new/types_std.cc
	* 18_support/headers/typeinfo
	* 18_support/headers/typeinfo/synopsis.cc
	* 18_support/headers/typeinfo/types_std.cc
	* 18_support/numeric_limits/is_signed.cc
	* 18_support/numeric_limits/requirements
	* 18_support/numeric_limits/requirements/explicit_instantiation
	* 18_support/numeric_limits/requirements/explicit_instantiation/1.cc
	* 18_support/numeric_limits/specialization_default_values.cc
	* 19_diagnostics/headers
	* 19_diagnostics/headers/cassert
	* 19_diagnostics/headers/cassert/macros.cc
	* 19_diagnostics/headers/cerrno
	* 19_diagnostics/headers/cerrno/macros.cc
	* 19_diagnostics/headers/stdexcept
	* 19_diagnostics/headers/stdexcept/synopsis.cc
	* 19_diagnostics/headers/stdexcept/types_std.cc
	* 20_util/headers
	* 20_util/headers/cstdlib
	* 20_util/headers/cstdlib/functions_std.cc
	* 20_util/headers/cstring
	* 20_util/headers/cstring/functions_std.cc
	* 20_util/headers/cstring/macros.cc
	* 20_util/headers/cstring/types_std.cc
	* 20_util/headers/ctime
	* 20_util/headers/ctime/functions_std.cc
	* 20_util/headers/ctime/macros.cc
	* 20_util/headers/ctime/types_std.cc
	* 20_util/headers/functional
	* 20_util/headers/functional/synopsis.cc
	* 20_util/headers/memory
	* 20_util/headers/memory/synopsis.cc
	* 20_util/headers/utility
	* 20_util/headers/utility/synopsis.cc
	* 20_util/headers/utility/using_namespace_std_rel_ops.cc
	* 20_util/memory/allocator/requirements
	* 20_util/memory/allocator/requirements/explicit_instantiation
	* 20_util/memory/allocator/requirements/explicit_instantiation/1.cc
	* 20_util/memory/auto_ptr/requirements
	* 20_util/memory/auto_ptr/requirements/explicit_instantiation
	* 20_util/memory/auto_ptr/requirements/explicit_instantiation/1.cc
	* 20_util/memory/raw_storage_iterator
	* 20_util/memory/raw_storage_iterator/requirements
	* 20_util/memory/raw_storage_iterator/requirements/base_classes.cc
	* 20_util/memory/raw_storage_iterator/requirements/
	explicit_instantiation
	* 20_util/memory/raw_storage_iterator/requirements/
	explicit_instantiation/1.cc
	* 20_util/memory/raw_storage_iterator/requirements/typedefs.cc
	* 20_util/utility/pair/requirements
	* 20_util/utility/pair/requirements/explicit_instantiation
	* 20_util/utility/pair/requirements/explicit_instantiation/1.cc
	* 21_strings/basic_string/requirements
	* 21_strings/basic_string/requirements/explicit_instantiation
	* 21_strings/basic_string/requirements/explicit_instantiation/1.cc
	* 21_strings/basic_string/requirements/explicit_instantiation/debug.cc
	* 21_strings/headers
	* 21_strings/headers/cctype
	* 21_strings/headers/cctype/functions_std.cc
	* 21_strings/headers/cstdlib
	* 21_strings/headers/cstdlib/functions_std.cc
	* 21_strings/headers/cstdlib/macros.cc
	* 21_strings/headers/cstring
	* 21_strings/headers/cstring/functions_std.cc
	* 21_strings/headers/cstring/macros.cc
	* 21_strings/headers/cstring/types_std.cc
	* 21_strings/headers/cwchar
	* 21_strings/headers/cwchar/functions_std.cc
	* 21_strings/headers/cwchar/macros.cc
	* 21_strings/headers/cwchar/types_std.cc
	* 21_strings/headers/cwctype
	* 21_strings/headers/cwctype/functions_std.cc
	* 21_strings/headers/cwctype/macros.cc
	* 21_strings/headers/cwctype/types_std.cc
	* 21_strings/headers/string
	* 21_strings/headers/string/synopsis.cc
	* 21_strings/headers/string/types_std.cc
	* 22_locale/codecvt_byname/requirements
	* 22_locale/codecvt_byname/requirements/base_classes.cc
	* 22_locale/codecvt_byname/requirements/explicit_instantiation.cc
	* 22_locale/codecvt_byname/requirements/typedefs.cc
	* 22_locale/codecvt/requirements
	* 22_locale/codecvt/requirements/base_classes.cc
	* 22_locale/codecvt/requirements/explicit_instantiation.cc
	* 22_locale/codecvt/requirements/typedefs.cc
	* 22_locale/collate_byname/requirements
	* 22_locale/collate_byname/requirements/base_classes.cc
	* 22_locale/collate_byname/requirements/explicit_instantiation.cc
	* 22_locale/collate_byname/requirements/typedefs.cc
	* 22_locale/collate/requirements
	* 22_locale/collate/requirements/base_classes.cc
	* 22_locale/collate/requirements/explicit_instantiation.cc
	* 22_locale/collate/requirements/typedefs.cc
	* 22_locale/ctype_base/mask.cc
	* 22_locale/ctype/requirements
	* 22_locale/ctype/requirements/base_classes.cc
	* 22_locale/ctype/requirements/explicit_instantiation.cc
	* 22_locale/ctype/requirements/typedefs.cc
	* 22_locale/headers
	* 22_locale/headers/clocale
	* 22_locale/headers/clocale/functions_std.cc
	* 22_locale/headers/clocale/macros.cc
	* 22_locale/headers/clocale/types_std.cc
	* 22_locale/headers/locale
	* 22_locale/headers/locale/synopsis.cc
	* 22_locale/headers/locale/types_std.cc
	* 22_locale/messages_byname/requirements
	* 22_locale/messages_byname/requirements/base_classes.cc
	* 22_locale/messages_byname/requirements/explicit_instantiation.cc
	* 22_locale/messages_byname/requirements/typedefs.cc
	* 22_locale/messages/requirements
	* 22_locale/messages/requirements/base_classes.cc
	* 22_locale/messages/requirements/explicit_instantiation.cc
	* 22_locale/messages/requirements/typedefs.cc
	* 22_locale/money_get/cons
	* 22_locale/money_get/cons/3.cc
	* 22_locale/money_get/requirements
	* 22_locale/money_get/requirements/base_classes.cc
	* 22_locale/money_get/requirements/explicit_instantiations.cc
	* 22_locale/money_get/requirements/typedefs.cc
	* 22_locale/moneypunct_byname/requirements
	* 22_locale/moneypunct_byname/requirements/base_classes.cc
	* 22_locale/moneypunct_byname/requirements/explicit_instantiation.cc
	* 22_locale/moneypunct_byname/requirements/typedefs.cc
	* 22_locale/moneypunct/requirements
	* 22_locale/moneypunct/requirements/false
	* 22_locale/moneypunct/requirements/false/base_classes.cc
	* 22_locale/moneypunct/requirements/false/explicit_instantiation.cc
	* 22_locale/moneypunct/requirements/false/intl.cc
	* 22_locale/moneypunct/requirements/false/typedefs.cc
	* 22_locale/moneypunct/requirements/true
	* 22_locale/moneypunct/requirements/true/base_classes.cc
	* 22_locale/moneypunct/requirements/true/explicit_instantiation.cc
	* 22_locale/moneypunct/requirements/true/intl.cc
	* 22_locale/moneypunct/requirements/true/typedefs.cc
	* 22_locale/money_put/cons
	* 22_locale/money_put/cons/3.cc
	* 22_locale/money_put/requirements
	* 22_locale/money_put/requirements/base_classes.cc
	* 22_locale/money_put/requirements/explicit_instantiation.cc
	* 22_locale/money_put/requirements/typedefs.cc
	* 22_locale/num_get/cons
	* 22_locale/num_get/cons/3.cc
	* 22_locale/num_get/requirements
	* 22_locale/num_get/requirements/base_classes.cc
	* 22_locale/num_get/requirements/explicit_instantiation.cc
	* 22_locale/num_get/requirements/typedefs.cc
	* 22_locale/numpunct_byname/requirements
	* 22_locale/numpunct_byname/requirements/base_classes.cc
	* 22_locale/numpunct_byname/requirements/explicit_instantiations.cc
	* 22_locale/numpunct_byname/requirements/typedefs.cc
	* 22_locale/numpunct/requirements
	* 22_locale/numpunct/requirements/base_classes.cc
	* 22_locale/numpunct/requirements/explicit_instantiations.cc
	* 22_locale/numpunct/requirements/typedefs.cc
	* 22_locale/num_put/cons
	* 22_locale/num_put/cons/3.cc
	* 22_locale/num_put/requirements
	* 22_locale/num_put/requirements/base_classes.cc
	* 22_locale/num_put/requirements/explicit_instantiations.cc
	* 22_locale/num_put/requirements/typedefs.cc
	* 22_locale/time_get/requirements
	* 22_locale/time_get/requirements/base_classes.cc
	* 22_locale/time_get/requirements/explicit_instantiations.cc
	* 22_locale/time_get/requirements/typedefs.cc
	* 22_locale/time_put/requirements
	* 22_locale/time_put/requirements/base_classes.cc
	* 22_locale/time_put/requirements/explicit_instantiations.cc
	* 22_locale/time_put/requirements/typedefs.cc
	* 23_containers/bitset/requirements
	* 23_containers/bitset/requirements/explicit_instantiation
	* 23_containers/bitset/requirements/explicit_instantiation/1.cc
	* 23_containers/deque/requirements
	* 23_containers/deque/requirements/explicit_instantiation
	* 23_containers/deque/requirements/partial_specialization
	* 23_containers/deque/requirements/partial_specialization/1.cc
	* 23_containers/headers
	* 23_containers/headers/bitset
	* 23_containers/headers/bitset/synopsis.cc
	* 23_containers/headers/deque
	* 23_containers/headers/deque/synopsis.cc
	* 23_containers/headers/list
	* 23_containers/headers/list/synopsis.cc
	* 23_containers/headers/map
	* 23_containers/headers/map/synopsis.cc
	* 23_containers/headers/queue
	* 23_containers/headers/queue/synopsis.cc
	* 23_containers/headers/set
	* 23_containers/headers/set/synopsis.cc
	* 23_containers/headers/stack
	* 23_containers/headers/stack/synopsis.cc
	* 23_containers/headers/vector
	* 23_containers/headers/vector/synopsis.cc
	* 23_containers/list/requirements
	* 23_containers/list/requirements/explicit_instantiation
	* 23_containers/list/requirements/partial_specialization
	* 23_containers/list/requirements/partial_specialization/1.cc
	* 23_containers/map/requirements
	* 23_containers/map/requirements/explicit_instantiation
	* 23_containers/map/requirements/partial_specialization
	* 23_containers/map/requirements/partial_specialization/1.cc
	* 23_containers/multimap/requirements
	* 23_containers/multimap/requirements/explicit_instantiation
	* 23_containers/multimap/requirements/partial_specialization
	* 23_containers/multimap/requirements/partial_specialization/1.cc
	* 23_containers/multiset/requirements
	* 23_containers/multiset/requirements/explicit_instantiation
	* 23_containers/multiset/requirements/partial_specialization
	* 23_containers/multiset/requirements/partial_specialization/1.cc
	* 23_containers/priority_queue/requirements
	* 23_containers/priority_queue/requirements/explicit_instantiation
	* 23_containers/priority_queue/requirements/explicit_instantiation/1.cc
	* 23_containers/queue/requirements
	* 23_containers/queue/requirements/explicit_instantiation
	* 23_containers/queue/requirements/explicit_instantiation/1.cc
	* 23_containers/set/requirements
	* 23_containers/set/requirements/explicit_instantiation
	* 23_containers/set/requirements/partial_specialization
	* 23_containers/set/requirements/partial_specialization/1.cc
	* 23_containers/stack/requirements
	* 23_containers/stack/requirements/explicit_instantiation
	* 23_containers/stack/requirements/explicit_instantiation/1.cc
	* 23_containers/vector/requirements
	* 23_containers/vector/requirements/explicit_instantiation
	* 23_containers/vector/requirements/partial_specialization
	* 23_containers/vector/requirements/partial_specialization/1.cc
	* 24_iterators/back_insert_iterator
	* 24_iterators/back_insert_iterator/2.cc
	* 24_iterators/back_insert_iterator/requirements
	* 24_iterators/back_insert_iterator/requirements/base_classes.cc
	* 24_iterators/back_insert_iterator/requirements/container.cc
	* 24_iterators/back_insert_iterator/requirements/
	explicit_instantiation.cc
	* 24_iterators/back_insert_iterator/requirements/typedefs.cc
	* 24_iterators/front_insert_iterator
	* 24_iterators/front_insert_iterator/2.cc
	* 24_iterators/front_insert_iterator/requirements
	* 24_iterators/front_insert_iterator/requirements/base_classes.cc
	* 24_iterators/front_insert_iterator/requirements/container.cc
	* 24_iterators/front_insert_iterator/requirements/
	explicit_instantiation.cc
	* 24_iterators/front_insert_iterator/requirements/typedefs.cc
	* 24_iterators/headers
	* 24_iterators/headers/iterator
	* 24_iterators/headers/iterator/synopsis.cc
	* 24_iterators/headers/iterator/types_std.cc
	* 24_iterators/insert_iterator
	* 24_iterators/insert_iterator/2.cc
	* 24_iterators/insert_iterator/requirements
	* 24_iterators/insert_iterator/requirements/base_classes.cc
	* 24_iterators/insert_iterator/requirements/container.cc
	* 24_iterators/insert_iterator/requirements/explicit_instantiation.cc
	* 24_iterators/insert_iterator/requirements/typedefs.cc
	* 24_iterators/istreambuf_iterator/requirements
	* 24_iterators/istreambuf_iterator/requirements/base_classes.cc
	* 24_iterators/istreambuf_iterator/requirements/
	explicit_instantiation.cc
	* 24_iterators/istreambuf_iterator/requirements/typedefs.cc
	* 24_iterators/istream_iterator
	* 24_iterators/istream_iterator/2.cc
	* 24_iterators/istream_iterator/requirements
	* 24_iterators/istream_iterator/requirements/base_classes.cc
	* 24_iterators/istream_iterator/requirements/explicit_instantiation.cc
	* 24_iterators/istream_iterator/requirements/typedefs.cc
	* 24_iterators/ostreambuf_iterator/requirements
	* 24_iterators/ostreambuf_iterator/requirements/base_classes.cc
	* 24_iterators/ostreambuf_iterator/requirements/
	explicit_instantiation.cc
	* 24_iterators/ostreambuf_iterator/requirements/typedefs.cc
	* 24_iterators/ostream_iterator
	* 24_iterators/ostream_iterator/requirements
	* 24_iterators/ostream_iterator/requirements/base_classes.cc
	* 24_iterators/ostream_iterator/requirements/explicit_instantiation.cc
	* 24_iterators/ostream_iterator/requirements/typedefs.cc
	* 24_iterators/random_access_iterator
	* 24_iterators/random_access_iterator/26020.cc
	* 24_iterators/random_access_iterator/string_vector_iterators.cc
	* 24_iterators/reverse_iterator/requirements
	* 24_iterators/reverse_iterator/requirements/base_classes.cc
	* 24_iterators/reverse_iterator/requirements/current.cc
	* 24_iterators/reverse_iterator/requirements/explicit_instantiation.cc
	* 24_iterators/reverse_iterator/requirements/typedefs.cc
	* 25_algorithms/headers
	* 25_algorithms/headers/algorithm
	* 25_algorithms/headers/algorithm/synopsis.cc
	* 25_algorithms/headers/cstdlib
	* 25_algorithms/headers/cstdlib/functions_std.cc
	* 26_numerics/headers
	* 26_numerics/headers/cmath
	* 26_numerics/headers/cmath/19322.cc
	* 26_numerics/headers/cmath/c99_classification_macros_c.cc
	* 26_numerics/headers/cmath/c99_classification_macros_c++.cc
	* 26_numerics/headers/cmath/c_math.cc
	* 26_numerics/headers/cmath/c_math_dynamic.cc
	* 26_numerics/headers/cmath/fabs_inline.cc
	* 26_numerics/headers/cmath/functions_std.cc
	* 26_numerics/headers/cmath/macros.cc
	* 26_numerics/headers/cmath/overloads.cc
	* 26_numerics/headers/cmath/powi.cc
	* 26_numerics/headers/complex
	* 26_numerics/headers/complex/synopsis.cc
	* 26_numerics/headers/cstdlib
	* 26_numerics/headers/cstdlib/13943.cc
	* 26_numerics/headers/cstdlib/2190.cc
	* 26_numerics/headers/cstdlib/functions_std.cc
	* 26_numerics/headers/cstdlib/macros.cc
	* 26_numerics/headers/cstdlib/types_std.cc
	* 26_numerics/headers/numeric
	* 26_numerics/headers/numeric/synopsis.cc
	* 26_numerics/headers/valarray
	* 26_numerics/headers/valarray/synopsis.cc
	* 26_numerics/headers/valarray/types_std.cc
	* 26_numerics/numeric_arrays
	* 26_numerics/numeric_operations
	* 27_io/basic_filebuf/cons/2020.cc
	* 27_io/basic_filebuf/requirements
	* 27_io/basic_filebuf/requirements/base_classes.cc
	* 27_io/basic_filebuf/requirements/explicit_instantiation.cc
	* 27_io/basic_filebuf/requirements/typedefs.cc
	* 27_io/basic_fstream/cons
	* 27_io/basic_fstream/cons/3.cc
	* 27_io/basic_fstream/requirements
	* 27_io/basic_fstream/requirements/base_classes.cc
	* 27_io/basic_fstream/requirements/explicit_instantiation.cc
	* 27_io/basic_fstream/requirements/typedefs.cc
	* 27_io/basic_ifstream/cons/2020.cc
	* 27_io/basic_ifstream/requirements
	* 27_io/basic_ifstream/requirements/base_classes.cc
	* 27_io/basic_ifstream/requirements/explicit_instantiation.cc
	* 27_io/basic_ifstream/requirements/typedefs.cc
	* 27_io/basic_ios/cons/2020.cc
	* 27_io/basic_ios/requirements
	* 27_io/basic_ios/requirements/base_classes.cc
	* 27_io/basic_ios/requirements/explicit_instantiation.cc
	* 27_io/basic_ios/requirements/typedefs.cc
	* 27_io/basic_iostream/cons
	* 27_io/basic_iostream/cons/2020.cc
	* 27_io/basic_iostream/requirements
	* 27_io/basic_iostream/requirements/base_classes.cc
	* 27_io/basic_iostream/requirements/explicit_instantiation.cc
	* 27_io/basic_iostream/requirements/typedefs.cc
	* 27_io/basic_istream/cons
	* 27_io/basic_istream/cons/3.cc
	* 27_io/basic_istream/requirements
	* 27_io/basic_istream/requirements/base_classes.cc
	* 27_io/basic_istream/requirements/explicit_instantiation.cc
	* 27_io/basic_istream/requirements/typedefs.cc
	* 27_io/basic_istringstream/cons
	* 27_io/basic_istringstream/cons/2020.cc
	* 27_io/basic_istringstream/requirements
	* 27_io/basic_istringstream/requirements/base_classes.cc
	* 27_io/basic_istringstream/requirements/explicit_instantiation.cc
	* 27_io/basic_istringstream/requirements/typedefs.cc
	* 27_io/basic_ofstream/cons/2020.cc
	* 27_io/basic_ofstream/requirements
	* 27_io/basic_ofstream/requirements/base_classes.cc
	* 27_io/basic_ofstream/requirements/explicit_instantiations.cc
	* 27_io/basic_ofstream/requirements/typedefs.cc
	* 27_io/basic_ostream/cons/2020.cc
	* 27_io/basic_ostream/requirements
	* 27_io/basic_ostream/requirements/base_classes.cc
	* 27_io/basic_ostream/requirements/explicit_instantiation.cc
	* 27_io/basic_ostream/requirements/typedefs.cc
	* 27_io/basic_ostringstream/cons/2020.cc
	* 27_io/basic_ostringstream/requirements
	* 27_io/basic_ostringstream/requirements/base_classes.cc
	* 27_io/basic_ostringstream/requirements/explicit_instantiation.cc
	* 27_io/basic_ostringstream/requirements/typedefs.cc
	* 27_io/basic_streambuf/cons/2020.cc
	* 27_io/basic_streambuf/requirements
	* 27_io/basic_streambuf/requirements/base_classes.cc
	* 27_io/basic_streambuf/requirements/typedefs.cc
	* 27_io/basic_stringbuf/cons/2020.cc
	* 27_io/basic_stringbuf/requirements
	* 27_io/basic_stringbuf/requirements/base_classes.cc
	* 27_io/basic_stringbuf/requirements/explicit_instantiation
	* 27_io/basic_stringbuf/requirements/explicit_instantiation/2.cc
	* 27_io/basic_stringbuf/requirements/explicit_instantiation/4.cc
	* 27_io/basic_stringbuf/requirements/typedefs.cc
	* 27_io/basic_stringstream/cons
	* 27_io/basic_stringstream/cons/2020.cc
	* 27_io/basic_stringstream/requirements
	* 27_io/basic_stringstream/requirements/base_classes.cc
	* 27_io/basic_stringstream/requirements/explicit_instantiation.cc
	* 27_io/basic_stringstream/requirements/typedefs.cc
	* 27_io/fpos/requirements
	* 27_io/fpos/requirements/explicit_instantiation.cc
	* 27_io/headers
	* 27_io/headers/cstdio
	* 27_io/headers/cstdio/functions_std.cc
	* 27_io/headers/cstdio/macros.cc
	* 27_io/headers/cstdio/types_std.cc
	* 27_io/headers/cstdlib
	* 27_io/headers/fstream
	* 27_io/headers/fstream/synopsis.cc
	* 27_io/headers/fstream/types_std.cc
	* 27_io/headers/iomanip
	* 27_io/headers/iomanip/synopsis.cc
	* 27_io/headers/ios
	* 27_io/headers/ios/synopsis.cc
	* 27_io/headers/iostream
	* 27_io/headers/iostream/synopsis.cc
	* 27_io/headers/iostream/types_std.cc
	* 27_io/headers/ios/types_std.cc
	* 27_io/headers/istream
	* 27_io/headers/istream/synopsis.cc
	* 27_io/headers/istream/types_std.cc
	* 27_io/headers/ostream
	* 27_io/headers/ostream/synopsis.cc
	* 27_io/headers/ostream/types_std.cc
	* 27_io/headers/sstream
	* 27_io/headers/sstream/synopsis.cc
	* 27_io/headers/sstream/types_std.cc
	* 27_io/headers/streambuf
	* 27_io/headers/streambuf/synopsis.cc
	* 27_io/headers/streambuf/types_std.cc
	* ext/debug_allocator/explicit_instantiation.cc
	* ext/hash_map/requirements
	* ext/hash_map/requirements/explicit_instantiation.cc
	* ext/hash_set/requirements
	* ext/hash_set/requirements/explicit_instantiation.cc
	* ext/malloc_allocator/explicit_instantiation.cc
	* ext/mt_allocator/explicit_instantiation.cc
	* ext/pool_allocator/explicit_instantiation.cc
	* ext/slist/requirements
	* ext/slist/requirements/explicit_instantiation.cc
	* ext/stdio_filebuf/requirements
	* ext/stdio_filebuf/requirements/explicit_instantiation.cc
	* ext/vstring/requirements
	* ext/vstring/requirements/explicit_instantiation
	* tr1/2_general_utilities/headers
	* tr1/2_general_utilities/headers/functional
	* tr1/2_general_utilities/headers/functional/synopsis.cc
	* tr1/2_general_utilities/headers/memory
	* tr1/2_general_utilities/headers/memory/synopsis.cc
	* tr1/2_general_utilities/headers/memory/types_std_tr1.cc
	* tr1/2_general_utilities/memory/enable_shared_from_this/requirements
	* tr1/2_general_utilities/memory/enable_shared_from_this/
	requirements/explicit_instantiation
	* tr1/2_general_utilities/memory/shared_ptr/requirements
	* tr1/2_general_utilities/memory/shared_ptr/requirements/
	explicit_instantiation
	* tr1/2_general_utilities/memory/weak_ptr/requirements
	* tr1/2_general_utilities/memory/weak_ptr/requirements/
	explicit_instantiation
	* tr1/3_function_objects/headers
	* tr1/3_function_objects/headers/functional
	* tr1/3_function_objects/headers/functional/synopsis.cc
	* tr1/3_function_objects/headers/functional/types_std_tr1.cc
	* tr1/3_function_objects/headers/functional/
	using_namespace_std_tr1_placeholders.cc
	* tr1/4_metaprogramming/headers
	* tr1/4_metaprogramming/headers/type_traits
	* tr1/4_metaprogramming/headers/type_traits/synopsis.cc
	* tr1/4_metaprogramming/headers/type_traits/types_std_tr1.cc
	* tr1/5_numerical_facilities/headers
	* tr1/5_numerical_facilities/headers/random
	* tr1/5_numerical_facilities/headers/random/synopsis.cc
	* tr1/5_numerical_facilities/headers/random/types_std_tr1.cc
	* tr1/5_numerical_facilities/random/discard_block/
	requirements/typedefs.cc
	* tr1/6_containers/array/requirements/explicit_instantiation.cc
	* tr1/6_containers/hash
	* tr1/6_containers/hash/requirements
	* tr1/6_containers/hash/requirements/base_classes.cc
	* tr1/6_containers/hash/requirements/explicit_instantiation.cc
	* tr1/6_containers/headers
	* tr1/6_containers/headers/array
	* tr1/6_containers/headers/array/synopsis.cc
	* tr1/6_containers/headers/functional
	* tr1/6_containers/headers/functional/synopsis.cc
	* tr1/6_containers/headers/tuple
	* tr1/6_containers/headers/tuple/synopsis.cc
	* tr1/6_containers/headers/tuple/types_std_tr1.cc
	* tr1/6_containers/headers/unordered_map
	* tr1/6_containers/headers/unordered_map/synopsis.cc
	* tr1/6_containers/headers/unordered_set
	* tr1/6_containers/headers/unordered_set/synopsis.cc
	* tr1/6_containers/tuple/requirements
	* tr1/6_containers/tuple/requirements/explicit_instantiation.cc
	* tr1/6_containers/unordered_map
	* tr1/6_containers/unordered_map/24064.cc
	* tr1/6_containers/unordered_map/capacity
	* tr1/6_containers/unordered_map/capacity/29134-map.cc
	* tr1/6_containers/unordered_map/erase
	* tr1/6_containers/unordered_map/erase/24061-map.cc
	* tr1/6_containers/unordered_map/find
	* tr1/6_containers/unordered_map/find/map1.cc
	* tr1/6_containers/unordered_map/insert
	* tr1/6_containers/unordered_map/insert/24061-map.cc
	* tr1/6_containers/unordered_map/insert/array_syntax.cc
	* tr1/6_containers/unordered_map/insert/map_range.cc
	* tr1/6_containers/unordered_map/insert/map_single.cc
	* tr1/6_containers/unordered_map/requirements
	* tr1/6_containers/unordered_map/requirements/explicit_instantiation.cc
	* tr1/6_containers/unordered_map/requirements/iterator_neg.cc
	* tr1/6_containers/unordered_map/requirements/iterator_null_neg.cc
	* tr1/6_containers/unordered_map/swap
	* tr1/6_containers/unordered_map/swap/1.cc
	* tr1/6_containers/unordered_map/swap/2.cc
	* tr1/6_containers/unordered_multimap
	* tr1/6_containers/unordered_multimap/capacity
	* tr1/6_containers/unordered_multimap/capacity/29134-multimap.cc
	* tr1/6_containers/unordered_multimap/erase
	* tr1/6_containers/unordered_multimap/erase/24061-multimap.cc
	* tr1/6_containers/unordered_multimap/find
	* tr1/6_containers/unordered_multimap/find/multimap1.cc
	* tr1/6_containers/unordered_multimap/insert
	* tr1/6_containers/unordered_multimap/insert/24061-multimap.cc
	* tr1/6_containers/unordered_multimap/insert/multimap_range.cc
	* tr1/6_containers/unordered_multimap/insert/multimap_single.cc
	* tr1/6_containers/unordered_multimap/requirements
	* tr1/6_containers/unordered_multimap/requirements/
	explicit_instantiation.cc
	* tr1/6_containers/unordered_multimap/requirements/iterator_neg.cc
	* tr1/6_containers/unordered_multimap/requirements/iterator_null_neg.cc
	* tr1/6_containers/unordered_multimap/swap
	* tr1/6_containers/unordered_multimap/swap/1.cc
	* tr1/6_containers/unordered_multimap/swap/2.cc
	* tr1/6_containers/unordered_multiset
	* tr1/6_containers/unordered_multiset/24054.cc
	* tr1/6_containers/unordered_multiset/capacity
	* tr1/6_containers/unordered_multiset/capacity/29134-multiset.cc
	* tr1/6_containers/unordered_multiset/erase
	* tr1/6_containers/unordered_multiset/erase/24061-multiset.cc
	* tr1/6_containers/unordered_multiset/find
	* tr1/6_containers/unordered_multiset/find/multiset1.cc
	* tr1/6_containers/unordered_multiset/insert
	* tr1/6_containers/unordered_multiset/insert/24061-multiset.cc
	* tr1/6_containers/unordered_multiset/insert/multiset_range.cc
	* tr1/6_containers/unordered_multiset/insert/multiset_single.cc
	* tr1/6_containers/unordered_multiset/requirements
	* tr1/6_containers/unordered_multiset/requirements/
	explicit_instantiation.cc
	* tr1/6_containers/unordered_multiset/requirements/iterator_neg.cc
	* tr1/6_containers/unordered_multiset/requirements/iterator_null_neg.cc
	* tr1/6_containers/unordered_multiset/swap
	* tr1/6_containers/unordered_multiset/swap/1.cc
	* tr1/6_containers/unordered_multiset/swap/2.cc
	* tr1/6_containers/unordered_set
	* tr1/6_containers/unordered_set/23053.cc
	* tr1/6_containers/unordered_set/23465.cc
	* tr1/6_containers/unordered_set/26127.cc
	* tr1/6_containers/unordered_set/26132.cc
	* tr1/6_containers/unordered_set/capacity
	* tr1/6_containers/unordered_set/capacity/29134-set.cc
	* tr1/6_containers/unordered_set/erase
	* tr1/6_containers/unordered_set/erase/24061-set.cc
	* tr1/6_containers/unordered_set/find
	* tr1/6_containers/unordered_set/find/set1.cc
	* tr1/6_containers/unordered_set/insert
	* tr1/6_containers/unordered_set/insert/24061-set.cc
	* tr1/6_containers/unordered_set/insert/set_range.cc
	* tr1/6_containers/unordered_set/insert/set_single.cc
	* tr1/6_containers/unordered_set/requirements
	* tr1/6_containers/unordered_set/requirements/explicit_instantiation.cc
	* tr1/6_containers/unordered_set/requirements/iterator_neg.cc
	* tr1/6_containers/unordered_set/requirements/iterator_null_neg.cc
	* tr1/6_containers/unordered_set/requirements/
	iterators_default_constructor.cc
	* tr1/6_containers/unordered_set/swap
	* tr1/6_containers/unordered_set/swap/1.cc
	* tr1/6_containers/unordered_set/swap/2.cc
	* tr1/using_namespace_std_tr1.cc

	Deleted:
	* 17_intro/header_cassert.cc
	* 17_intro/header_cerrno.cc
	* 17_intro/header_csetjmp.cc
	* 17_intro/header_cstdarg.cc
	* 17_intro/header_cstddef.cc
	* 17_intro/header_cstdio.cc
	* 17_intro/header_cstdlib.cc
	* 17_intro/header_cstring.cc
	* 17_intro/header_ctime.cc
	* 17_intro/header_cwchar.cc
	* 17_intro/header_cwctype.cc
	* 17_intro/header_fstream.cc
	* 17_intro/header_iomanip.cc
	* 17_intro/header_ios.cc
	* 17_intro/header_iosfwd.cc
	* 17_intro/header_iostream.cc
	* 17_intro/header_istream.cc
	* 17_intro/header_ostream.cc
	* 17_intro/headers.cc
	* 17_intro/headers_c++_c++0x_compat.cc
	* 17_intro/headers_c.cc
	* 17_intro/headers_c++.cc
	* 17_intro/header_sstream.cc
	* 17_intro/header_streambuf.cc
	* 17_intro/no_assert_neg.cc
	* 18_support/numeric_limits/sign.cc
	* 18_support/numeric_limits/specialization.cc
	* 20_util/memory/raw_storage_iterator.cc
	* 21_strings/basic_string/1.cc
	* 21_strings/basic_string/2.cc
	* 22_locale/codecvt/1.cc
	* 22_locale/codecvt/2.cc
	* 22_locale/codecvt_byname/1.cc
	* 22_locale/collate/1.cc
	* 22_locale/collate/2.cc
	* 22_locale/collate_byname/1.cc
	* 22_locale/ctype/1.cc
	* 22_locale/ctype_base/1.cc
	* 22_locale/messages/1.cc
	* 22_locale/messages/2.cc
	* 22_locale/messages_byname/1.cc
	* 22_locale/money_get/1.cc
	* 22_locale/money_get/2.cc
	* 22_locale/money_get/3.cc
	* 22_locale/moneypunct/1.cc
	* 22_locale/moneypunct/2.cc
	* 22_locale/moneypunct/3.cc
	* 22_locale/moneypunct_byname/1.cc
	* 22_locale/money_put/1.cc
	* 22_locale/money_put/2.cc
	* 22_locale/money_put/3.cc
	* 22_locale/num_get/1.cc
	* 22_locale/num_get/2.cc
	* 22_locale/num_get/3.cc
	* 22_locale/numpunct/1.cc
	* 22_locale/numpunct/2.cc
	* 22_locale/numpunct_byname/1.cc
	* 22_locale/num_put/1.cc
	* 22_locale/num_put/2.cc
	* 22_locale/num_put/3.cc
	* 22_locale/time_get/1.cc
	* 22_locale/time_get/2.cc
	* 22_locale/time_put/1.cc
	* 22_locale/time_put/2.cc
	* 23_containers/deque/1.cc
	* 23_containers/deque/explicit_instantiation
	* 23_containers/deque/explicit_instantiation/1.cc
	* 23_containers/deque/explicit_instantiation/2.cc
	* 23_containers/deque/explicit_instantiation/3.cc
	* 23_containers/list/1.cc
	* 23_containers/list/explicit_instantiation
	* 23_containers/list/explicit_instantiation/1.cc
	* 23_containers/list/explicit_instantiation/2.cc
	* 23_containers/list/explicit_instantiation/3.cc
	* 23_containers/map/1.cc
	* 23_containers/map/explicit_instantiation
	* 23_containers/map/explicit_instantiation/1.cc
	* 23_containers/map/explicit_instantiation/2.cc
	* 23_containers/map/explicit_instantiation/3.cc
	* 23_containers/multimap/1.cc
	* 23_containers/multimap/explicit_instantiation
	* 23_containers/multimap/explicit_instantiation/1.cc
	* 23_containers/multimap/explicit_instantiation/2.cc
	* 23_containers/multimap/explicit_instantiation/3.cc
	* 23_containers/multiset/1.cc
	* 23_containers/multiset/explicit_instantiation
	* 23_containers/multiset/explicit_instantiation/1.cc
	* 23_containers/multiset/explicit_instantiation/2.cc
	* 23_containers/multiset/explicit_instantiation/3.cc
	* 23_containers/set/1.cc
	* 23_containers/set/explicit_instantiation
	* 23_containers/set/explicit_instantiation/1.cc
	* 23_containers/set/explicit_instantiation/2.cc
	* 23_containers/set/explicit_instantiation/3.cc
	* 23_containers/vector/1.cc
	* 23_containers/vector/explicit_instantiation
	* 23_containers/vector/explicit_instantiation/1.cc
	* 23_containers/vector/explicit_instantiation/2.cc
	* 23_containers/vector/explicit_instantiation/3.cc
	* 24_iterators/26020.cc
	* 24_iterators/back_insert_iterator.cc
	* 24_iterators/front_insert_iterator.cc
	* 24_iterators/insert_iterator.cc
	* 24_iterators/istreambuf_iterator/1.cc
	* 24_iterators/istream_iterator.cc
	* 24_iterators/iterator.cc
	* 24_iterators/ostreambuf_iterator/1.cc
	* 24_iterators/ostream_iterator.cc
	* 24_iterators/reverse_iterator/1.cc
	* 26_numerics/cmath
	* 26_numerics/cmath/19322.cc
	* 26_numerics/cmath/c99_classification_macros_c.cc
	* 26_numerics/cmath/c99_classification_macros_c++.cc
	* 26_numerics/cmath/c_math.cc
	* 26_numerics/cmath/c_math_dynamic.cc
	* 26_numerics/cmath/fabs_inline.cc
	* 26_numerics/cmath/overloads.cc
	* 26_numerics/cmath/powi.cc
	* 26_numerics/cstdlib
	* 26_numerics/cstdlib/13943.cc
	* 26_numerics/numeric
	* 26_numerics/numeric/sum_diff.cc
	* 26_numerics/valarray
	* 26_numerics/valarray/27867.cc
	* 26_numerics/valarray/28277.cc
	* 26_numerics/valarray/30416.cc
	* 26_numerics/valarray/binary_closure.cc
	* 26_numerics/valarray/dr543.cc
	* 26_numerics/valarray/slice_array_assignment.cc
	* 26_numerics/valarray/slice.cc
	* 26_numerics/valarray/valarray.cc
	* 26_numerics/valarray/valarray_const_bracket.cc
	* 26_numerics/valarray/valarray_name_lookup.cc
	* 26_numerics/valarray/valarray_operators.cc
	* 26_numerics/valarray/valarray_subset_assignment.cc
	* 27_io/basic_filebuf/1.cc
	* 27_io/basic_filebuf/2.cc
	* 27_io/basic_filebuf/3.cc
	* 27_io/basic_filebuf/4.cc
	* 27_io/basic_fstream/1.cc
	* 27_io/basic_fstream/2.cc
	* 27_io/basic_fstream/3.cc
	* 27_io/basic_fstream/4.cc
	* 27_io/basic_ifstream/1.cc
	* 27_io/basic_ifstream/2.cc
	* 27_io/basic_ifstream/3.cc
	* 27_io/basic_ifstream/4.cc
	* 27_io/basic_ios/1.cc
	* 27_io/basic_ios/2.cc
	* 27_io/basic_ios/3.cc
	* 27_io/basic_ios/4.cc
	* 27_io/basic_iostream/1.cc
	* 27_io/basic_iostream/2.cc
	* 27_io/basic_iostream/3.cc
	* 27_io/basic_iostream/4.cc
	* 27_io/basic_istream/1.cc
	* 27_io/basic_istream/2.cc
	* 27_io/basic_istream/3.cc
	* 27_io/basic_istream/4.cc
	* 27_io/basic_istringstream/1.cc
	* 27_io/basic_istringstream/2.cc
	* 27_io/basic_istringstream/3.cc
	* 27_io/basic_istringstream/4.cc
	* 27_io/basic_ofstream/1.cc
	* 27_io/basic_ofstream/2.cc
	* 27_io/basic_ofstream/3.cc
	* 27_io/basic_ofstream/4.cc
	* 27_io/basic_ostream/1.cc
	* 27_io/basic_ostream/2.cc
	* 27_io/basic_ostream/3.cc
	* 27_io/basic_ostream/4.cc
	* 27_io/basic_ostringstream/1.cc
	* 27_io/basic_ostringstream/2.cc
	* 27_io/basic_ostringstream/3.cc
	* 27_io/basic_ostringstream/4.cc
	* 27_io/basic_streambuf/1.cc
	* 27_io/basic_streambuf/2.cc
	* 27_io/basic_streambuf/3.cc
	* 27_io/basic_stringbuf/1.cc
	* 27_io/basic_stringbuf/2.cc
	* 27_io/basic_stringbuf/3.cc
	* 27_io/basic_stringbuf/4.cc
	* 27_io/basic_stringbuf/5.cc
	* 27_io/basic_stringstream/1.cc
	* 27_io/basic_stringstream/2.cc
	* 27_io/basic_stringstream/3.cc
	* 27_io/basic_stringstream/4.cc
	* 27_io/fpos/1.cc
	* ext/debug_allocator/instantiate.cc
	* ext/hash_map/instantiate.cc
	* ext/hash_set/instantiate.cc
	* ext/malloc_allocator/instantiate.cc
	* ext/mt_allocator/instantiate.cc
	* ext/pool_allocator/instantiate.cc
	* ext/slist/instantiate.cc
	* ext/stdio_filebuf/char/1.cc
	* ext/vstring/explicit_instantiation
	* ext/vstring/explicit_instantiation/1.cc
	* ext/vstring/explicit_instantiation/2.cc
	* ext/vstring/explicit_instantiation/char
	* ext/vstring/explicit_instantiation/char/1.cc
	* ext/vstring/explicit_instantiation/wchar_t
	* ext/vstring/explicit_instantiation/wchar_t/1.cc
	* tr1/2_general_utilities/memory/enable_shared_from_this/
	explicit_instantiation
	* tr1/2_general_utilities/memory/enable_shared_from_this/
	explicit_instantiation/1.cc
	* tr1/2_general_utilities/memory/shared_ptr/explicit_instantiation
	* tr1/2_general_utilities/memory/shared_ptr/explicit_instantiation/1.cc
	* tr1/2_general_utilities/memory/weak_ptr/explicit_instantiation
	* tr1/2_general_utilities/memory/weak_ptr/explicit_instantiation/1.cc
	* tr1/5_numerical_facilities/random/discard_block/requirements/
	requirements.cc
	* tr1/6_containers/array/requirements/instantiate.cc
	* tr1/6_containers/unordered
	* tr1/6_containers/unordered/23781.cc
	* tr1/6_containers/unordered/capacity
	* tr1/6_containers/unordered/capacity/29134-map.cc
	* tr1/6_containers/unordered/capacity/29134-multimap.cc
	* tr1/6_containers/unordered/capacity/29134-multiset.cc
	* tr1/6_containers/unordered/capacity/29134-set.cc
	* tr1/6_containers/unordered/erase
	* tr1/6_containers/unordered/erase/24061-map.cc
	* tr1/6_containers/unordered/erase/24061-multimap.cc
	* tr1/6_containers/unordered/erase/24061-multiset.cc
	* tr1/6_containers/unordered/erase/24061-set.cc
	* tr1/6_containers/unordered/find
	* tr1/6_containers/unordered/find/map1.cc
	* tr1/6_containers/unordered/find/multimap1.cc
	* tr1/6_containers/unordered/find/multiset1.cc
	* tr1/6_containers/unordered/find/set1.cc
	* tr1/6_containers/unordered/hash
	* tr1/6_containers/unordered/hash/24799.cc
	* tr1/6_containers/unordered/hashtable
	* tr1/6_containers/unordered/hashtable/23053.cc
	* tr1/6_containers/unordered/hashtable/23465.cc
	* tr1/6_containers/unordered/hashtable/24054.cc
	* tr1/6_containers/unordered/hashtable/24064.cc
	* tr1/6_containers/unordered/hashtable/26127.cc
	* tr1/6_containers/unordered/hashtable/26132.cc
	* tr1/6_containers/unordered/hashtable/iterators_default_constructor.cc
	* tr1/6_containers/unordered/insert
	* tr1/6_containers/unordered/insert/24061-map.cc
	* tr1/6_containers/unordered/insert/24061-multimap.cc
	* tr1/6_containers/unordered/insert/24061-multiset.cc
	* tr1/6_containers/unordered/insert/24061-set.cc
	* tr1/6_containers/unordered/insert/array_syntax.cc
	* tr1/6_containers/unordered/insert/map_range.cc
	* tr1/6_containers/unordered/insert/map_single.cc
	* tr1/6_containers/unordered/insert/multimap_range.cc
	* tr1/6_containers/unordered/insert/multimap_single.cc
	* tr1/6_containers/unordered/insert/multiset_range.cc
	* tr1/6_containers/unordered/insert/multiset_single.cc
	* tr1/6_containers/unordered/insert/set_range.cc
	* tr1/6_containers/unordered/insert/set_single.cc
	* tr1/6_containers/unordered/instantiate
	* tr1/6_containers/unordered/instantiate/hash.cc
	* tr1/6_containers/unordered/instantiate/map.cc
	* tr1/6_containers/unordered/instantiate/multimap.cc
	* tr1/6_containers/unordered/instantiate/multiset.cc
	* tr1/6_containers/unordered/instantiate/set.cc
	* tr1/6_containers/unordered/swap
	* tr1/6_containers/unordered/swap/unordered_map
	* tr1/6_containers/unordered/swap/unordered_map/1.cc
	* tr1/6_containers/unordered/swap/unordered_map/2.cc
	* tr1/6_containers/unordered/swap/unordered_multimap
	* tr1/6_containers/unordered/swap/unordered_multimap/1.cc
	* tr1/6_containers/unordered/swap/unordered_multimap/2.cc
	* tr1/6_containers/unordered/swap/unordered_multiset
	* tr1/6_containers/unordered/swap/unordered_multiset/1.cc
	* tr1/6_containers/unordered/swap/unordered_multiset/2.cc
	* tr1/6_containers/unordered/swap/unordered_set
	* tr1/6_containers/unordered/swap/unordered_set/1.cc
	* tr1/6_containers/unordered/swap/unordered_set/2.cc
	* tr1/6_containers/unordered/types
	* tr1/6_containers/unordered/types/map_iterator.cc
	* tr1/6_containers/unordered/types/multimap_iterator.cc
	* tr1/6_containers/unordered/types/multiset_iterator.cc
	* tr1/6_containers/unordered/types/set_iterator.cc

	* 24_iterators/reverse_iterator/2.cc: To just one
	non-requirements test.
	* ext/headers.cc: Add new includes.
	
2007-02-18  Paolo Carlini  <pcarlini@suse.de>

	PR libstdc++/28080 (partial)
	* include/bits/stl_algobase.h: Do not include <climits>, use
	std::numeric_limits.
	* include/bits/stl_bvector.h: Use __CHAR_BIT__.
	* config/locale/gnu/codecvt_members.cc: Include <climits>.
	* config/locale/generic/codecvt_members.cc: Likewise.
	* include/std/string: Do not include <algorithm>; do not include
	<memory>, include <bits/allocator.h> instead.
	* include/ext/vstring_fwd.h: Likewise.
	* include/ext/vstring_util.h: Do not include <algorithm>.
	* include/tr1/hashtable_policy.h: Include <algorithm>.
	* testsuite/21_strings/basic_string/replace/char/1.cc: Likewise.
	* testsuite/21_strings/basic_string/replace/wchar_t/1.cc: Likewise.
	* testsuite/23_containers/bitset/cons/1.cc: Likewise.
	* testsuite/util/testsuite_character.h: Likewise.

	* config/locale/gnu/codecvt_members.cc: Also include <cstdlib>,
	for MB_CUR_MAX.
	* config/locale/generic/codecvt_members.cc: Likewise.

From-SVN: r122168
This commit is contained in:
Benjamin Kosnik 2007-02-20 18:15:01 +00:00 committed by Benjamin Kosnik
parent 32ec65429c
commit a024740df4
417 changed files with 8574 additions and 1181 deletions

View File

@ -1,3 +1,900 @@
2007-02-20 Benjamin Kosnik <bkoz@redhat.com>
Revamp library API testing.
Added:
* 17_intro/headers
* 17_intro/headers/all_assert_neg.cc
* 17_intro/headers/all_c++200x_compatibility.cc
* 17_intro/headers/all.cc
* 17_intro/headers/c++1998
* 17_intro/headers/c++1998/all.cc
* 17_intro/headers/c++1998/all_multiple_inclusion.cc
* 17_intro/headers/c++1998/c++_for_c.tar
* 17_intro/headers/c++1998/c++.tar
* 17_intro/using_namespace_std.cc
* 18_support/headers
* 18_support/headers/cfloat
* 18_support/headers/cfloat/values.cc
* 18_support/headers/climits
* 18_support/headers/climits/values.cc
* 18_support/headers/csetjmp
* 18_support/headers/csetjmp/functions_std.cc
* 18_support/headers/csetjmp/macros.cc
* 18_support/headers/csetjmp/types_std.cc
* 18_support/headers/csignal
* 18_support/headers/csignal/functions_std.cc
* 18_support/headers/csignal/macros.cc
* 18_support/headers/csignal/types_std.cc
* 18_support/headers/cstdarg
* 18_support/headers/cstdarg/macros.cc
* 18_support/headers/cstdarg/types_std.cc
* 18_support/headers/cstddef
* 18_support/headers/cstddef/macros.cc
* 18_support/headers/cstddef/types_std.cc
* 18_support/headers/cstdlib
* 18_support/headers/cstdlib/functions_std.cc
* 18_support/headers/cstdlib/macros.cc
* 18_support/headers/ctime
* 18_support/headers/ctime/functions_std.cc
* 18_support/headers/ctime/macros.cc
* 18_support/headers/ctime/types_std.cc
* 18_support/headers/exception
* 18_support/headers/exception/synopsis.cc
* 18_support/headers/exception/types_std.cc
* 18_support/headers/limits
* 18_support/headers/limits/synopsis.cc
* 18_support/headers/new
* 18_support/headers/new/synopsis.cc
* 18_support/headers/new/types_std.cc
* 18_support/headers/typeinfo
* 18_support/headers/typeinfo/synopsis.cc
* 18_support/headers/typeinfo/types_std.cc
* 18_support/numeric_limits/is_signed.cc
* 18_support/numeric_limits/requirements
* 18_support/numeric_limits/requirements/explicit_instantiation
* 18_support/numeric_limits/requirements/explicit_instantiation/1.cc
* 18_support/numeric_limits/specialization_default_values.cc
* 19_diagnostics/headers
* 19_diagnostics/headers/cassert
* 19_diagnostics/headers/cassert/macros.cc
* 19_diagnostics/headers/cerrno
* 19_diagnostics/headers/cerrno/macros.cc
* 19_diagnostics/headers/stdexcept
* 19_diagnostics/headers/stdexcept/synopsis.cc
* 19_diagnostics/headers/stdexcept/types_std.cc
* 20_util/headers
* 20_util/headers/cstdlib
* 20_util/headers/cstdlib/functions_std.cc
* 20_util/headers/cstring
* 20_util/headers/cstring/functions_std.cc
* 20_util/headers/cstring/macros.cc
* 20_util/headers/cstring/types_std.cc
* 20_util/headers/ctime
* 20_util/headers/ctime/functions_std.cc
* 20_util/headers/ctime/macros.cc
* 20_util/headers/ctime/types_std.cc
* 20_util/headers/functional
* 20_util/headers/functional/synopsis.cc
* 20_util/headers/memory
* 20_util/headers/memory/synopsis.cc
* 20_util/headers/utility
* 20_util/headers/utility/synopsis.cc
* 20_util/headers/utility/using_namespace_std_rel_ops.cc
* 20_util/memory/allocator/requirements
* 20_util/memory/allocator/requirements/explicit_instantiation
* 20_util/memory/allocator/requirements/explicit_instantiation/1.cc
* 20_util/memory/auto_ptr/requirements
* 20_util/memory/auto_ptr/requirements/explicit_instantiation
* 20_util/memory/auto_ptr/requirements/explicit_instantiation/1.cc
* 20_util/memory/raw_storage_iterator
* 20_util/memory/raw_storage_iterator/requirements
* 20_util/memory/raw_storage_iterator/requirements/base_classes.cc
* 20_util/memory/raw_storage_iterator/requirements/
explicit_instantiation
* 20_util/memory/raw_storage_iterator/requirements/
explicit_instantiation/1.cc
* 20_util/memory/raw_storage_iterator/requirements/typedefs.cc
* 20_util/utility/pair/requirements
* 20_util/utility/pair/requirements/explicit_instantiation
* 20_util/utility/pair/requirements/explicit_instantiation/1.cc
* 21_strings/basic_string/requirements
* 21_strings/basic_string/requirements/explicit_instantiation
* 21_strings/basic_string/requirements/explicit_instantiation/1.cc
* 21_strings/basic_string/requirements/explicit_instantiation/debug.cc
* 21_strings/headers
* 21_strings/headers/cctype
* 21_strings/headers/cctype/functions_std.cc
* 21_strings/headers/cstdlib
* 21_strings/headers/cstdlib/functions_std.cc
* 21_strings/headers/cstdlib/macros.cc
* 21_strings/headers/cstring
* 21_strings/headers/cstring/functions_std.cc
* 21_strings/headers/cstring/macros.cc
* 21_strings/headers/cstring/types_std.cc
* 21_strings/headers/cwchar
* 21_strings/headers/cwchar/functions_std.cc
* 21_strings/headers/cwchar/macros.cc
* 21_strings/headers/cwchar/types_std.cc
* 21_strings/headers/cwctype
* 21_strings/headers/cwctype/functions_std.cc
* 21_strings/headers/cwctype/macros.cc
* 21_strings/headers/cwctype/types_std.cc
* 21_strings/headers/string
* 21_strings/headers/string/synopsis.cc
* 21_strings/headers/string/types_std.cc
* 22_locale/codecvt_byname/requirements
* 22_locale/codecvt_byname/requirements/base_classes.cc
* 22_locale/codecvt_byname/requirements/explicit_instantiation.cc
* 22_locale/codecvt_byname/requirements/typedefs.cc
* 22_locale/codecvt/requirements
* 22_locale/codecvt/requirements/base_classes.cc
* 22_locale/codecvt/requirements/explicit_instantiation.cc
* 22_locale/codecvt/requirements/typedefs.cc
* 22_locale/collate_byname/requirements
* 22_locale/collate_byname/requirements/base_classes.cc
* 22_locale/collate_byname/requirements/explicit_instantiation.cc
* 22_locale/collate_byname/requirements/typedefs.cc
* 22_locale/collate/requirements
* 22_locale/collate/requirements/base_classes.cc
* 22_locale/collate/requirements/explicit_instantiation.cc
* 22_locale/collate/requirements/typedefs.cc
* 22_locale/ctype_base/mask.cc
* 22_locale/ctype/requirements
* 22_locale/ctype/requirements/base_classes.cc
* 22_locale/ctype/requirements/explicit_instantiation.cc
* 22_locale/ctype/requirements/typedefs.cc
* 22_locale/headers
* 22_locale/headers/clocale
* 22_locale/headers/clocale/functions_std.cc
* 22_locale/headers/clocale/macros.cc
* 22_locale/headers/clocale/types_std.cc
* 22_locale/headers/locale
* 22_locale/headers/locale/synopsis.cc
* 22_locale/headers/locale/types_std.cc
* 22_locale/messages_byname/requirements
* 22_locale/messages_byname/requirements/base_classes.cc
* 22_locale/messages_byname/requirements/explicit_instantiation.cc
* 22_locale/messages_byname/requirements/typedefs.cc
* 22_locale/messages/requirements
* 22_locale/messages/requirements/base_classes.cc
* 22_locale/messages/requirements/explicit_instantiation.cc
* 22_locale/messages/requirements/typedefs.cc
* 22_locale/money_get/cons
* 22_locale/money_get/cons/3.cc
* 22_locale/money_get/requirements
* 22_locale/money_get/requirements/base_classes.cc
* 22_locale/money_get/requirements/explicit_instantiations.cc
* 22_locale/money_get/requirements/typedefs.cc
* 22_locale/moneypunct_byname/requirements
* 22_locale/moneypunct_byname/requirements/base_classes.cc
* 22_locale/moneypunct_byname/requirements/explicit_instantiation.cc
* 22_locale/moneypunct_byname/requirements/typedefs.cc
* 22_locale/moneypunct/requirements
* 22_locale/moneypunct/requirements/false
* 22_locale/moneypunct/requirements/false/base_classes.cc
* 22_locale/moneypunct/requirements/false/explicit_instantiation.cc
* 22_locale/moneypunct/requirements/false/intl.cc
* 22_locale/moneypunct/requirements/false/typedefs.cc
* 22_locale/moneypunct/requirements/true
* 22_locale/moneypunct/requirements/true/base_classes.cc
* 22_locale/moneypunct/requirements/true/explicit_instantiation.cc
* 22_locale/moneypunct/requirements/true/intl.cc
* 22_locale/moneypunct/requirements/true/typedefs.cc
* 22_locale/money_put/cons
* 22_locale/money_put/cons/3.cc
* 22_locale/money_put/requirements
* 22_locale/money_put/requirements/base_classes.cc
* 22_locale/money_put/requirements/explicit_instantiation.cc
* 22_locale/money_put/requirements/typedefs.cc
* 22_locale/num_get/cons
* 22_locale/num_get/cons/3.cc
* 22_locale/num_get/requirements
* 22_locale/num_get/requirements/base_classes.cc
* 22_locale/num_get/requirements/explicit_instantiation.cc
* 22_locale/num_get/requirements/typedefs.cc
* 22_locale/numpunct_byname/requirements
* 22_locale/numpunct_byname/requirements/base_classes.cc
* 22_locale/numpunct_byname/requirements/explicit_instantiations.cc
* 22_locale/numpunct_byname/requirements/typedefs.cc
* 22_locale/numpunct/requirements
* 22_locale/numpunct/requirements/base_classes.cc
* 22_locale/numpunct/requirements/explicit_instantiations.cc
* 22_locale/numpunct/requirements/typedefs.cc
* 22_locale/num_put/cons
* 22_locale/num_put/cons/3.cc
* 22_locale/num_put/requirements
* 22_locale/num_put/requirements/base_classes.cc
* 22_locale/num_put/requirements/explicit_instantiations.cc
* 22_locale/num_put/requirements/typedefs.cc
* 22_locale/time_get/requirements
* 22_locale/time_get/requirements/base_classes.cc
* 22_locale/time_get/requirements/explicit_instantiations.cc
* 22_locale/time_get/requirements/typedefs.cc
* 22_locale/time_put/requirements
* 22_locale/time_put/requirements/base_classes.cc
* 22_locale/time_put/requirements/explicit_instantiations.cc
* 22_locale/time_put/requirements/typedefs.cc
* 23_containers/bitset/requirements
* 23_containers/bitset/requirements/explicit_instantiation
* 23_containers/bitset/requirements/explicit_instantiation/1.cc
* 23_containers/deque/requirements
* 23_containers/deque/requirements/explicit_instantiation
* 23_containers/deque/requirements/partial_specialization
* 23_containers/deque/requirements/partial_specialization/1.cc
* 23_containers/headers
* 23_containers/headers/bitset
* 23_containers/headers/bitset/synopsis.cc
* 23_containers/headers/deque
* 23_containers/headers/deque/synopsis.cc
* 23_containers/headers/list
* 23_containers/headers/list/synopsis.cc
* 23_containers/headers/map
* 23_containers/headers/map/synopsis.cc
* 23_containers/headers/queue
* 23_containers/headers/queue/synopsis.cc
* 23_containers/headers/set
* 23_containers/headers/set/synopsis.cc
* 23_containers/headers/stack
* 23_containers/headers/stack/synopsis.cc
* 23_containers/headers/vector
* 23_containers/headers/vector/synopsis.cc
* 23_containers/list/requirements
* 23_containers/list/requirements/explicit_instantiation
* 23_containers/list/requirements/partial_specialization
* 23_containers/list/requirements/partial_specialization/1.cc
* 23_containers/map/requirements
* 23_containers/map/requirements/explicit_instantiation
* 23_containers/map/requirements/partial_specialization
* 23_containers/map/requirements/partial_specialization/1.cc
* 23_containers/multimap/requirements
* 23_containers/multimap/requirements/explicit_instantiation
* 23_containers/multimap/requirements/partial_specialization
* 23_containers/multimap/requirements/partial_specialization/1.cc
* 23_containers/multiset/requirements
* 23_containers/multiset/requirements/explicit_instantiation
* 23_containers/multiset/requirements/partial_specialization
* 23_containers/multiset/requirements/partial_specialization/1.cc
* 23_containers/priority_queue/requirements
* 23_containers/priority_queue/requirements/explicit_instantiation
* 23_containers/priority_queue/requirements/explicit_instantiation/1.cc
* 23_containers/queue/requirements
* 23_containers/queue/requirements/explicit_instantiation
* 23_containers/queue/requirements/explicit_instantiation/1.cc
* 23_containers/set/requirements
* 23_containers/set/requirements/explicit_instantiation
* 23_containers/set/requirements/partial_specialization
* 23_containers/set/requirements/partial_specialization/1.cc
* 23_containers/stack/requirements
* 23_containers/stack/requirements/explicit_instantiation
* 23_containers/stack/requirements/explicit_instantiation/1.cc
* 23_containers/vector/requirements
* 23_containers/vector/requirements/explicit_instantiation
* 23_containers/vector/requirements/partial_specialization
* 23_containers/vector/requirements/partial_specialization/1.cc
* 24_iterators/back_insert_iterator
* 24_iterators/back_insert_iterator/2.cc
* 24_iterators/back_insert_iterator/requirements
* 24_iterators/back_insert_iterator/requirements/base_classes.cc
* 24_iterators/back_insert_iterator/requirements/container.cc
* 24_iterators/back_insert_iterator/requirements/
explicit_instantiation.cc
* 24_iterators/back_insert_iterator/requirements/typedefs.cc
* 24_iterators/front_insert_iterator
* 24_iterators/front_insert_iterator/2.cc
* 24_iterators/front_insert_iterator/requirements
* 24_iterators/front_insert_iterator/requirements/base_classes.cc
* 24_iterators/front_insert_iterator/requirements/container.cc
* 24_iterators/front_insert_iterator/requirements/
explicit_instantiation.cc
* 24_iterators/front_insert_iterator/requirements/typedefs.cc
* 24_iterators/headers
* 24_iterators/headers/iterator
* 24_iterators/headers/iterator/synopsis.cc
* 24_iterators/headers/iterator/types_std.cc
* 24_iterators/insert_iterator
* 24_iterators/insert_iterator/2.cc
* 24_iterators/insert_iterator/requirements
* 24_iterators/insert_iterator/requirements/base_classes.cc
* 24_iterators/insert_iterator/requirements/container.cc
* 24_iterators/insert_iterator/requirements/explicit_instantiation.cc
* 24_iterators/insert_iterator/requirements/typedefs.cc
* 24_iterators/istreambuf_iterator/requirements
* 24_iterators/istreambuf_iterator/requirements/base_classes.cc
* 24_iterators/istreambuf_iterator/requirements/
explicit_instantiation.cc
* 24_iterators/istreambuf_iterator/requirements/typedefs.cc
* 24_iterators/istream_iterator
* 24_iterators/istream_iterator/2.cc
* 24_iterators/istream_iterator/requirements
* 24_iterators/istream_iterator/requirements/base_classes.cc
* 24_iterators/istream_iterator/requirements/explicit_instantiation.cc
* 24_iterators/istream_iterator/requirements/typedefs.cc
* 24_iterators/ostreambuf_iterator/requirements
* 24_iterators/ostreambuf_iterator/requirements/base_classes.cc
* 24_iterators/ostreambuf_iterator/requirements/
explicit_instantiation.cc
* 24_iterators/ostreambuf_iterator/requirements/typedefs.cc
* 24_iterators/ostream_iterator
* 24_iterators/ostream_iterator/requirements
* 24_iterators/ostream_iterator/requirements/base_classes.cc
* 24_iterators/ostream_iterator/requirements/explicit_instantiation.cc
* 24_iterators/ostream_iterator/requirements/typedefs.cc
* 24_iterators/random_access_iterator
* 24_iterators/random_access_iterator/26020.cc
* 24_iterators/random_access_iterator/string_vector_iterators.cc
* 24_iterators/reverse_iterator/requirements
* 24_iterators/reverse_iterator/requirements/base_classes.cc
* 24_iterators/reverse_iterator/requirements/current.cc
* 24_iterators/reverse_iterator/requirements/explicit_instantiation.cc
* 24_iterators/reverse_iterator/requirements/typedefs.cc
* 25_algorithms/headers
* 25_algorithms/headers/algorithm
* 25_algorithms/headers/algorithm/synopsis.cc
* 25_algorithms/headers/cstdlib
* 25_algorithms/headers/cstdlib/functions_std.cc
* 26_numerics/headers
* 26_numerics/headers/cmath
* 26_numerics/headers/cmath/19322.cc
* 26_numerics/headers/cmath/c99_classification_macros_c.cc
* 26_numerics/headers/cmath/c99_classification_macros_c++.cc
* 26_numerics/headers/cmath/c_math.cc
* 26_numerics/headers/cmath/c_math_dynamic.cc
* 26_numerics/headers/cmath/fabs_inline.cc
* 26_numerics/headers/cmath/functions_std.cc
* 26_numerics/headers/cmath/macros.cc
* 26_numerics/headers/cmath/overloads.cc
* 26_numerics/headers/cmath/powi.cc
* 26_numerics/headers/complex
* 26_numerics/headers/complex/synopsis.cc
* 26_numerics/headers/cstdlib
* 26_numerics/headers/cstdlib/13943.cc
* 26_numerics/headers/cstdlib/2190.cc
* 26_numerics/headers/cstdlib/functions_std.cc
* 26_numerics/headers/cstdlib/macros.cc
* 26_numerics/headers/cstdlib/types_std.cc
* 26_numerics/headers/numeric
* 26_numerics/headers/numeric/synopsis.cc
* 26_numerics/headers/valarray
* 26_numerics/headers/valarray/synopsis.cc
* 26_numerics/headers/valarray/types_std.cc
* 26_numerics/numeric_arrays
* 26_numerics/numeric_operations
* 27_io/basic_filebuf/cons/2020.cc
* 27_io/basic_filebuf/requirements
* 27_io/basic_filebuf/requirements/base_classes.cc
* 27_io/basic_filebuf/requirements/explicit_instantiation.cc
* 27_io/basic_filebuf/requirements/typedefs.cc
* 27_io/basic_fstream/cons
* 27_io/basic_fstream/cons/3.cc
* 27_io/basic_fstream/requirements
* 27_io/basic_fstream/requirements/base_classes.cc
* 27_io/basic_fstream/requirements/explicit_instantiation.cc
* 27_io/basic_fstream/requirements/typedefs.cc
* 27_io/basic_ifstream/cons/2020.cc
* 27_io/basic_ifstream/requirements
* 27_io/basic_ifstream/requirements/base_classes.cc
* 27_io/basic_ifstream/requirements/explicit_instantiation.cc
* 27_io/basic_ifstream/requirements/typedefs.cc
* 27_io/basic_ios/cons/2020.cc
* 27_io/basic_ios/requirements
* 27_io/basic_ios/requirements/base_classes.cc
* 27_io/basic_ios/requirements/explicit_instantiation.cc
* 27_io/basic_ios/requirements/typedefs.cc
* 27_io/basic_iostream/cons
* 27_io/basic_iostream/cons/2020.cc
* 27_io/basic_iostream/requirements
* 27_io/basic_iostream/requirements/base_classes.cc
* 27_io/basic_iostream/requirements/explicit_instantiation.cc
* 27_io/basic_iostream/requirements/typedefs.cc
* 27_io/basic_istream/cons
* 27_io/basic_istream/cons/3.cc
* 27_io/basic_istream/requirements
* 27_io/basic_istream/requirements/base_classes.cc
* 27_io/basic_istream/requirements/explicit_instantiation.cc
* 27_io/basic_istream/requirements/typedefs.cc
* 27_io/basic_istringstream/cons
* 27_io/basic_istringstream/cons/2020.cc
* 27_io/basic_istringstream/requirements
* 27_io/basic_istringstream/requirements/base_classes.cc
* 27_io/basic_istringstream/requirements/explicit_instantiation.cc
* 27_io/basic_istringstream/requirements/typedefs.cc
* 27_io/basic_ofstream/cons/2020.cc
* 27_io/basic_ofstream/requirements
* 27_io/basic_ofstream/requirements/base_classes.cc
* 27_io/basic_ofstream/requirements/explicit_instantiations.cc
* 27_io/basic_ofstream/requirements/typedefs.cc
* 27_io/basic_ostream/cons/2020.cc
* 27_io/basic_ostream/requirements
* 27_io/basic_ostream/requirements/base_classes.cc
* 27_io/basic_ostream/requirements/explicit_instantiation.cc
* 27_io/basic_ostream/requirements/typedefs.cc
* 27_io/basic_ostringstream/cons/2020.cc
* 27_io/basic_ostringstream/requirements
* 27_io/basic_ostringstream/requirements/base_classes.cc
* 27_io/basic_ostringstream/requirements/explicit_instantiation.cc
* 27_io/basic_ostringstream/requirements/typedefs.cc
* 27_io/basic_streambuf/cons/2020.cc
* 27_io/basic_streambuf/requirements
* 27_io/basic_streambuf/requirements/base_classes.cc
* 27_io/basic_streambuf/requirements/typedefs.cc
* 27_io/basic_stringbuf/cons/2020.cc
* 27_io/basic_stringbuf/requirements
* 27_io/basic_stringbuf/requirements/base_classes.cc
* 27_io/basic_stringbuf/requirements/explicit_instantiation
* 27_io/basic_stringbuf/requirements/explicit_instantiation/2.cc
* 27_io/basic_stringbuf/requirements/explicit_instantiation/4.cc
* 27_io/basic_stringbuf/requirements/typedefs.cc
* 27_io/basic_stringstream/cons
* 27_io/basic_stringstream/cons/2020.cc
* 27_io/basic_stringstream/requirements
* 27_io/basic_stringstream/requirements/base_classes.cc
* 27_io/basic_stringstream/requirements/explicit_instantiation.cc
* 27_io/basic_stringstream/requirements/typedefs.cc
* 27_io/fpos/requirements
* 27_io/fpos/requirements/explicit_instantiation.cc
* 27_io/headers
* 27_io/headers/cstdio
* 27_io/headers/cstdio/functions_std.cc
* 27_io/headers/cstdio/macros.cc
* 27_io/headers/cstdio/types_std.cc
* 27_io/headers/cstdlib
* 27_io/headers/fstream
* 27_io/headers/fstream/synopsis.cc
* 27_io/headers/fstream/types_std.cc
* 27_io/headers/iomanip
* 27_io/headers/iomanip/synopsis.cc
* 27_io/headers/ios
* 27_io/headers/ios/synopsis.cc
* 27_io/headers/iostream
* 27_io/headers/iostream/synopsis.cc
* 27_io/headers/iostream/types_std.cc
* 27_io/headers/ios/types_std.cc
* 27_io/headers/istream
* 27_io/headers/istream/synopsis.cc
* 27_io/headers/istream/types_std.cc
* 27_io/headers/ostream
* 27_io/headers/ostream/synopsis.cc
* 27_io/headers/ostream/types_std.cc
* 27_io/headers/sstream
* 27_io/headers/sstream/synopsis.cc
* 27_io/headers/sstream/types_std.cc
* 27_io/headers/streambuf
* 27_io/headers/streambuf/synopsis.cc
* 27_io/headers/streambuf/types_std.cc
* ext/debug_allocator/explicit_instantiation.cc
* ext/hash_map/requirements
* ext/hash_map/requirements/explicit_instantiation.cc
* ext/hash_set/requirements
* ext/hash_set/requirements/explicit_instantiation.cc
* ext/malloc_allocator/explicit_instantiation.cc
* ext/mt_allocator/explicit_instantiation.cc
* ext/pool_allocator/explicit_instantiation.cc
* ext/slist/requirements
* ext/slist/requirements/explicit_instantiation.cc
* ext/stdio_filebuf/requirements
* ext/stdio_filebuf/requirements/explicit_instantiation.cc
* ext/vstring/requirements
* ext/vstring/requirements/explicit_instantiation
* tr1/2_general_utilities/headers
* tr1/2_general_utilities/headers/functional
* tr1/2_general_utilities/headers/functional/synopsis.cc
* tr1/2_general_utilities/headers/memory
* tr1/2_general_utilities/headers/memory/synopsis.cc
* tr1/2_general_utilities/headers/memory/types_std_tr1.cc
* tr1/2_general_utilities/memory/enable_shared_from_this/requirements
* tr1/2_general_utilities/memory/enable_shared_from_this/
requirements/explicit_instantiation
* tr1/2_general_utilities/memory/shared_ptr/requirements
* tr1/2_general_utilities/memory/shared_ptr/requirements/
explicit_instantiation
* tr1/2_general_utilities/memory/weak_ptr/requirements
* tr1/2_general_utilities/memory/weak_ptr/requirements/
explicit_instantiation
* tr1/3_function_objects/headers
* tr1/3_function_objects/headers/functional
* tr1/3_function_objects/headers/functional/synopsis.cc
* tr1/3_function_objects/headers/functional/types_std_tr1.cc
* tr1/3_function_objects/headers/functional/
using_namespace_std_tr1_placeholders.cc
* tr1/4_metaprogramming/headers
* tr1/4_metaprogramming/headers/type_traits
* tr1/4_metaprogramming/headers/type_traits/synopsis.cc
* tr1/4_metaprogramming/headers/type_traits/types_std_tr1.cc
* tr1/5_numerical_facilities/headers
* tr1/5_numerical_facilities/headers/random
* tr1/5_numerical_facilities/headers/random/synopsis.cc
* tr1/5_numerical_facilities/headers/random/types_std_tr1.cc
* tr1/5_numerical_facilities/random/discard_block/
requirements/typedefs.cc
* tr1/6_containers/array/requirements/explicit_instantiation.cc
* tr1/6_containers/hash
* tr1/6_containers/hash/requirements
* tr1/6_containers/hash/requirements/base_classes.cc
* tr1/6_containers/hash/requirements/explicit_instantiation.cc
* tr1/6_containers/headers
* tr1/6_containers/headers/array
* tr1/6_containers/headers/array/synopsis.cc
* tr1/6_containers/headers/functional
* tr1/6_containers/headers/functional/synopsis.cc
* tr1/6_containers/headers/tuple
* tr1/6_containers/headers/tuple/synopsis.cc
* tr1/6_containers/headers/tuple/types_std_tr1.cc
* tr1/6_containers/headers/unordered_map
* tr1/6_containers/headers/unordered_map/synopsis.cc
* tr1/6_containers/headers/unordered_set
* tr1/6_containers/headers/unordered_set/synopsis.cc
* tr1/6_containers/tuple/requirements
* tr1/6_containers/tuple/requirements/explicit_instantiation.cc
* tr1/6_containers/unordered_map
* tr1/6_containers/unordered_map/24064.cc
* tr1/6_containers/unordered_map/capacity
* tr1/6_containers/unordered_map/capacity/29134-map.cc
* tr1/6_containers/unordered_map/erase
* tr1/6_containers/unordered_map/erase/24061-map.cc
* tr1/6_containers/unordered_map/find
* tr1/6_containers/unordered_map/find/map1.cc
* tr1/6_containers/unordered_map/insert
* tr1/6_containers/unordered_map/insert/24061-map.cc
* tr1/6_containers/unordered_map/insert/array_syntax.cc
* tr1/6_containers/unordered_map/insert/map_range.cc
* tr1/6_containers/unordered_map/insert/map_single.cc
* tr1/6_containers/unordered_map/requirements
* tr1/6_containers/unordered_map/requirements/explicit_instantiation.cc
* tr1/6_containers/unordered_map/requirements/iterator_neg.cc
* tr1/6_containers/unordered_map/requirements/iterator_null_neg.cc
* tr1/6_containers/unordered_map/swap
* tr1/6_containers/unordered_map/swap/1.cc
* tr1/6_containers/unordered_map/swap/2.cc
* tr1/6_containers/unordered_multimap
* tr1/6_containers/unordered_multimap/capacity
* tr1/6_containers/unordered_multimap/capacity/29134-multimap.cc
* tr1/6_containers/unordered_multimap/erase
* tr1/6_containers/unordered_multimap/erase/24061-multimap.cc
* tr1/6_containers/unordered_multimap/find
* tr1/6_containers/unordered_multimap/find/multimap1.cc
* tr1/6_containers/unordered_multimap/insert
* tr1/6_containers/unordered_multimap/insert/24061-multimap.cc
* tr1/6_containers/unordered_multimap/insert/multimap_range.cc
* tr1/6_containers/unordered_multimap/insert/multimap_single.cc
* tr1/6_containers/unordered_multimap/requirements
* tr1/6_containers/unordered_multimap/requirements/
explicit_instantiation.cc
* tr1/6_containers/unordered_multimap/requirements/iterator_neg.cc
* tr1/6_containers/unordered_multimap/requirements/iterator_null_neg.cc
* tr1/6_containers/unordered_multimap/swap
* tr1/6_containers/unordered_multimap/swap/1.cc
* tr1/6_containers/unordered_multimap/swap/2.cc
* tr1/6_containers/unordered_multiset
* tr1/6_containers/unordered_multiset/24054.cc
* tr1/6_containers/unordered_multiset/capacity
* tr1/6_containers/unordered_multiset/capacity/29134-multiset.cc
* tr1/6_containers/unordered_multiset/erase
* tr1/6_containers/unordered_multiset/erase/24061-multiset.cc
* tr1/6_containers/unordered_multiset/find
* tr1/6_containers/unordered_multiset/find/multiset1.cc
* tr1/6_containers/unordered_multiset/insert
* tr1/6_containers/unordered_multiset/insert/24061-multiset.cc
* tr1/6_containers/unordered_multiset/insert/multiset_range.cc
* tr1/6_containers/unordered_multiset/insert/multiset_single.cc
* tr1/6_containers/unordered_multiset/requirements
* tr1/6_containers/unordered_multiset/requirements/
explicit_instantiation.cc
* tr1/6_containers/unordered_multiset/requirements/iterator_neg.cc
* tr1/6_containers/unordered_multiset/requirements/iterator_null_neg.cc
* tr1/6_containers/unordered_multiset/swap
* tr1/6_containers/unordered_multiset/swap/1.cc
* tr1/6_containers/unordered_multiset/swap/2.cc
* tr1/6_containers/unordered_set
* tr1/6_containers/unordered_set/23053.cc
* tr1/6_containers/unordered_set/23465.cc
* tr1/6_containers/unordered_set/26127.cc
* tr1/6_containers/unordered_set/26132.cc
* tr1/6_containers/unordered_set/capacity
* tr1/6_containers/unordered_set/capacity/29134-set.cc
* tr1/6_containers/unordered_set/erase
* tr1/6_containers/unordered_set/erase/24061-set.cc
* tr1/6_containers/unordered_set/find
* tr1/6_containers/unordered_set/find/set1.cc
* tr1/6_containers/unordered_set/insert
* tr1/6_containers/unordered_set/insert/24061-set.cc
* tr1/6_containers/unordered_set/insert/set_range.cc
* tr1/6_containers/unordered_set/insert/set_single.cc
* tr1/6_containers/unordered_set/requirements
* tr1/6_containers/unordered_set/requirements/explicit_instantiation.cc
* tr1/6_containers/unordered_set/requirements/iterator_neg.cc
* tr1/6_containers/unordered_set/requirements/iterator_null_neg.cc
* tr1/6_containers/unordered_set/requirements/
iterators_default_constructor.cc
* tr1/6_containers/unordered_set/swap
* tr1/6_containers/unordered_set/swap/1.cc
* tr1/6_containers/unordered_set/swap/2.cc
* tr1/using_namespace_std_tr1.cc
Deleted:
* 17_intro/header_cassert.cc
* 17_intro/header_cerrno.cc
* 17_intro/header_csetjmp.cc
* 17_intro/header_cstdarg.cc
* 17_intro/header_cstddef.cc
* 17_intro/header_cstdio.cc
* 17_intro/header_cstdlib.cc
* 17_intro/header_cstring.cc
* 17_intro/header_ctime.cc
* 17_intro/header_cwchar.cc
* 17_intro/header_cwctype.cc
* 17_intro/header_fstream.cc
* 17_intro/header_iomanip.cc
* 17_intro/header_ios.cc
* 17_intro/header_iosfwd.cc
* 17_intro/header_iostream.cc
* 17_intro/header_istream.cc
* 17_intro/header_ostream.cc
* 17_intro/headers.cc
* 17_intro/headers_c++_c++0x_compat.cc
* 17_intro/headers_c.cc
* 17_intro/headers_c++.cc
* 17_intro/header_sstream.cc
* 17_intro/header_streambuf.cc
* 17_intro/no_assert_neg.cc
* 18_support/numeric_limits/sign.cc
* 18_support/numeric_limits/specialization.cc
* 20_util/memory/raw_storage_iterator.cc
* 21_strings/basic_string/1.cc
* 21_strings/basic_string/2.cc
* 22_locale/codecvt/1.cc
* 22_locale/codecvt/2.cc
* 22_locale/codecvt_byname/1.cc
* 22_locale/collate/1.cc
* 22_locale/collate/2.cc
* 22_locale/collate_byname/1.cc
* 22_locale/ctype/1.cc
* 22_locale/ctype_base/1.cc
* 22_locale/messages/1.cc
* 22_locale/messages/2.cc
* 22_locale/messages_byname/1.cc
* 22_locale/money_get/1.cc
* 22_locale/money_get/2.cc
* 22_locale/money_get/3.cc
* 22_locale/moneypunct/1.cc
* 22_locale/moneypunct/2.cc
* 22_locale/moneypunct/3.cc
* 22_locale/moneypunct_byname/1.cc
* 22_locale/money_put/1.cc
* 22_locale/money_put/2.cc
* 22_locale/money_put/3.cc
* 22_locale/num_get/1.cc
* 22_locale/num_get/2.cc
* 22_locale/num_get/3.cc
* 22_locale/numpunct/1.cc
* 22_locale/numpunct/2.cc
* 22_locale/numpunct_byname/1.cc
* 22_locale/num_put/1.cc
* 22_locale/num_put/2.cc
* 22_locale/num_put/3.cc
* 22_locale/time_get/1.cc
* 22_locale/time_get/2.cc
* 22_locale/time_put/1.cc
* 22_locale/time_put/2.cc
* 23_containers/deque/1.cc
* 23_containers/deque/explicit_instantiation
* 23_containers/deque/explicit_instantiation/1.cc
* 23_containers/deque/explicit_instantiation/2.cc
* 23_containers/deque/explicit_instantiation/3.cc
* 23_containers/list/1.cc
* 23_containers/list/explicit_instantiation
* 23_containers/list/explicit_instantiation/1.cc
* 23_containers/list/explicit_instantiation/2.cc
* 23_containers/list/explicit_instantiation/3.cc
* 23_containers/map/1.cc
* 23_containers/map/explicit_instantiation
* 23_containers/map/explicit_instantiation/1.cc
* 23_containers/map/explicit_instantiation/2.cc
* 23_containers/map/explicit_instantiation/3.cc
* 23_containers/multimap/1.cc
* 23_containers/multimap/explicit_instantiation
* 23_containers/multimap/explicit_instantiation/1.cc
* 23_containers/multimap/explicit_instantiation/2.cc
* 23_containers/multimap/explicit_instantiation/3.cc
* 23_containers/multiset/1.cc
* 23_containers/multiset/explicit_instantiation
* 23_containers/multiset/explicit_instantiation/1.cc
* 23_containers/multiset/explicit_instantiation/2.cc
* 23_containers/multiset/explicit_instantiation/3.cc
* 23_containers/set/1.cc
* 23_containers/set/explicit_instantiation
* 23_containers/set/explicit_instantiation/1.cc
* 23_containers/set/explicit_instantiation/2.cc
* 23_containers/set/explicit_instantiation/3.cc
* 23_containers/vector/1.cc
* 23_containers/vector/explicit_instantiation
* 23_containers/vector/explicit_instantiation/1.cc
* 23_containers/vector/explicit_instantiation/2.cc
* 23_containers/vector/explicit_instantiation/3.cc
* 24_iterators/26020.cc
* 24_iterators/back_insert_iterator.cc
* 24_iterators/front_insert_iterator.cc
* 24_iterators/insert_iterator.cc
* 24_iterators/istreambuf_iterator/1.cc
* 24_iterators/istream_iterator.cc
* 24_iterators/iterator.cc
* 24_iterators/ostreambuf_iterator/1.cc
* 24_iterators/ostream_iterator.cc
* 24_iterators/reverse_iterator/1.cc
* 26_numerics/cmath
* 26_numerics/cmath/19322.cc
* 26_numerics/cmath/c99_classification_macros_c.cc
* 26_numerics/cmath/c99_classification_macros_c++.cc
* 26_numerics/cmath/c_math.cc
* 26_numerics/cmath/c_math_dynamic.cc
* 26_numerics/cmath/fabs_inline.cc
* 26_numerics/cmath/overloads.cc
* 26_numerics/cmath/powi.cc
* 26_numerics/cstdlib
* 26_numerics/cstdlib/13943.cc
* 26_numerics/numeric
* 26_numerics/numeric/sum_diff.cc
* 26_numerics/valarray
* 26_numerics/valarray/27867.cc
* 26_numerics/valarray/28277.cc
* 26_numerics/valarray/30416.cc
* 26_numerics/valarray/binary_closure.cc
* 26_numerics/valarray/dr543.cc
* 26_numerics/valarray/slice_array_assignment.cc
* 26_numerics/valarray/slice.cc
* 26_numerics/valarray/valarray.cc
* 26_numerics/valarray/valarray_const_bracket.cc
* 26_numerics/valarray/valarray_name_lookup.cc
* 26_numerics/valarray/valarray_operators.cc
* 26_numerics/valarray/valarray_subset_assignment.cc
* 27_io/basic_filebuf/1.cc
* 27_io/basic_filebuf/2.cc
* 27_io/basic_filebuf/3.cc
* 27_io/basic_filebuf/4.cc
* 27_io/basic_fstream/1.cc
* 27_io/basic_fstream/2.cc
* 27_io/basic_fstream/3.cc
* 27_io/basic_fstream/4.cc
* 27_io/basic_ifstream/1.cc
* 27_io/basic_ifstream/2.cc
* 27_io/basic_ifstream/3.cc
* 27_io/basic_ifstream/4.cc
* 27_io/basic_ios/1.cc
* 27_io/basic_ios/2.cc
* 27_io/basic_ios/3.cc
* 27_io/basic_ios/4.cc
* 27_io/basic_iostream/1.cc
* 27_io/basic_iostream/2.cc
* 27_io/basic_iostream/3.cc
* 27_io/basic_iostream/4.cc
* 27_io/basic_istream/1.cc
* 27_io/basic_istream/2.cc
* 27_io/basic_istream/3.cc
* 27_io/basic_istream/4.cc
* 27_io/basic_istringstream/1.cc
* 27_io/basic_istringstream/2.cc
* 27_io/basic_istringstream/3.cc
* 27_io/basic_istringstream/4.cc
* 27_io/basic_ofstream/1.cc
* 27_io/basic_ofstream/2.cc
* 27_io/basic_ofstream/3.cc
* 27_io/basic_ofstream/4.cc
* 27_io/basic_ostream/1.cc
* 27_io/basic_ostream/2.cc
* 27_io/basic_ostream/3.cc
* 27_io/basic_ostream/4.cc
* 27_io/basic_ostringstream/1.cc
* 27_io/basic_ostringstream/2.cc
* 27_io/basic_ostringstream/3.cc
* 27_io/basic_ostringstream/4.cc
* 27_io/basic_streambuf/1.cc
* 27_io/basic_streambuf/2.cc
* 27_io/basic_streambuf/3.cc
* 27_io/basic_stringbuf/1.cc
* 27_io/basic_stringbuf/2.cc
* 27_io/basic_stringbuf/3.cc
* 27_io/basic_stringbuf/4.cc
* 27_io/basic_stringbuf/5.cc
* 27_io/basic_stringstream/1.cc
* 27_io/basic_stringstream/2.cc
* 27_io/basic_stringstream/3.cc
* 27_io/basic_stringstream/4.cc
* 27_io/fpos/1.cc
* ext/debug_allocator/instantiate.cc
* ext/hash_map/instantiate.cc
* ext/hash_set/instantiate.cc
* ext/malloc_allocator/instantiate.cc
* ext/mt_allocator/instantiate.cc
* ext/pool_allocator/instantiate.cc
* ext/slist/instantiate.cc
* ext/stdio_filebuf/char/1.cc
* ext/vstring/explicit_instantiation
* ext/vstring/explicit_instantiation/1.cc
* ext/vstring/explicit_instantiation/2.cc
* ext/vstring/explicit_instantiation/char
* ext/vstring/explicit_instantiation/char/1.cc
* ext/vstring/explicit_instantiation/wchar_t
* ext/vstring/explicit_instantiation/wchar_t/1.cc
* tr1/2_general_utilities/memory/enable_shared_from_this/
explicit_instantiation
* tr1/2_general_utilities/memory/enable_shared_from_this/
explicit_instantiation/1.cc
* tr1/2_general_utilities/memory/shared_ptr/explicit_instantiation
* tr1/2_general_utilities/memory/shared_ptr/explicit_instantiation/1.cc
* tr1/2_general_utilities/memory/weak_ptr/explicit_instantiation
* tr1/2_general_utilities/memory/weak_ptr/explicit_instantiation/1.cc
* tr1/5_numerical_facilities/random/discard_block/requirements/
requirements.cc
* tr1/6_containers/array/requirements/instantiate.cc
* tr1/6_containers/unordered
* tr1/6_containers/unordered/23781.cc
* tr1/6_containers/unordered/capacity
* tr1/6_containers/unordered/capacity/29134-map.cc
* tr1/6_containers/unordered/capacity/29134-multimap.cc
* tr1/6_containers/unordered/capacity/29134-multiset.cc
* tr1/6_containers/unordered/capacity/29134-set.cc
* tr1/6_containers/unordered/erase
* tr1/6_containers/unordered/erase/24061-map.cc
* tr1/6_containers/unordered/erase/24061-multimap.cc
* tr1/6_containers/unordered/erase/24061-multiset.cc
* tr1/6_containers/unordered/erase/24061-set.cc
* tr1/6_containers/unordered/find
* tr1/6_containers/unordered/find/map1.cc
* tr1/6_containers/unordered/find/multimap1.cc
* tr1/6_containers/unordered/find/multiset1.cc
* tr1/6_containers/unordered/find/set1.cc
* tr1/6_containers/unordered/hash
* tr1/6_containers/unordered/hash/24799.cc
* tr1/6_containers/unordered/hashtable
* tr1/6_containers/unordered/hashtable/23053.cc
* tr1/6_containers/unordered/hashtable/23465.cc
* tr1/6_containers/unordered/hashtable/24054.cc
* tr1/6_containers/unordered/hashtable/24064.cc
* tr1/6_containers/unordered/hashtable/26127.cc
* tr1/6_containers/unordered/hashtable/26132.cc
* tr1/6_containers/unordered/hashtable/iterators_default_constructor.cc
* tr1/6_containers/unordered/insert
* tr1/6_containers/unordered/insert/24061-map.cc
* tr1/6_containers/unordered/insert/24061-multimap.cc
* tr1/6_containers/unordered/insert/24061-multiset.cc
* tr1/6_containers/unordered/insert/24061-set.cc
* tr1/6_containers/unordered/insert/array_syntax.cc
* tr1/6_containers/unordered/insert/map_range.cc
* tr1/6_containers/unordered/insert/map_single.cc
* tr1/6_containers/unordered/insert/multimap_range.cc
* tr1/6_containers/unordered/insert/multimap_single.cc
* tr1/6_containers/unordered/insert/multiset_range.cc
* tr1/6_containers/unordered/insert/multiset_single.cc
* tr1/6_containers/unordered/insert/set_range.cc
* tr1/6_containers/unordered/insert/set_single.cc
* tr1/6_containers/unordered/instantiate
* tr1/6_containers/unordered/instantiate/hash.cc
* tr1/6_containers/unordered/instantiate/map.cc
* tr1/6_containers/unordered/instantiate/multimap.cc
* tr1/6_containers/unordered/instantiate/multiset.cc
* tr1/6_containers/unordered/instantiate/set.cc
* tr1/6_containers/unordered/swap
* tr1/6_containers/unordered/swap/unordered_map
* tr1/6_containers/unordered/swap/unordered_map/1.cc
* tr1/6_containers/unordered/swap/unordered_map/2.cc
* tr1/6_containers/unordered/swap/unordered_multimap
* tr1/6_containers/unordered/swap/unordered_multimap/1.cc
* tr1/6_containers/unordered/swap/unordered_multimap/2.cc
* tr1/6_containers/unordered/swap/unordered_multiset
* tr1/6_containers/unordered/swap/unordered_multiset/1.cc
* tr1/6_containers/unordered/swap/unordered_multiset/2.cc
* tr1/6_containers/unordered/swap/unordered_set
* tr1/6_containers/unordered/swap/unordered_set/1.cc
* tr1/6_containers/unordered/swap/unordered_set/2.cc
* tr1/6_containers/unordered/types
* tr1/6_containers/unordered/types/map_iterator.cc
* tr1/6_containers/unordered/types/multimap_iterator.cc
* tr1/6_containers/unordered/types/multiset_iterator.cc
* tr1/6_containers/unordered/types/set_iterator.cc
* 24_iterators/reverse_iterator/2.cc: To just one
non-requirements test.
* ext/headers.cc: Add new includes.
2007-02-18 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/28080 (partial)

View File

@ -1,54 +0,0 @@
// 2000-01-03 bkoz
// Copyright (C) 2001 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
// 17.4.1.2 Headers, cwctype
#if _GLIBCXX_USE_WCHAR_T
#include <cwctype>
// Make sure wint_t is in namespace std
std::wint_t i = 5;
// Make sure table 46 is in namespace std.
using std::wctype_t;
using std::wctrans_t;
using std::iswalpha;
using std::iswupper;
using std::iswlower;
using std::iswdigit;
using std::iswxdigit;
using std::iswalnum;
using std::iswspace;
using std::iswpunct;
using std::iswprint;
using std::iswgraph;
using std::iswcntrl;
using std::iswctype;
using std::towctrans;
using std::towlower;
using std::towupper;
using std::wctrans;
using std::wctype;
#endif
int main(void)
{
return 0;
}

View File

@ -0,0 +1,145 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
// As a special exception, you may use this file as part of a free software
// library without restriction. Specifically, if other files instantiate
// templates or use macros or inline functions from this file, or you compile
// this file and link it with other files to produce an executable, this
// file does not by itself cause the resulting executable to be covered by
// the GNU General Public License. This exception does not however
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
// Make sure all the includes can be compiled with -Wc++0x-compat
// libstdc++/30571
// C
#include <cassert>
#include <cctype>
#include <cerrno>
#include <cfloat>
#include <ciso646>
#include <climits>
#include <clocale>
#include <cmath>
#include <csetjmp>
#include <csignal>
#include <cstdarg>
#include <cstddef>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <ctime>
// C++
#include <algorithm>
#include <bitset>
#include <complex>
#include <deque>
#include <exception>
#include <fstream>
#include <functional>
#include <iomanip>
#include <ios>
#include <iosfwd>
#include <iostream>
#include <istream>
#include <iterator>
#include <limits>
#include <list>
#include <locale>
#include <map>
#include <memory>
#include <new>
#include <numeric>
#include <ostream>
#include <queue>
#include <set>
#include <sstream>
#include <stack>
#include <stdexcept>
#include <streambuf>
#include <string>
#include <typeinfo>
#include <utility>
#include <valarray>
#include <vector>
// TR1
#include <tr1/array>
#include <tr1/cctype>
#include <tr1/cfenv>
#include <tr1/cfloat>
#include <tr1/cinttypes>
#include <tr1/climits>
#include <tr1/cmath>
#include <tr1/complex>
#include <tr1/cstdarg>
#include <tr1/cstdbool>
#include <tr1/cstdint>
#include <tr1/cstdio>
#include <tr1/cstdlib>
#include <tr1/ctgmath>
#include <tr1/ctime>
#include <tr1/cwchar>
#include <tr1/cwctype>
#include <tr1/functional>
#include <tr1/random>
#include <tr1/tuple>
#include <tr1/unordered_map>
#include <tr1/unordered_set>
#include <tr1/utility>
// Extensions
#include <ext/algorithm>
#include <ext/array_allocator.h>
#include <ext/atomicity.h>
#include <ext/bitmap_allocator.h>
#include <ext/codecvt_specializations.h>
#include <ext/concurrence.h>
#include <ext/debug_allocator.h>
#include <ext/enc_filebuf.h>
#include <ext/functional>
#include <ext/hash_map>
#include <ext/hash_set>
#include <ext/iterator>
#include <ext/malloc_allocator.h>
#include <ext/memory>
#include <ext/mt_allocator.h>
#include <ext/new_allocator.h>
#include <ext/numeric>
#include <ext/pod_char_traits.h>
#include <ext/pool_allocator.h>
#include <ext/rb_tree>
#include <ext/rope>
#include <ext/slist>
#include <ext/stdio_filebuf.h>
#include <ext/stdio_sync_filebuf.h>
#include <ext/throw_allocator.h>
#include <ext/typelist.h>
#include <ext/type_traits.h>
#include <ext/vstring.h>
#include <ext/pb_ds/assoc_container.hpp>
#include <ext/pb_ds/priority_queue.hpp>
#include <ext/pb_ds/exception.hpp>
#include <ext/pb_ds/hash_policy.hpp>
#include <ext/pb_ds/list_update_policy.hpp>
#include <ext/pb_ds/tree_policy.hpp>
#include <ext/pb_ds/trie_policy.hpp>

View File

@ -1,6 +1,7 @@
// { dg-do compile }
// 1999-05-12 bkoz
// Copyright (C) 1999 Free Software Foundation, Inc.
// Copyright (C) 1999, 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -23,6 +24,45 @@
// 17.4.1.2 Headers
// "C" headers
#include <cassert>
#include <cctype>
#include <cerrno>
#include <cfloat>
#include <ciso646>
#include <climits>
#include <clocale>
#include <cmath>
#include <csetjmp>
#include <csignal>
#include <cstdarg>
#include <cstddef>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <ctime>
#include <cwchar>
#include <cwctype>
// "C" compatibility headers
#include <assert.h>
#include <ctype.h>
#include <errno.h>
#include <float.h>
#include <iso646.h>
#include <limits.h>
#include <locale.h>
#include <math.h>
#include <setjmp.h>
#include <signal.h>
#include <stdarg.h>
#include <stddef.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include <wchar.h>
#include <wctype.h>
// "C++" headers
#include <algorithm>
@ -58,29 +98,3 @@
#include <valarray>
#include <vector>
// "C" headers
#include <cassert>
#include <cctype>
#include <cerrno>
#include <cfloat>
#include <ciso646>
#include <climits>
#include <clocale>
#include <cmath>
#include <csetjmp>
#include <csignal>
#include <cstdarg>
#include <cstddef>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <ctime>
// "C" headers that might not work if wchar_t support is disabled.
#include <bits/c++config.h>
#if _GLIBCXX_USE_WCHAR_T
#include <cwchar>
#include <cwctype>
#endif
int main() { return 0; }

View File

@ -0,0 +1,174 @@
// { dg-do compile }
// 1999-05-12 bkoz
// Copyright (C) 1999, 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
// FreeBSD wants warning clean system headers:
// { dg-options "-Wall -Wsystem-headers" { target *-*-freebsd* } }
// 17.4.1.2 Headers
// "C" headers
#include <cassert>
#include <cctype>
#include <cerrno>
#include <cfloat>
#include <ciso646>
#include <climits>
#include <clocale>
#include <cmath>
#include <csetjmp>
#include <csignal>
#include <cstdarg>
#include <cstddef>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <ctime>
#include <cwchar>
#include <cwctype>
// "C" compatibility headers
#include <assert.h>
#include <ctype.h>
#include <errno.h>
#include <float.h>
#include <iso646.h>
#include <limits.h>
#include <locale.h>
#include <math.h>
#include <setjmp.h>
#include <signal.h>
#include <stdarg.h>
#include <stddef.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include <wchar.h>
#include <wctype.h>
// "C++" headers
#include <algorithm>
#include <bitset>
#include <complex>
#include <deque>
#include <exception>
#include <fstream>
#include <functional>
#include <iomanip>
#include <ios>
#include <iosfwd>
#include <iostream>
#include <istream>
#include <iterator>
#include <limits>
#include <list>
#include <locale>
#include <map>
#include <memory>
#include <new>
#include <numeric>
#include <ostream>
#include <queue>
#include <set>
#include <sstream>
#include <stack>
#include <stdexcept>
#include <streambuf>
#include <string>
#include <typeinfo>
#include <utility>
#include <valarray>
#include <vector>
// "C" headers
#include <cassert>
#include <cctype>
#include <cerrno>
#include <cfloat>
#include <ciso646>
#include <climits>
#include <clocale>
#include <cmath>
#include <csetjmp>
#include <csignal>
#include <cstdarg>
#include <cstddef>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <ctime>
#include <cwchar>
#include <cwctype>
// "C" compatibility headers
#include <assert.h>
#include <ctype.h>
#include <errno.h>
#include <float.h>
#include <iso646.h>
#include <limits.h>
#include <locale.h>
#include <math.h>
#include <setjmp.h>
#include <signal.h>
#include <stdarg.h>
#include <stddef.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include <wchar.h>
#include <wctype.h>
// "C++" headers
#include <algorithm>
#include <bitset>
#include <complex>
#include <deque>
#include <exception>
#include <fstream>
#include <functional>
#include <iomanip>
#include <ios>
#include <iosfwd>
#include <iostream>
#include <istream>
#include <iterator>
#include <limits>
#include <list>
#include <locale>
#include <map>
#include <memory>
#include <new>
#include <numeric>
#include <ostream>
#include <queue>
#include <set>
#include <sstream>
#include <stack>
#include <stdexcept>
#include <streambuf>
#include <string>
#include <typeinfo>
#include <utility>
#include <valarray>
#include <vector>

View File

@ -1,84 +0,0 @@
// 2001-01-01 bkoz
// Copyright (C) 2001 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
// 17.4.1.2 Headers
// This file tests C++ inclusion then C inclusion.
// C++ headers
#include <cassert>
#include <cctype>
#include <cerrno>
#include <cfloat>
#include <ciso646>
#include <climits>
#include <clocale>
#include <cmath>
#include <csetjmp>
#include <csignal>
#include <cstdarg>
#include <cstddef>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <ctime>
// "C" headers
#include <assert.h>
#include <ctype.h>
#include <errno.h>
#include <float.h>
#include <iso646.h>
#include <limits.h>
#include <locale.h>
#include <math.h>
#include <setjmp.h>
#include <signal.h>
#include <stdarg.h>
#include <stddef.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
// "C++" headers that might not work if wchar_t support is disabled.
#include <bits/c++config.h>
#if _GLIBCXX_USE_WCHAR_T
#include <cwchar>
#include <cwctype>
#include <wchar.h>
#include <wctype.h>
#endif
// libstdc++/2992
namespace bar
{
int foo(const char *x)
{ return strlen(x); }
};
int main() { return 0; }

View File

@ -1,78 +0,0 @@
// 2000-12-20 bkoz
// Copyright (C) 2000, 2001 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
// 17.4.1.2 Headers
// This file tests C inclusion then C++ inclusion.
// "C" headers
#include <assert.h>
#include <ctype.h>
#include <errno.h>
#include <float.h>
#include <iso646.h>
#include <limits.h>
#include <locale.h>
#include <math.h>
#include <setjmp.h>
#include <signal.h>
#include <stdarg.h>
#include <stddef.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
// C++ headers
#include <cassert>
#include <cctype>
#include <cerrno>
#include <cfloat>
#include <ciso646>
#include <climits>
#include <clocale>
#include <cmath>
#include <csetjmp>
#include <csignal>
#include <cstdarg>
#include <cstddef>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <ctime>
// "C" headers that might not work if wchar_t support is disabled.
#include <bits/c++config.h>
#if _GLIBCXX_USE_WCHAR_T
#include <wchar.h>
#include <wctype.h>
#include <cwchar>
#include <cwctype>
#endif
// libstdc++/2992
namespace bar
{
int foo(const char *x)
{ return strlen(x); }
};
int main() { return 0; }

View File

@ -1,6 +1,6 @@
// 1999-07-01 bkoz
// { dg-do compile }
// Copyright (C) 1999 Free Software Foundation, Inc.
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -18,13 +18,9 @@
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
// 17.4.1.2 Headers, ios
#include <new>
#include <ios>
#include <testsuite_hooks.h>
int main(void)
namespace gnu
{
return 0;
using namespace std;
}

View File

@ -0,0 +1,54 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <cfloat>
namespace gnu
{
double d1 = DBL_DIG;
double d2 = DBL_EPSILON;
double d3 = DBL_MANT_DIG;
double d4 = DBL_MAX;
double d5 = DBL_MAX_10_EXP;
double d6 = DBL_MAX_EXP;
double d7 = DBL_MIN;
double d8 = DBL_MIN_10_EXP;
double d9 = DBL_MIN_EXP;
float f1 = FLT_DIG;
float f2 = FLT_EPSILON;
float f3 = FLT_MANT_DIG;
float f4 = FLT_MAX;
float f5 = FLT_MAX_10_EXP;
float f6 = FLT_MAX_EXP;
float f7 = FLT_MIN;
float f8 = FLT_MIN_10_EXP;
float f9 = FLT_MIN_EXP;
long double ld1 = LDBL_DIG;
long double ld2 = LDBL_EPSILON;
long double ld3 = LDBL_MANT_DIG;
long double ld4 = LDBL_MAX;
long double ld5 = LDBL_MAX_10_EXP;
long double ld6 = LDBL_MAX_EXP;
long double ld7 = LDBL_MIN;
long double ld8 = LDBL_MIN_10_EXP;
long double ld9 = LDBL_MIN_EXP;
}

View File

@ -0,0 +1,53 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <climits>
namespace gnu
{
// char
char c1 = CHAR_BIT;
char c2 = CHAR_MAX;
char c3 = CHAR_MIN;
// int
int i2 = INT_MAX;
int i3 = INT_MIN;
// short
short s2 = SHRT_MAX;
short s3 = SHRT_MIN;
// long
long l2 = LONG_MAX;
long l3 = LONG_MIN;
unsigned long mb = MB_LEN_MAX;
// signed char
signed char sc1 = SCHAR_MIN;
signed char sc2 = SCHAR_MAX;
// unsigned
unsigned int ui = UINT_MAX;
unsigned short us = USHRT_MAX;
unsigned long ul = ULONG_MAX;
}

View File

@ -1,6 +1,6 @@
// 1999-07-01 bkoz
// { dg-do compile }
// Copyright (C) 1999 Free Software Foundation, Inc.
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -18,13 +18,9 @@
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
// 17.4.1.2 Headers, iomanip
#include <csetjmp>
#include <iomanip>
#include <testsuite_hooks.h>
int main(void)
namespace gnu
{
return 0;
using std::longjmp;
}

View File

@ -1,6 +1,6 @@
// 1999-07-01 bkoz
// { dg-do compile }
// Copyright (C) 1999 Free Software Foundation, Inc.
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -18,13 +18,11 @@
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
// 17.4.1.2 Headers, fstream
#include <csetjmp>
#include <fstream>
#include <testsuite_hooks.h>
int main(void)
namespace gnu
{
return 0;
#ifndef setjmp
#error "setjmp_must_be_a_macro"
#endif
}

View File

@ -0,0 +1,26 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <csetjmp>
namespace gnu
{
std::jmp_buf j;
}

View File

@ -0,0 +1,27 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <csignal>
namespace gnu
{
using std::raise;
using std::signal;
}

View File

@ -0,0 +1,56 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <csignal>
namespace gnu
{
#ifndef SIGABRT
#error "SIGABRT_must_be_a_macro"
#endif
#ifndef SIGILL
#error "SIGILL_must_be_a_macro"
#endif
#ifndef SIGSEGV
#error "SIGSEGV_must_be_a_macro"
#endif
#ifndef SIG_DFL
#error "SIG_DFL_must_be_a_macro"
#endif
#ifndef SIGFPE
#error "SIGFPE_must_be_a_macro"
#endif
#ifndef SIGINT
#error "SIGINT_must_be_a_macro"
#endif
#ifndef SIGTERM
#error "SIGTERM_must_be_a_macro"
#endif
#ifndef SIG_ERR
#error "SIG_ERR_must_be_a_macro"
#endif
}

View File

@ -0,0 +1,26 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <csignal>
namespace gnu
{
std::sig_atomic_t s;
}

View File

@ -1,6 +1,6 @@
// 2001-02-06 Benjamin Kosnik <bkoz@redhat.com>
// { dg-do compile }
// Copyright (C) 2001, 2003 Free Software Foundation, Inc.
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -18,29 +18,19 @@
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
// 17.4.1.2 Headers, cstdarg
#include <cstdarg>
namespace gnu
{
void test01()
{
std::va_list __attribute__((unused)) list;
#ifndef va_arg
#error "va_arg_must_be_a_macro"
#endif
#ifndef va_end
#error "va_end_must_be_a_macro"
#endif
#ifndef va_start
#error "va_start_must_be_a_macro"
#endif
}
}
int main()
{
gnu::test01();
return 0;
#ifndef va_end
#error "va_end_must_be_a_macro"
#endif
}

View File

@ -0,0 +1,26 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <cstdarg>
namespace gnu
{
std::va_list v;
}

View File

@ -1,6 +1,7 @@
// { dg-do compile }
// 2001-02-06 Benjamin Kosnik <bkoz@redhat.com>
// Copyright (C) 2001, 2003 Free Software Foundation, Inc.
// Copyright (C) 2001, 2003, 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -18,8 +19,6 @@
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
// 17.4.1.2 Headers, cstddef
#include <cstddef>
namespace gnu
@ -30,6 +29,7 @@ namespace gnu
int j;
};
// offsetof
void test01()
{
std::size_t i __attribute__((unused)) = offsetof(struct test_type, i);
@ -37,10 +37,15 @@ namespace gnu
#error "offsetof_must_be_a_macro"
#endif
}
}
int main()
{
gnu::test01();
return 0;
// NULL
void test02()
{
// Must not be (void*)0
const int j = NULL;
#ifndef NULL
#error "NULL_must_be_a_macro"
#endif
}
}

View File

@ -0,0 +1,27 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <cstddef>
namespace gnu
{
std::size_t s;
std::ptrdiff_t p;
}

View File

@ -0,0 +1,31 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <cstdlib>
namespace gnu
{
using std::abort;
using std::atexit;
using std::exit;
using std::getenv;
using std::system;
}

View File

@ -1,6 +1,7 @@
// { dg-do compile }
// 2001-02-06 Benjamin Kosnik <bkoz@redhat.com>
// Copyright (C) 2001 Free Software Foundation, Inc.
// Copyright (C) 2001, 2003, 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -18,23 +19,15 @@
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
// 17.4.1.2 Headers, cassert
#include <cassert>
#include <cstddef>
namespace gnu
{
void test01()
{
assert (true);
#ifndef assert
#error "assert_must_be_a_macro"
#ifndef EXIT_FAILURE
#error "EXIT_FAILURE_must_be_a_macro"
#endif
#ifndef EXIT_SUCCESS
#error "EXIT_SUCCESS_must_be_a_macro"
#endif
}
}
int main()
{
gnu::test01();
return 0;
}

View File

@ -0,0 +1,26 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <ctime>
namespace gnu
{
using std::clock;
}

View File

@ -0,0 +1,28 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <ctime>
namespace gnu
{
#ifndef CLOCKS_PER_SEC
#error "CLOCKS_PER_SEC_must_be_a_macro"
#endif
}

View File

@ -0,0 +1,26 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <ctime>
namespace gnu
{
std::clock_t c;
}

View File

@ -0,0 +1,36 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <exception>
namespace std {
class exception;
class bad_exception;
typedef void (*unexpected_handler)();
unexpected_handler set_unexpected(unexpected_handler f ) throw();
void unexpected();
typedef void (*terminate_handler)();
terminate_handler set_terminate(terminate_handler f ) throw();
void terminate();
bool uncaught_exception() throw();
}

View File

@ -0,0 +1,27 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <exception>
namespace gnu
{
typedef std::exception t1;
typedef std::bad_exception t2;
}

View File

@ -0,0 +1,48 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <limits>
namespace std {
template<class T> class numeric_limits;
#if 0
enum float_round_style;
enum float_denorm_style;
#endif
template<> class numeric_limits<bool>;
template<> class numeric_limits<char>;
template<> class numeric_limits<signed char>;
template<> class numeric_limits<unsigned char>;
template<> class numeric_limits<wchar_t>;
template<> class numeric_limits<short>;
template<> class numeric_limits<int>;
template<> class numeric_limits<long>;
template<> class numeric_limits<unsigned short>;
template<> class numeric_limits<unsigned int>;
template<> class numeric_limits<unsigned long>;
template<> class numeric_limits<float>;
template<> class numeric_limits<double>;
template<> class numeric_limits<long double>;
}

View File

@ -0,0 +1,43 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <new>
namespace std {
class bad_alloc;
struct nothrow_t;
extern const nothrow_t nothrow;
typedef void (*new_handler)();
new_handler set_new_handler(new_handler new_p) throw();
}
void* operator new(std::size_t size) throw(std::bad_alloc);
void* operator new(std::size_t size, const std::nothrow_t&) throw();
void operator delete(void* ptr) throw();
void operator delete(void* ptr, const std::nothrow_t&) throw();
void* operator new[](std::size_t size) throw(std::bad_alloc);
void* operator new[](std::size_t size, const std::nothrow_t&) throw();
void operator delete[](void* ptr) throw();
void operator delete[](void* ptr, const std::nothrow_t&) throw();
void* operator new (std::size_t size, void* ptr) throw();
void* operator new[](std::size_t size, void* ptr) throw();
void operator delete (void* ptr, void*) throw();
void operator delete[](void* ptr, void*) throw();

View File

@ -0,0 +1,29 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <new>
namespace gnu
{
typedef std::bad_alloc t1;
typedef std::nothrow_t t2;
typedef std::new_handler t3;
}

View File

@ -0,0 +1,27 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <typeinfo>
namespace std {
class type_info;
class bad_cast;
class bad_typeid;
}

View File

@ -0,0 +1,29 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <typeinfo>
namespace gnu
{
typedef std::type_info t1;
typedef std::bad_cast t2;
typedef std::bad_typeid t3;
}

View File

@ -0,0 +1,50 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to
// the Free Software Foundation, 51 Franklin Street, Fifth Floor,
// Boston, MA 02110-1301, USA.
// As a special exception, you may use this file as part of a free software
// library without restriction. Specifically, if other files instantiate
// templates or use macros or inline functions from this file, or you compile
// this file and link it with other files to produce an executable, this
// file does not by itself cause the resulting executable to be covered by
// the GNU General Public License. This exception does not however
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
// This file tests explicit instantiation of library containers.
#include <limits>
template<typename T>
struct A
{
int key;
public:
A(int i = 0): key(i) { }
bool
operator==(int i) { return i == key; }
};
struct B
{
B(int = 0) { }
};
// XXX Should this work for POD types?
template class std::numeric_limits<A<B> >;

View File

@ -0,0 +1,28 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <cassert>
namespace gnu
{
#ifndef assert
#error "assert_must_be_a_macro"
#endif
}

View File

@ -1,6 +1,6 @@
// 2001-02-06 Benjamin Kosnik <bkoz@redhat.com>
// { dg-do compile }
// Copyright (C) 2001, 2003 Free Software Foundation, Inc.
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -18,24 +18,19 @@
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
// 17.4.1.2 Headers, cerrno
#include <cerrno>
#include <cassert>
namespace gnu
{
int test01()
{
int i = errno;
#ifndef EDOM
#error "EDOM_must_be_a_macro"
#endif
#ifndef ERANGE
#error "ERANGE_must_be_a_macro"
#endif
#ifndef errno
#error "errno_must_be_a_macro"
#endif
return i;
}
}
int main()
{
gnu::test01();
return 0;
}

View File

@ -0,0 +1,34 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <stdexcept>
namespace std {
class logic_error;
class domain_error;
class invalid_argument;
class length_error;
class out_of_range;
class runtime_error;
class range_error;
class overflow_error;
class underflow_error;
}

View File

@ -0,0 +1,34 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <stdexcept>
namespace gnu
{
typedef std::logic_error t1;
typedef std::domain_error t2;
typedef std::invalid_argument t3;
typedef std::length_error t4;
typedef std::out_of_range t5;
typedef std::runtime_error t6;
typedef std::range_error t7;
typedef std::overflow_error t8;
typedef std::underflow_error t9;
}

View File

@ -0,0 +1,29 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <cstdlib>
namespace gnu
{
using std::calloc;
using std::malloc;
using std::free;
using std::realloc;
}

View File

@ -0,0 +1,30 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <cstring>
namespace gnu
{
using std::memchr;
using std::memcmp;
using std::memcpy;
using std::memmove;
using std::memset;
}

View File

@ -0,0 +1,28 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <cstring>
namespace gnu
{
#ifndef NULL
#error "NULL_must_be_a_macro"
#endif
}

View File

@ -0,0 +1,26 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <cstring>
namespace gnu
{
std::size_t s;
}

View File

@ -0,0 +1,34 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <ctime>
namespace gnu
{
using std::asctime;
using std::clock;
using std::difftime;
using std::localtime;
using std::strftime;
using std::ctime;
using std::gmtime;
using std::mktime;
using std::time;
}

View File

@ -0,0 +1,28 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <ctime>
namespace gnu
{
#ifndef NULL
#error "NULL_must_be_a_macro"
#endif
}

View File

@ -1,6 +1,6 @@
// 1999-07-01 bkoz
// { dg-do compile }
// Copyright (C) 1999 Free Software Foundation, Inc.
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -18,13 +18,13 @@
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
// 17.4.1.2 Headers, iosfwd
#include <ctime>
#include <iosfwd>
#include <testsuite_hooks.h>
int main(void)
namespace gnu
{
return 0;
std::size_t s;
std::clock_t c;
std::time_t t;
std::tm t2;
}

View File

@ -0,0 +1,101 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <functional>
namespace std {
// lib.base, base:
template <class Arg, class Result> struct unary_function;
template <class Arg1, class Arg2, class Result> struct binary_function;
// lib.arithmetic.operations, arithmetic operations:
template <class T> struct plus;
template <class T> struct minus;
template <class T> struct multiplies;
template <class T> struct divides;
template <class T> struct modulus;
template <class T> struct negate;
// lib.comparisons, comparisons:
template <class T> struct equal_to;
template <class T> struct not_equal_to;
template <class T> struct greater;
template <class T> struct less;
template <class T> struct greater_equal;
template <class T> struct less_equal;
// lib.logical.operations, logical operations:
template <class T> struct logical_and;
template <class T> struct logical_or;
template <class T> struct logical_not;
// lib.negators, negators:
template <class Predicate> struct unary_negate;
template <class Predicate>
unary_negate<Predicate> not1(const Predicate&);
template <class Predicate> struct binary_negate;
template <class Predicate>
binary_negate<Predicate> not2(const Predicate&);
// lib.binders, binders:
template <class Operation> class binder1st;
template <class Operation, class T>
binder1st<Operation> bind1st(const Operation&, const T&);
template <class Operation> class binder2nd;
template <class Operation, class T>
binder2nd<Operation> bind2nd(const Operation&, const T&);
// lib.function.pointer.adaptors, adaptors:
template <class Arg, class Result> class pointer_to_unary_function;
template <class Arg, class Result>
pointer_to_unary_function<Arg,Result> ptr_fun(Result (*)(Arg));
template <class Arg1, class Arg2, class Result>
class pointer_to_binary_function;
template <class Arg1, class Arg2, class Result>
pointer_to_binary_function<Arg1,Arg2,Result>
ptr_fun(Result (*)(Arg1,Arg2));
// lib.member.pointer.adaptors, adaptors:
template<class S, class T> class mem_fun_t;
template<class S, class T, class A> class mem_fun1_t;
template<class S, class T>
mem_fun_t<S,T> mem_fun(S (T::*f)());
template<class S, class T, class A>
mem_fun1_t<S,T,A> mem_fun(S (T::*f)(A));
template<class S, class T> class mem_fun_ref_t;
template<class S, class T, class A> class mem_fun1_ref_t;
template<class S, class T>
mem_fun_ref_t<S,T> mem_fun_ref(S (T::*f)());
template<class S, class T, class A>
mem_fun1_ref_t<S,T,A> mem_fun_ref(S (T::*f)(A));
template <class S, class T> class const_mem_fun_t;
template <class S, class T, class A> class const_mem_fun1_t;
template <class S, class T>
const_mem_fun_t<S,T> mem_fun(S (T::*f)() const);
template <class S, class T, class A>
const_mem_fun1_t<S,T,A> mem_fun(S (T::*f)(A) const);
template <class S, class T> class const_mem_fun_ref_t;
template <class S, class T, class A> class const_mem_fun1_ref_t;
template <class S, class T>
const_mem_fun_ref_t<S,T> mem_fun_ref(S (T::*f)() const);
template <class S, class T, class A>
const_mem_fun1_ref_t<S,T,A> mem_fun_ref(S (T::*f)(A) const);
}

View File

@ -0,0 +1,54 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <memory>
namespace std {
// lib.default.allocator, the default allocator:
template <class T> class allocator;
template <> class allocator<void>;
template <class T, class U>
bool operator==(const allocator<T>&, const allocator<U>&) throw();
template <class T, class U>
bool operator!=(const allocator<T>&, const allocator<U>&) throw();
// lib.storage.iterator, raw storage iterator:
template <class OutputIterator, class T> class raw_storage_iterator;
// lib.temporary.buffer, temporary buffers:
template <class T>
pair<T*,ptrdiff_t> get_temporary_buffer(ptrdiff_t n);
template <class T>
void return_temporary_buffer(T* p);
// lib.specialized.algorithms, specialized algorithms:
template <class InputIterator, class ForwardIterator>
ForwardIterator
uninitialized_copy(InputIterator first, InputIterator last,
ForwardIterator result);
template <class ForwardIterator, class T>
void uninitialized_fill(ForwardIterator first, ForwardIterator last,
const T& x);
template <class ForwardIterator, class Size, class T>
void uninitialized_fill_n(ForwardIterator first, Size n, const T& x);
// lib.auto.ptr, pointers:
template<class X> class auto_ptr;
}

View File

@ -0,0 +1,46 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <utility>
namespace std {
// lib.operators, operators:
namespace rel_ops {
template<class T> bool operator!=(const T&, const T&);
template<class T> bool operator> (const T&, const T&);
template<class T> bool operator<=(const T&, const T&);
template<class T> bool operator>=(const T&, const T&);
}
// lib.pairs, pairs:
template <class T1, class T2> struct pair;
template <class T1, class T2>
bool operator==(const pair<T1,T2>&, const pair<T1,T2>&);
template <class T1, class T2>
bool operator< (const pair<T1,T2>&, const pair<T1,T2>&);
template <class T1, class T2>
bool operator!=(const pair<T1,T2>&, const pair<T1,T2>&);
template <class T1, class T2>
bool operator> (const pair<T1,T2>&, const pair<T1,T2>&);
template <class T1, class T2>
bool operator>=(const pair<T1,T2>&, const pair<T1,T2>&);
template <class T1, class T2>
bool operator<=(const pair<T1,T2>&, const pair<T1,T2>&);
}

View File

@ -0,0 +1,26 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <utility>
namespace gnu
{
using namespace std::rel_ops;
}

View File

@ -0,0 +1,34 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to
// the Free Software Foundation, 51 Franklin Street, Fifth Floor,
// Boston, MA 02110-1301, USA.
// As a special exception, you may use this file as part of a free software
// library without restriction. Specifically, if other files instantiate
// templates or use macros or inline functions from this file, or you compile
// this file and link it with other files to produce an executable, this
// file does not by itself cause the resulting executable to be covered by
// the GNU General Public License. This exception does not however
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
// This file tests explicit instantiation of library containers.
#include <memory>
template class std::allocator<int>;

View File

@ -0,0 +1,34 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to
// the Free Software Foundation, 51 Franklin Street, Fifth Floor,
// Boston, MA 02110-1301, USA.
// As a special exception, you may use this file as part of a free software
// library without restriction. Specifically, if other files instantiate
// templates or use macros or inline functions from this file, or you compile
// this file and link it with other files to produce an executable, this
// file does not by itself cause the resulting executable to be covered by
// the GNU General Public License. This exception does not however
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
// This file tests explicit instantiation of library containers.
#include <memory>
template class std::auto_ptr<int>;

View File

@ -0,0 +1,37 @@
// { dg-do compile }
// 2001-06-18 Benjamin Kosnik <bkoz@redhat.com>
// Copyright (C) 2001, 2003, 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
// 20.4.2 raw storage iterator
#include <memory>
void test01()
{
using namespace std;
// Check for required base class.
long l;
typedef raw_storage_iterator<long*, long> test_iterator;
typedef iterator<output_iterator_tag, void, void, void, void> base_iterator;
test_iterator rs_it(&l);
base_iterator* base __attribute__((unused)) = &rs_it;
}

View File

@ -0,0 +1,34 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to
// the Free Software Foundation, 51 Franklin Street, Fifth Floor,
// Boston, MA 02110-1301, USA.
// As a special exception, you may use this file as part of a free software
// library without restriction. Specifically, if other files instantiate
// templates or use macros or inline functions from this file, or you compile
// this file and link it with other files to produce an executable, this
// file does not by itself cause the resulting executable to be covered by
// the GNU General Public License. This exception does not however
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
// This file tests explicit instantiation of library containers.
#include <memory>
template class std::raw_storage_iterator<int*, int>;

View File

@ -1,6 +1,7 @@
// { dg-do compile }
// 2001-06-18 Benjamin Kosnik <bkoz@redhat.com>
// Copyright (C) 2001, 2003 Free Software Foundation, Inc.
// Copyright (C) 2001, 2003, 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -26,23 +27,12 @@ void test01()
{
using namespace std;
// Check for required base class.
// Check for required typedefs
long l;
typedef raw_storage_iterator<long*, long> test_iterator;
typedef iterator<output_iterator_tag, void, void, void, void> base_iterator;
test_iterator rs_it(&l);
base_iterator* base __attribute__((unused)) = &rs_it;
// Check for required typedefs
typedef test_iterator::value_type value_type;
typedef test_iterator::difference_type difference_type;
typedef test_iterator::pointer pointer;
typedef test_iterator::reference reference;
typedef test_iterator::iterator_category iteratory_category;
}
int main()
{
test01();
return 0;
}

View File

@ -0,0 +1,34 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to
// the Free Software Foundation, 51 Franklin Street, Fifth Floor,
// Boston, MA 02110-1301, USA.
// As a special exception, you may use this file as part of a free software
// library without restriction. Specifically, if other files instantiate
// templates or use macros or inline functions from this file, or you compile
// this file and link it with other files to produce an executable, this
// file does not by itself cause the resulting executable to be covered by
// the GNU General Public License. This exception does not however
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
// This file tests explicit instantiation of library containers.
#include <utility>
template class std::pair<int, long>;

View File

@ -0,0 +1,38 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <cctype>
namespace gnu
{
using std::isalnum;
using std::isdigit;
using std::isprint;
using std::isupper;
using std::tolower;
using std::isalpha;
using std::isgraph;
using std::ispunct;
using std::isxdigit;
using std::toupper;
using std::iscntrl;
using std::islower;
using std::isspace;
}

View File

@ -0,0 +1,36 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <cstdlib>
namespace gnu
{
using std::atol;
using std::atof;
using std::atoi;
using std::mblen;
using std::mbstowcs;
using std::mbtowc;
using std::strtod;
using std::strtol;
using std::strtoul;
using std::wctomb;
using std::wcstombs;
}

View File

@ -0,0 +1,28 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <cstring>
namespace gnu
{
#ifndef NULL
#error "NULL_must_be_a_macro"
#endif
}

View File

@ -0,0 +1,47 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <cstring>
namespace gnu
{
using std::memchr;
using std::memcmp;
using std::memcpy;
using std::memmove;
using std::memset;
using std::strcat;
using std::strchr;
using std::strcmp;
using std::strcoll;
using std::strcpy;
using std::strcspn;
using std::strerror;
using std::strlen;
using std::strncat;
using std::strncmp;
using std::strncpy;
using std::strpbrk;
using std::strrchr;
using std::strspn;
using std::strstr;
using std::strtok;
using std::strxfrm;
}

View File

@ -0,0 +1,28 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <cstring>
namespace gnu
{
#ifndef NULL
#error "NULL_must_be_a_macro"
#endif
}

View File

@ -0,0 +1,26 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <cstring>
namespace gnu
{
std::size_t s;
}

View File

@ -0,0 +1,77 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <cwchar>
namespace gnu
{
using std::btowc;
using std::fgetwc;
using std::fgetws;
using std::fputwc;
using std::fputws;
using std::fwide;
using std::fwprintf;
using std::fwscanf;
using std::getwc;
using std::getwchar;
using std::mbrlen;
using std::mbrtowc;
using std::mbsinit;
using std::mbsrtowcs;
using std::putwc;
using std::putwchar;
using std::swprintf;
using std::swscanf;
using std::ungetwc;
using std::vfwprintf;
using std::vswprintf;
using std::vwprintf;
using std::wcrtomb;
using std::wcscat;
using std::wcschr;
using std::wcscmp;
using std::wcscoll;
using std::wcscpy;
using std::wcscmp;
using std::wcsftime;
using std::wcslen;
using std::wcsncat;
using std::wcsncmp;
using std::wcsncpy;
using std::wcspbrk;
using std::wcsrchr;
using std::wcsrtombs;
using std::wcsspn;
using std::wcsstr;
using std::wcstod;
using std::wcstok;
using std::wcstol;
using std::wcstoul;
using std::wcsxfrm;
using std::wctob;
using std::wmemchr;
using std::wmemcmp;
using std::wmemcpy;
using std::wmemmove;
using std::wmemset;
using std::wprintf;
using std::wscanf;
}

View File

@ -1,6 +1,6 @@
// 2001-02-06 Benjamin Kosnik <bkoz@redhat.com>
// { dg-do compile }
// Copyright (C) 2001, 2003 Free Software Foundation, Inc.
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -18,24 +18,23 @@
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
// 17.4.1.2 Headers, csetjmp
#include <csetjmp>
#include <cwchar>
namespace gnu
{
void test01()
{
std::jmp_buf env;
int i __attribute__((unused)) = setjmp(env);
#ifndef setjmp
#error "setjmp_must_be_a_macro"
#ifndef NULL
#error "NULL_must_be_a_macro"
#endif
#ifndef WCHAR_MAX
#error "WCHAR_MAX_must_be_a_macro"
#endif
#ifndef WCHAR_MIN
#error "WCHAR_MIN_must_be_a_macro"
#endif
#ifndef WEOF
#error "WEOF_must_be_a_macro"
#endif
}
}
int main()
{
gnu::test01();
return 0;
}

View File

@ -0,0 +1,28 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <cwchar>
namespace gnu
{
std::mbstate_t mb;
std::wint_t wt;
std::size_t s;
}

View File

@ -0,0 +1,40 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <cwctype>
namespace gnu
{
using std::iswalnum;
using std::iswdigit;
using std::iswprint;
using std::iswupper;
using std::iswalpha;
using std::iswgraph;
using std::iswpunct;
using std::iswxdigit;
using std::iswspace;
using std::iswcntrl;
using std::towlower;
using std::towupper;
using std::towctrans;
using std::wctrans;
using std::wctype;
}

View File

@ -0,0 +1,28 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <cwctype>
namespace gnu
{
#ifndef WEOF
#error "WEOF_must_be_a_macro"
#endif
}

View File

@ -0,0 +1,28 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <cwctype>
namespace gnu
{
std::wctrans_t wt;
std::wctype_t wct;
std::wint_t wint;
}

View File

@ -0,0 +1,135 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <string>
namespace std {
// lib.char.traits, character traits:
template<class charT>
struct char_traits;
template <> struct char_traits<char>;
template <> struct char_traits<wchar_t>;
// lib.basic.string, basic_string:
template<class charT, class traits, class Allocator >
class basic_string;
template<class charT, class traits, class Allocator>
basic_string<charT,traits,Allocator>
operator+(const basic_string<charT,traits,Allocator>& lhs,
const basic_string<charT,traits,Allocator>& rhs);
template<class charT, class traits, class Allocator>
basic_string<charT,traits,Allocator>
operator+(const charT* lhs,
const basic_string<charT,traits,Allocator>& rhs);
template<class charT, class traits, class Allocator>
basic_string<charT,traits,Allocator>
operator+(charT lhs, const basic_string<charT,traits,Allocator>& rhs);
template<class charT, class traits, class Allocator>
basic_string<charT,traits,Allocator>
operator+(const basic_string<charT,traits,Allocator>& lhs,
const charT* rhs);
template<class charT, class traits, class Allocator>
basic_string<charT,traits,Allocator>
operator+(const basic_string<charT,traits,Allocator>& lhs, charT rhs);
template<class charT, class traits, class Allocator>
bool operator==(const basic_string<charT,traits,Allocator>& lhs,
const basic_string<charT,traits,Allocator>& rhs);
template<class charT, class traits, class Allocator>
bool operator==(const charT* lhs,
const basic_string<charT,traits,Allocator>& rhs);
template<class charT, class traits, class Allocator>
bool operator==(const basic_string<charT,traits,Allocator>& lhs,
const charT* rhs);
template<class charT, class traits, class Allocator>
bool operator!=(const basic_string<charT,traits,Allocator>& lhs,
const basic_string<charT,traits,Allocator>& rhs);
template<class charT, class traits, class Allocator>
bool operator!=(const charT* lhs,
const basic_string<charT,traits,Allocator>& rhs);
template<class charT, class traits, class Allocator>
bool operator!=(const basic_string<charT,traits,Allocator>& lhs,
const charT* rhs);
template<class charT, class traits, class Allocator>
bool operator< (const basic_string<charT,traits,Allocator>& lhs,
const basic_string<charT,traits,Allocator>& rhs);
template<class charT, class traits, class Allocator>
bool operator< (const basic_string<charT,traits,Allocator>& lhs,
const charT* rhs);
template<class charT, class traits, class Allocator>
bool operator< (const charT* lhs,
const basic_string<charT,traits,Allocator>& rhs);
template<class charT, class traits, class Allocator>
bool operator> (const basic_string<charT,traits,Allocator>& lhs,
const basic_string<charT,traits,Allocator>& rhs);
template<class charT, class traits, class Allocator>
bool operator> (const basic_string<charT,traits,Allocator>& lhs,
const charT* rhs);
template<class charT, class traits, class Allocator>
bool operator> (const charT* lhs,
const basic_string<charT,traits,Allocator>& rhs);
template<class charT, class traits, class Allocator>
bool operator<=(const basic_string<charT,traits,Allocator>& lhs,
const basic_string<charT,traits,Allocator>& rhs);
template<class charT, class traits, class Allocator>
bool operator<=(const basic_string<charT,traits,Allocator>& lhs,
const charT* rhs);
template<class charT, class traits, class Allocator>
bool operator<=(const charT* lhs,
const basic_string<charT,traits,Allocator>& rhs);
template<class charT, class traits, class Allocator>
bool operator>=(const basic_string<charT,traits,Allocator>& lhs,
const basic_string<charT,traits,Allocator>& rhs);
template<class charT, class traits, class Allocator>
bool operator>=(const basic_string<charT,traits,Allocator>& lhs,
const charT* rhs);
template<class charT, class traits, class Allocator>
bool operator>=(const charT* lhs,
const basic_string<charT,traits,Allocator>& rhs);
// lib.string.special:
template<class charT, class traits, class Allocator>
void swap(basic_string<charT,traits,Allocator>& lhs,
basic_string<charT,traits,Allocator>& rhs);
template<class charT, class traits, class Allocator>
basic_istream<charT,traits>&
operator>>(basic_istream<charT,traits>& is,
basic_string<charT,traits,Allocator>& str);
template<class charT, class traits, class Allocator>
basic_ostream<charT, traits>&
operator<<(basic_ostream<charT, traits>& os,
const basic_string<charT,traits,Allocator>& str);
template<class charT, class traits, class Allocator>
basic_istream<charT,traits>&
getline(basic_istream<charT,traits>& is,
basic_string<charT,traits,Allocator>& str,
charT delim);
template<class charT, class traits, class Allocator>
basic_istream<charT,traits>&
getline(basic_istream<charT,traits>& is,
basic_string<charT,traits,Allocator>& str);
typedef basic_string<char> string;
typedef basic_string<wchar_t> wstring;
}

View File

@ -0,0 +1,27 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <string>
namespace gnu
{
typedef std::string t1;
typedef std::wstring t2;
}

View File

@ -30,15 +30,4 @@ void test01()
typedef std::locale::facet base_type;
const test_type& obj = std::use_facet<test_type>(std::locale());
const base_type* base __attribute__((unused)) = &obj;
// Check for required typedefs
typedef test_type::intern_type intern_type;
typedef test_type::extern_type extern_type;
typedef test_type::state_type state_type;
}
int main()
{
test01();
return 0;
}

View File

@ -24,16 +24,4 @@
#include <locale>
// Should be able to instantiate this for other types besides char, wchar_t
class gnu_codecvt: public std::codecvt<unsigned char, unsigned long, char>
{ };
void test02()
{
gnu_codecvt facet01;
}
int main()
{
test02();
return 0;
}
template class std::codecvt<unsigned char, unsigned long, char>;

View File

@ -0,0 +1,33 @@
// { dg-do compile }
// 2001-08-27 Benjamin Kosnik <bkoz@redhat.com>
// Copyright (C) 2001, 2003 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
// 22.2.1.5 Template class codecvt
#include <locale>
void test01()
{
// Check for required typedefs
typedef std::codecvt<char, char, mbstate_t> test_type;
typedef test_type::intern_type intern_type;
typedef test_type::extern_type extern_type;
typedef test_type::state_type state_type;
}

View File

@ -30,15 +30,4 @@ void test01()
typedef std::codecvt<char, char, mbstate_t> base_type;
const test_type& obj = std::use_facet<test_type>(std::locale::classic());
const base_type* base __attribute__((unused)) = &obj;
// Check for required typedefs
typedef test_type::intern_type intern_type;
typedef test_type::extern_type extern_type;
typedef test_type::state_type state_type;
}
int main()
{
test01();
return 0;
}

View File

@ -0,0 +1,34 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to
// the Free Software Foundation, 51 Franklin Street, Fifth Floor,
// Boston, MA 02110-1301, USA.
// As a special exception, you may use this file as part of a free software
// library without restriction. Specifically, if other files instantiate
// templates or use macros or inline functions from this file, or you compile
// this file and link it with other files to produce an executable, this
// file does not by itself cause the resulting executable to be covered by
// the GNU General Public License. This exception does not however
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
// This file tests explicit instantiation of library containers.
#include <locale>
template class std::codecvt_byname<short, short, mbstate_t>;

View File

@ -0,0 +1,33 @@
// { dg-do compile }
// 2001-08-27 Benjamin Kosnik <bkoz@redhat.com>
// Copyright (C) 2001, 2003 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
// 22.2.1.5 Template class codecvt
#include <locale>
void test01()
{
// Check for required typedefs
typedef std::codecvt_byname<char, char, mbstate_t> test_type;
typedef test_type::intern_type intern_type;
typedef test_type::extern_type extern_type;
typedef test_type::state_type state_type;
}

View File

@ -30,14 +30,4 @@ void test01()
typedef std::locale::facet base_type;
const test_type& obj = std::use_facet<test_type>(std::locale());
const base_type* base __attribute__((unused)) = &obj;
// Check for required typedefs
typedef test_type::char_type char_type;
typedef test_type::string_type string_type;
}
int main()
{
test01();
return 0;
}

View File

@ -24,16 +24,4 @@
#include <locale>
// Should be able to instantiate this for other types besides char, wchar_t
class gnu_collate: public std::collate<unsigned char>
{ };
void test02()
{
gnu_collate facet01;
}
int main()
{
test02();
return 0;
}
template class std::collate<unsigned char>;

View File

@ -0,0 +1,32 @@
// { dg-do compile }
// 2001-08-15 Benjamin Kosnik <bkoz@redhat.com>
// Copyright (C) 2001 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
// 22.2.4 The collate category
#include <locale>
void test01()
{
// Check for required typedefs
typedef std::collate<char> test_type;
typedef test_type::char_type char_type;
typedef test_type::string_type string_type;
}

View File

@ -30,14 +30,4 @@ void test01()
typedef std::collate<char> base_type;
const test_type& obj = std::use_facet<test_type>(std::locale::classic());
const base_type* base __attribute__((unused)) = &obj;
// Check for required typedefs
typedef test_type::char_type char_type;
typedef test_type::string_type string_type;
}
int main()
{
test01();
return 0;
}

View File

@ -0,0 +1,34 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to
// the Free Software Foundation, 51 Franklin Street, Fifth Floor,
// Boston, MA 02110-1301, USA.
// As a special exception, you may use this file as part of a free software
// library without restriction. Specifically, if other files instantiate
// templates or use macros or inline functions from this file, or you compile
// this file and link it with other files to produce an executable, this
// file does not by itself cause the resulting executable to be covered by
// the GNU General Public License. This exception does not however
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
// This file tests explicit instantiation of library containers.
#include <locale>
template class std::collate_byname<short>;

View File

@ -0,0 +1,32 @@
// { dg-do compile }
// 2001-08-15 Benjamin Kosnik <bkoz@redhat.com>
// Copyright (C) 2001 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
// 22.2.4 The collate category
#include <locale>
void test01()
{
// Check for required typedefs
typedef std::collate_byname<char> test_type;
typedef test_type::char_type char_type;
typedef test_type::string_type string_type;
}

View File

@ -32,13 +32,4 @@ void test01()
const test_type& obj = std::use_facet<test_type>(std::locale::classic());
const base_type1* base1 __attribute__((unused)) = &obj;
const base_type2* base2 __attribute__((unused)) = &obj;
// Check for required typedefs
typedef test_type::char_type char_type;
}
int main()
{
test01();
return 0;
}

View File

@ -0,0 +1,34 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to
// the Free Software Foundation, 51 Franklin Street, Fifth Floor,
// Boston, MA 02110-1301, USA.
// As a special exception, you may use this file as part of a free software
// library without restriction. Specifically, if other files instantiate
// templates or use macros or inline functions from this file, or you compile
// this file and link it with other files to produce an executable, this
// file does not by itself cause the resulting executable to be covered by
// the GNU General Public License. This exception does not however
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.
// This file tests explicit instantiation of library containers.
#include <locale>
template class std::ctype<short>;

View File

@ -0,0 +1,31 @@
// { dg-do compile }
// 2001-08-15 Benjamin Kosnik <bkoz@redhat.com>
// Copyright (C) 2003 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
// 22.2.1.1 - Template class ctype
#include <locale>
void test01()
{
// Check for required typedefs
typedef std::ctype<char> test_type;
typedef test_type::char_type char_type;
}

View File

@ -0,0 +1,27 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <clocale>
namespace gnu
{
using std::localeconv;
using std::setlocale;
}

View File

@ -0,0 +1,52 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <clocale>
namespace gnu
{
#ifndef NULL
#error "NULL_must_be_a_macro"
#endif
#ifndef LC_ALL
#error "LC_ALL_must_be_a_macro"
#endif
#ifndef LC_COLLATE
#error "LC_COLLATE_must_be_a_macro"
#endif
#ifndef LC_CTYPE
#error "LC_CTYPE_must_be_a_macro"
#endif
#ifndef LC_MONETARY
#error "LC_MONETARY_must_be_a_macro"
#endif
#ifndef LC_NUMERIC
#error "LC_NUMERIC_must_be_a_macro"
#endif
#ifndef LC_TIME
#error "LC_TIME_must_be_a_macro"
#endif
}

View File

@ -0,0 +1,26 @@
// { dg-do compile }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <clocale>
namespace gnu
{
std::lconv l;
}

View File

@ -0,0 +1,85 @@
// { dg-do compile { xfail *-*-* } }
// { dg-excess-errors "" }
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
#include <locale>
namespace std {
// lib.locale, locale:
class locale;
template <class Facet> const Facet& use_facet(const locale&);
template <class Facet> bool has_facet(const locale&) throw();
// lib.locale.convenience, convenience interfaces:
template <class charT> bool isspace (charT c, const locale& loc);
template <class charT> bool isprint (charT c, const locale& loc);
template <class charT> bool iscntrl (charT c, const locale& loc);
template <class charT> bool isupper (charT c, const locale& loc);
template <class charT> bool islower (charT c, const locale& loc);
template <class charT> bool isalpha (charT c, const locale& loc);
template <class charT> bool isdigit (charT c, const locale& loc);
template <class charT> bool ispunct (charT c, const locale& loc);
template <class charT> bool isxdigit(charT c, const locale& loc);
template <class charT> bool isalnum (charT c, const locale& loc);
template <class charT> bool isgraph (charT c, const locale& loc);
template <class charT> charT toupper(charT c, const locale& loc);
template <class charT> charT tolower(charT c, const locale& loc);
// lib.category.ctype and lib.facet.ctype.special, ctype:
class ctype_base;
template <class charT> class ctype;
template <> class ctype<char>; // specialization
template <class charT> class ctype_byname;
template <> class ctype_byname<char>; // specialization
class codecvt_base;
template <class internT, class externT, class stateT>
class codecvt;
template <class internT, class externT, class stateT>
class codecvt_byname;
// lib.category.numeric and lib.facet.numpunct, numeric:
template <class charT, class InputIterator> class num_get;
template <class charT, class OutputIterator> class num_put;
template <class charT> class numpunct;
template <class charT> class numpunct_byname;
// lib.category.collate, collation:
template <class charT> class collate;
template <class charT> class collate_byname;
// lib.category.time, date and time:
class time_base;
template <class charT, class InputIterator> class time_get;
template <class charT, class InputIterator> class time_get_byname;
template <class charT, class OutputIterator> class time_put;
template <class charT, class OutputIterator> class time_put_byname;
// lib.category.monetary, money:
class money_base;
template <class charT, class InputIterator> class money_get;
template <class charT, class OutputIterator> class money_put;
template <class charT, bool Intl> class moneypunct;
template <class charT, bool Intl> class moneypunct_byname;
// lib.category.messages, message retrieval:
class messages_base;
template <class charT> class messages;
template <class charT> class messages_byname;
}

View File

@ -1,6 +1,6 @@
// 2000-01-01 bkoz
// { dg-do compile }
// Copyright (C) 2001, 2003 Free Software Foundation, Inc.
// Copyright (C) 2007 Free Software Foundation, Inc.
//
// This file is part of the GNU ISO C++ Library. This library is free
// software; you can redistribute it and/or modify it under the
@ -18,16 +18,14 @@
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
// 17.4.1.2 Headers, cwchar
#include <locale>
#include <cwchar>
int main(void)
namespace gnu
{
// Make sure size_t is in namespace std
std::size_t i __attribute__((unused)) = 5;
std::tm __attribute__((unused)) mytime;
return 0;
typedef std::locale t1;
typedef std::ctype_base t2;
typedef std::codecvt_base t3;
typedef std::time_base t4;
typedef std::money_base t5;
typedef std::messages_base t6;
}

View File

@ -32,14 +32,4 @@ void test01()
const test_type& obj = std::use_facet<test_type>(std::locale());
const base_type1* base1 __attribute__((unused)) = &obj;
const base_type2* base2 __attribute__((unused)) = &obj;
// Check for required typedefs
typedef test_type::char_type char_type;
typedef test_type::string_type string_type;
}
int main()
{
test01();
return 0;
}

View File

@ -24,16 +24,4 @@
#include <locale>
// Should be able to instantiate this for other types besides char, wchar_t
class gnu_messages: public std::messages<unsigned char>
{ };
void test02()
{
gnu_messages facet01;
}
int main()
{
test02();
return 0;
}
template class std::messages<unsigned char>;

View File

@ -0,0 +1,32 @@
// { dg-do compile }
// 2001-07-17 Benjamin Kosnik <bkoz@redhat.com>
// Copyright (C) 2001, 2003 Free Software Foundation
//
// This file is part of the GNU ISO C++ Library. This library 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 library 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 library; see the file COPYING. If not, write to the Free
// Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
// USA.
// 22.2.7 The message retrieval category
#include <locale>
void test01()
{
// Check for required typedefs
typedef std::messages<char> test_type;
typedef test_type::char_type char_type;
typedef test_type::string_type string_type;
}

Some files were not shown because too many files have changed in this diff Show More