Benjamin Kosnik
d0700ca3a4
*: Move to...
...
2007-05-01 Benjamin Kosnik <bkoz@redhat.com>
* 23_containers/requirements/sequences/dr438/deque/*: Move to...
* 23_containers/deque/requirements/dr438: ...here.
* 23_containers/requirements/sequences/dr438/list/*: Move to...
* 23_containers/list/requirements/dr438: ...here.
* 23_containers/requirements/sequences/dr438/vector/*: Move to...
* 23_containers/vector/requirements/dr438: ...here.
From-SVN: r124319
2007-05-01 09:04:35 +00:00
Benjamin Kosnik
93f79c2a4a
explicit_instantiations.cc: Change to...
...
2007-05-01 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/*/explicit_instantiations.cc: Change to...
* testsuite/*/explicit_instantiation.cc: ... this.
From-SVN: r124318
2007-05-01 08:50:44 +00:00
Benjamin Kosnik
953415a2b7
explicit_instantiations.cc: Change "basic_ofstream" in comment to type_traits.
...
2007-05-01 Benjamin Kosnik <bkoz@redhat.com>
* tr1/4_metaprogramming/*/explicit_instantiations.cc: Change
"basic_ofstream" in comment to type_traits.
From-SVN: r124317
2007-05-01 08:37:16 +00:00
Benjamin Kosnik
39dd88f08d
2007-04-30 Benjamin Kosnik <bkoz@redhat.com>
...
Directory layout flattening.
From-SVN: r124307
2007-04-30 22:41:00 +00:00
Hans-Peter Nilsson
8f1a19e2c5
libstdc++.exp (v3_target_compile_as_c): Correct regexp to filter out -nostdinc++.
...
* testsuite/lib/libstdc++.exp (v3_target_compile_as_c): Correct
regexp to filter out -nostdinc++.
From-SVN: r124298
2007-04-30 16:12:48 +00:00
Paolo Carlini
d22a31664d
PR libstdc++/30449 (equal)
...
2007-04-30 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/30449 (equal)
* include/bits/stl_algobase.h (struct __niter_base): Add.
(copy(_II, _II, _OI), copy_backward(_BI1, _BI1, _BI2),
fill(_ForwardIterator, _ForwardIterator, const _Tp&),
fill_n(_OI, _Size, const _Tp&), equal(_II1, _II1, _II2)):
Use it.
(struct __copy_normal, __copy_backward_normal,
struct __fill_normal, struct __fill_n_normal): Remove.
(struct __equal, struct __equal_aux): Add.
* include/bits/stl_iterator.h: Add _Iterator_type typedef.
* include/bits/stl_algobase.h (__fill_aux(wchar_t*,
wchar_t*, wchar_t), __fill_n_aux(wchar_t*, _Size, wchar_t)):
Remove.
* testsuite/23_containers/requirements/sequences/dr438/vector/
constructor_1_neg.cc: Adjust dg-error line number.
* testsuite/23_containers/requirements/sequences/dr438/vector/
constructor_2_neg.cc: Likewise.
From-SVN: r124295
2007-04-30 13:10:54 +00:00
Paolo Carlini
6a7508ec12
type_traits (is_pod): Use __is_pod.
...
2007-04-30 Paolo Carlini <pcarlini@suse.de>
* include/tr1/type_traits (is_pod): Use __is_pod.
* testsuite/tr1/4_metaprogramming/type_properties/
has_trivial_destructor/has_trivial_destructor.cc: Adjust.
* testsuite/tr1/4_metaprogramming/type_properties/
has_nothrow_constructor/has_nothrow_constructor.cc: Likewise.
* testsuite/tr1/4_metaprogramming/type_properties/
has_trivial_constructor/has_trivial_constructor.cc: Likewise.
* testsuite/tr1/4_metaprogramming/type_properties/
is_pod/is_pod.cc: Likewise.
From-SVN: r124294
2007-04-30 10:27:31 +00:00
Paolo Carlini
677e29e167
localefwd.h: Remove redundant inline qualifiers.
...
2007-04-29 Paolo Carlini <pcarlini@suse.de>
* include/bits/localefwd.h: Remove redundant inline qualifiers.
(__check_facet): Move...
* include/bits/basic_ios.h: ... here.
(widen(char), narrow(char_type, char)): Define inline.
* include/bits/basic_ios.tcc (widen(char), narrow(char_type, char)):
Remove.
From-SVN: r124282
2007-04-29 16:06:09 +00:00
Paolo Carlini
25959e29ee
DR 438, [DR].
...
2007-04-27 Paolo Carlini <pcarlini@suse.de>
DR 438, [DR].
* include/bits/basic_string.h (_S_construct_aux(_InIterator,
_InIterator, const _Alloc&, __true_type)): Do not cast the
second argument.
* include/ext/rc_string_base.h (_S_construct_aux(_Integer,
_Integer, const _Alloc&, std::__true_type)): Likewise.
* include/ext/sso_string_base.h (_M_construct_aux(_InIterator,
_InIterator, std::__true_type)): Likewise.
* include/bits/stl_deque.h (_M_initialize_dispatch(_Integer,
_Integer, __true_type)): Cast the first argument.
(_M_assign_dispatch(_Integer, _Integer, __true_type)): Do
not cast the arguments.
(_M_insert_dispatch(iterator, _Integer, _Integer, __true_type)):
Likewise.
* include/bits/stl_list.h (_M_initialize_dispatch(_Integer,
_Integer, __true_type)): Likewise.
(_M_assign_dispatch(_Integer, _Integer, __true_type)): Do
not cast both arguments.
* include/bits/stl_bvector.h (_M_initialize_dispatch(_Integer,
_Integer, __true_type)): Cast the first argument.
(_M_assign_dispatch(_Integer, _Integer, __true_type)): Do not
cast the arguments.
* include/bits/stl_vector.h (_M_initialize_dispatch(_Integer,
_Integer, __true_type)): Cast the first argument.
(_M_assign_dispatch(_Integer, _Integer, __true_type)): Do not
cast the arguments.
(_M_insert_dispatch(iterator, _Integer, _Integer, __true_type)):
Likewise.
* testsuite/21_strings/basic_string/requirements/dr438/
constructor.cc: New.
* testsuite/ext/vstring/requirements/dr438/constructor.cc: Likewise.
* testsuite/23_containers/requirements/sequences/dr438/deque/
assign_neg.cc: Likewise.
* testsuite/23_containers/requirements/sequences/dr438/deque/
constructor.cc: Likewise.
* testsuite/23_containers/requirements/sequences/dr438/deque/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/requirements/sequences/dr438/deque/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/requirements/sequences/dr438/deque/
insert_neg.cc: Likewise.
* testsuite/23_containers/requirements/sequences/dr438/list/
assign_neg.cc: Likewise.
* testsuite/23_containers/requirements/sequences/dr438/list/
constructor.cc: Likewise.
* testsuite/23_containers/requirements/sequences/dr438/list/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/requirements/sequences/dr438/list/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/requirements/sequences/dr438/list/
insert_neg.cc: Likewise.
* testsuite/23_containers/requirements/sequences/dr438/vector/
assign_neg.cc: Likewise.
* testsuite/23_containers/requirements/sequences/dr438/vector/
constructor.cc: Likewise.
* testsuite/23_containers/requirements/sequences/dr438/vector/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/requirements/sequences/dr438/vector/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/requirements/sequences/dr438/vector/
insert_neg.cc: Likewise.
* testsuite/23_containers/requirements/sequences/dr438/vector/
bool/constructor.cc: Likewise.
* docs/html/ext/howto.html: Add an entry for DR 438.
From-SVN: r124243
2007-04-27 22:59:36 +00:00
Paolo Carlini
dd42abcc7e
locale_classes.h: Remove redundant inline specifiers.
...
2007-04-25 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_classes.h: Remove redundant inline specifiers.
* include/bits/ios_base.h: Likewise.
* testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust dg-error line
numbers.
* testsuite/27_io/ios_base/cons/copy_neg.cc: Likewise.
From-SVN: r124148
2007-04-25 09:25:05 +00:00
Paolo Carlini
84b31797f3
locale_facets.h (class collate, [...]): Move...
...
2007-04-24 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.h (class collate, class collate_byname):
Move...
* include/bits/locale_classes.h: ... here.
* include/bits/locale_facets.tcc (locale::combine, locale::operator(),
has_facet, use_facet, collate::_M_compare, collate::_M_transform,
collate::do_compare, collate::do_transform, collate::do_hash): Move...
* include/bits/locale_classes.tcc: ... here, new.
* include/Makefile.am: Add.
* testsuite/util/testsuite_abi.h: Include <locale>.
* include/std/locale: Tweak.
* include/std/istream: Likewise.
* include/std/ostream: Likewise.
* include/bits/codecvt.h: Likewise.
* include/Makefile.in: Regenerate.
* include/bits/codecvt.h: Adjust extern template declarations.
* include/bits/ostream_insert.h: Likewise.
* include/bits/ostream.tcc: Likewise.
* include/bits/locale_facets.h: Do not include <bits/codecvt.h>.
* include/std/fstream: Do it here.
* include/bits/locale_facets_nonio.h: Likewise.
From-SVN: r124114
2007-04-24 18:57:12 +00:00
Paolo Carlini
f749a55bb4
locale_facets.h (class time_base, [...]): Move...
...
2007-04-23 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.h (class time_base,
struct __timepunct_cache, class __timepunct, class time_get,
class time_get_byname, class time_put, class time_put_byname,
class money_base, struct __moneypunct_cache, class moneypunct,
class moneypunct_byname, class money_get, class money_put,
struct messages_base, class messages, class messages_byname): Move...
* include/bits/locale_facets_nonio.h: ... here.
* include/bits/locale_facets.tcc
(struct __use_cache<__moneypunct_cache<> >,
__moneypunct_cache<>::_M_cache, money_get<>::_M_extract,
money_get<>::__do_get, money_get<>::do_get, money_put<>::_M_insert,
money_put<>::__do_put, money_put<>::do_put, time_get<>::do_date_order,
time_get<>::_M_extract_via_format, time_get<>::_M_extract_num,
time_get<>::_M_extract_name, time_get<>::do_get_time,
time_get<>::do_get_date, time_get<>::do_get_weekday,
time_get<>::do_get_monthname, time_get<>::do_get_year, time_put<>::put,
time_put<>::do_put): Move...
* include/bits/locale_facets_nonio.tcc: ... here.
* include/Makefile.am: Add.
* include/std/locale: Adjust includes.
* include/std/fstream: Likewise.
* include/std/istream: Likewise.
* include/std/ostream: Likewise.
* include/Makefile.in: Regenerate.
From-SVN: r124080
2007-04-23 20:26:30 +00:00
Nathan Sidwell
6c1e7e268e
testsuite_flags.in: Add --build-cc option.
...
* scripts/testsuite_flags.in: Add --build-cc option.
* testsuite/lib/libstdc++.exp (libstdc++_init): Set cc. Fix typo
in previous change.
(v3_target_compile_as_c): Use cc.
From-SVN: r124058
2007-04-23 07:38:33 +00:00
Mark Mitchell
6cd5b96f39
libstdc++.exp (libstdc++_init): Use the same flags for remote host testing we use for local host testing.
...
* testsuite/lib/libstdc++.exp (libstdc++_init): Use the same flags
for remote host testing we use for local host testing. Copy all
testsuite headers to the remote host
(v3_target_compile_as_c): Use remote_exec, not just exec.
From-SVN: r124051
2007-04-23 00:39:17 +00:00
Paolo Carlini
4c9be80604
functional: Formatting fixes.
...
2007-04-22 Paolo Carlini <pcarlini@suse.de>
* include/tr1/functional: Formatting fixes.
From-SVN: r124041
2007-04-22 11:12:18 +00:00
Paolo Carlini
87a2085661
concurrence.h: Do not include <cstdlib>, use __builtin_abort.
...
2007-04-22 Paolo Carlini <pcarlini@suse.de>
* include/ext/concurrence.h: Do not include <cstdlib>, use
__builtin_abort.
* include/debug/debug.h: Likewise.
* include/tr1/memory: Likewise.
* include/tr1/boost_shared_ptr.h: Likewise.
* include/tr1/functional: Likewise.
From-SVN: r124040
2007-04-22 10:36:04 +00:00
Paolo Carlini
3b476281b6
locale_facets.tcc: Do not include <typeinfo>.
...
2007-04-22 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc: Do not include <typeinfo>.
* testsuite/27_io/basic_ios/imbue/14072.cc: Do it here.
* testsuite/27_io/basic_ios/cons/char/3.cc: Likewise.
* testsuite/27_io/basic_istream/sentry/pod/1.cc: Likewise.
* testsuite/27_io/basic_ostream/sentry/pod/1.cc: Likewise.
* testsuite/21_strings/basic_string/inserters_extractors/
pod/10081-in.cc: Likewise.
* testsuite/21_strings/basic_string/inserters_extractors/
pod/10081-out.cc: Likewise.
* testsuite/22_locale/locale/cons/2.cc: Likewise.
* testsuite/22_locale/locale/cons/unicode.cc: Likewise.
* testsuite/22_locale/numpunct/members/pod/2.cc: Likewise.
* testsuite/22_locale/global_templates/1.cc: Likewise.
From-SVN: r124039
2007-04-22 10:09:11 +00:00
Joseph Myers
f7cc5390ec
configure.ac: Allow both powerpc*-*-linux* and powerpc*-*-gnu* for long double compatibility.
...
gcc:
* configure.ac: Allow both powerpc*-*-linux* and powerpc*-*-gnu*
for long double compatibility.
* configure: Regenerate.
libstdc++-v3:
* configure.ac: Allow both powerpc*-*-linux* and powerpc*-*-gnu*
for long double compatibility.
* configure: Regenerate.
* src/complex_io.cc, src/istream-inst.cc, src/ostream-inst.cc:
Condition some _GLIBCXX_LDBL_COMPAT calls on _GLIBCXX_USE_WCHAR_T.
From-SVN: r123972
2007-04-19 13:11:07 +01:00
Steve Ellcey
94872c09c9
configure.ac: Change how LIBSUPCXX_PICFLAGS is set.
...
* configure.ac: Change how LIBSUPCXX_PICFLAGS is set.
* configure: Regenerate.
From-SVN: r123828
2007-04-14 19:51:44 +00:00
Paolo Carlini
587024cfd4
c_locale.cc: Include <limits>.
...
2007-04-14 Paolo Carlini <pcarlini@suse.de>
* config/locale/generic/c_locale.cc: Include <limits>.
From-SVN: r123816
2007-04-14 16:40:51 +00:00
Paolo Carlini
dded9d2ca8
re PR libstdc++/31556 (find_if uses operator! instead of conversion to bool)
...
2007-04-13 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/31556
* include/bits/stl_algobase.h (equal(_InputIterator1, _InputIterator1,
_InputIterator2, _BinaryPredicate), mismatch(_InputIterator1,
_InputIterator1, _InputIterator2, _BinaryPredicate)): Convert
predicate return to bool.
* include/bits/stl_algo.h (__find_if(_InputIterator, _InputIterator,
_Predicate, input_iterator_tag), search(_ForwardIterator1,
_ForwardIterator1, _ForwardIterator2, _ForwardIterator2,
_BinaryPredicate), __search_n(_ForwardIterator, _ForwardIterator,
_Integer, const _Tp&, _BinaryPredicate, std::forward_iterator_tag),
__search_n(_RandomAccessIter, _RandomAccessIter, _Integer, const _Tp&,
_BinaryPredicate, std::random_access_iterator_tag),
search_n(_ForwardIterator, _ForwardIterator, _Integer, const _Tp&,
_BinaryPredicate), remove_copy_if(_InputIterator, _InputIterator,
_OutputIterator, _Predicate), __unique_copy(_ForwardIterator,
_ForwardIterator, _OutputIterator, _BinaryPredicate,
forward_iterator_tag, output_iterator_tag),
__unique_copy(_InputIterator, _InputIterator, _OutputIterator,
_BinaryPredicate, input_iterator_tag, output_iterator_tag),
__unique_copy(_InputIterator, _InputIterator, _OutputIterator,
_BinaryPredicate, input_iterator_tag, output_iterator_tag),
__unique_copy(_InputIterator, _InputIterator, _ForwardIterator,
_BinaryPredicate, input_iterator_tag, forward_iterator_tag),
unique(_ForwardIterator, _ForwardIterator, _BinaryPredicate),
__partition(_BidirectionalIterator, _BidirectionalIterator, _Predicate,
bidirectional_iterator_tag), binary_search(_ForwardIterator,
_ForwardIterator, const _Tp&, _Compare),
next_permutation(_BidirectionalIterator, _BidirectionalIterator,
_Compare), prev_permutation(_BidirectionalIterator,
_BidirectionalIterator, _Compare)): Likewise.
From-SVN: r123800
2007-04-13 22:22:56 +00:00
Paolo Carlini
4ecacafc9b
re PR libstdc++/31554 (stable_partition assumes iterator difference type is always ptrdiff_t)
...
2007-04-13 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/31554
* include/bits/stl_algo.h (stable_partition): Convert __buf.size()
to _DistanceType.
From-SVN: r123783
2007-04-13 11:17:21 +00:00
Paolo Carlini
6725add54e
numeric_traits.h: Do not include <limits>.
...
2007-04-13 Paolo Carlini <pcarlini@suse.de>
* include/ext/numeric_traits.h: Do not include <limits>.
(__numeric_traits_integer::__is_signed, __digits): Add.
(__numeric_traits_floating::__digits10, __max_exponent10): Add.
* src/istream.cc (ignore<char>(streamsize, int_type), operator>>
(basic_istream<char>&, char*), ignore<wchar_t>(streamsize,
int_type)): Use the latter.
* src/compatibility.cc (ignore<char>(streamsize),
ignore<wchar_t>(streamsize)): Likewise.
* include/ext/vstring_util.h (__vstring_utility<>::_S_compare):
Likewise.
* include/bits/stl_memory.h (__get_temporary_buffer): Likewise.
* include/bits/stl_algobase.h (lexicographical_compare(const char*,
const char*, const char*, const char*)): Likewise.
* include/bits/locale_facets.tcc (num_get<>::_M_extract_int(_InIter,
_InIter, ios_base&, ios_base::iostate&, _ValueT&),
num_put<>::_M_insert_int(_OutIter, ios_base&, _CharT, _ValueT),
num_put<>::_M_insert_float(_OutIter, ios_base&, _CharT, char,
_ValueT), collate<>::do_hash(const _CharT*, const _CharT*)): Likewise.
* include/bits/basic_string.h (basic_string<>::_S_compare): Likewise.
* include/bits/istream.tcc (operator>>(short&), operator>>(int&),
ignore(streamsize), ignore(streamsize, int_type), operator>>
(basic_istream<>&, _CharT*)): Likewise.
* include/bits/stl_bvector.h (vector<bool>::max_size): Likewise.
* include/tr1/functional_hash.h (struct hash<long double>): Likewise.
* include/std/istream: Do not include <limits>.
* include/tr1/cmath: Include <limits>.
* testsuite/23_containers/vector/bool/capacity/29134.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
Likewise.
* testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
Likewise.
* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
Likewise.
* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/13.cc:
Likewise.
* testsuite/27_io/ios_base/storage/2.cc: Likewise.
* include/tr1/hashtable: Do not include the whole <iterator>.
From-SVN: r123779
2007-04-13 10:54:37 +00:00
Paolo Carlini
fdc2084a0f
c_locale.h: Do not include <langinfo.h> and <iconv.h>.
...
2007-04-11 Paolo Carlini <pcarlini@suse.de>
* config/locale/gnu/c_locale.h: Do not include <langinfo.h>
and <iconv.h>.
* config/locale/gnu/c++locale_internal.h: Include <langinfo.h>.
From-SVN: r123726
2007-04-11 23:10:05 +00:00
Paolo Carlini
574e75f5fb
istream (class basic_istream<>): Remove unneded friend declarations.
...
2007-04-11 Paolo Carlini <pcarlini@suse.de>
* include/std/istream (class basic_istream<>): Remove unneded friend
declarations.
From-SVN: r123718
2007-04-11 15:58:15 +00:00
Paolo Carlini
54e2e812fe
1.cc: Initialize v.
...
2007-04-11 Paolo Carlini <pcarlini@suse.de>
* testsuite/22_locale/num_get/get/wchar_t/1.cc: Initialize v.
From-SVN: r123717
2007-04-11 15:22:34 +00:00
Paolo Carlini
90737ab777
locale_facets.tcc (num_get<>::do_get(iter_type, ios_base&, ios_base::iostate&, void*&)): Fix for sizeof(void*) > sizeof(unsigned long).
...
2007-04-11 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (num_get<>::do_get(iter_type,
ios_base&, ios_base::iostate&, void*&)): Fix for sizeof(void*)
> sizeof(unsigned long).
* testsuite/22_locale/num_get/get/char/1.cc: Fix void* test.
* testsuite/22_locale/num_get/get/wchar_t/1.cc: Likewise.
* testsuite/22_locale/num_put/put/char/1.cc: Tweak comment.
* testsuite/22_locale/num_put/put/wchar_t/1.cc: Likewise.
From-SVN: r123716
2007-04-11 15:19:15 +00:00
Zack Weinberg
c74620b05b
iosfwd: Do not include <bits/c++locale.h> and <bits/functexcept.h>.
...
2007-04-11 Zack Weinberg <zack@mrtock.ucsd.edu>
* include/std/iosfwd: Do not include <bits/c++locale.h> and
<bits/functexcept.h>.
From-SVN: r123713
2007-04-11 10:12:47 +00:00
Benjamin Kosnik
113008b54b
cc_hash_max_collision_check_resize_trigger_imp.hpp: Qualify namespace std members.
...
2007-04-10 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/pb_ds/detail/resize_policy/
cc_hash_max_collision_check_resize_trigger_imp.hpp: Qualify
namespace std members.
* include/ext/pb_ds/detail/list_update_policy/
counter_lu_metadata.hpp: Same.
* include/ext/throw_allocator.h: Same.
* include/ext/pod_char_traits.h: Same.
* include/ext/malloc_allocator.h: Same.
* libsupc++/del_op.cc: Same, simplify.
* include/bits/c++config: Adjust macro name.
* include/c_global/cstring: Alphabetize.
* include/c_global/cwctype: Same.
From-SVN: r123710
2007-04-11 01:11:56 +00:00
Paolo Carlini
d81db5b091
cmath: Include <bits/stl_algobase.h> instead of the whole <algorithm>.
...
2007-04-10 Paolo Carlini <pcarlini@suse.de>
* include/tr1/cmath: Include <bits/stl_algobase.h> instead of
the whole <algorithm>.
From-SVN: r123696
2007-04-10 15:54:46 +00:00
Paolo Carlini
05beb8e720
type_traits (__is_function_helper): New, uses variadic templates.
...
2007-04-10 Paolo Carlini <pcarlini@suse.de>
* include/tr1/type_traits (__is_function_helper): New, uses
variadic templates.
(is_function): Forward to the latter.
* testsuite/tr1/4_metaprogramming/primary_type_categories/
is_function/is_function.cc: Add test.
From-SVN: r123695
2007-04-10 15:12:54 +00:00
Paolo Carlini
11202768fe
PR libstdc++/28277 (partial: vstring bits)
...
2007-04-10 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/28277 (partial: vstring bits)
* include/bits/ostream_insert.h: New.
* include/Makefile.am: Add.
* include/ext/vstring.h (operator<<(basic_ostream<>&,
const __versa_string<>&): Forward to __ostream_insert.
* include/bits/basic_string.h (operator<<(basic_ostream<>&,
const string<>&)): Likewise.
* include/std/ostream (operator<<(basic_ostream<>&, _CharT),
operator<<(basic_ostream<char,>&, char), operator<<(basic_ostream<>&,
const _CharT*), operator<<(basic_ostream<char,>&, const char*)):
Likewise.
* include/ext/vstring.tcc (operator<<(basic_ostream<>&,
const __versa_string<>&)): Remove.
(class basic_ostream): Remove friend declarations.
(basic_ostream<>::_M_write(char_type, streamsize),
_M_insert(const char_type*, streamsize)): Remove.
* include/bits/ostream.tcc (_M_insert(const char_type*, streamsize)):
Remove definition.
(operator<<(basic_ostream<>&, const char*)): Use __ostream_insert.
* config/abi/pre/gnu.ver: Adjust.
* src/ostream-inst.cc: Add __ostream_insert instantiations.
* include/bits/locale_facets.h (__pad<>::_S_pad): Remove __num
parameter.
* include/bits/locale_facets.tcc (__pad<>::_S_pad): Adjust.
(num_put<>::_M_pad(_CharT, streamsize, ios_base&, _CharT*,
const _CharT*, int&)): Likewise.
* include/Makefile.in: Rebuild.
* testsuite/ext/vstring/inserters_extractors/char/28277.cc: New.
* testsuite/ext/vstring/inserters_extractors/wchar_t/28277.cc: New.
* include/ext/vstring_util.h: Do not include the whole <locale>.
* include/ext/vstring.tcc (operator>>(basic_istream<>&,
__versa_string<>&, getline(basic_istream<>&, __versa_string<>&,
_CharT)): Tweak to refer to ios_base as a base of istream; do not
refer to non-standard types of istream.
* include/bits/istream.tcc (operator>>(basic_istream<>&, _CharT*),
ws(basic_istream<>&)): Do not refer to non-standard types of istream.
* include/std/bitset (operator>>(std::basic_istream<>&, bitset<>&)):
Avoid using basic_streambuf<>*.
* include/bits/istream.tcc (operator>>(basic_istream<>&,
basic_string<>&), getline(basic_istream<>&, basic_string<>&, _CharT)):
Move...
* include/bits/basic_string.tcc: ... here; tweak to refer to ios_base
as a base of istream; do not refer to non-standard types of istream.
* include/std/string: Tweak includes.
* include/ext/type_traits.h (__is_null_pointer): Add.
* include/ext/rc_string_base.h: Use it.
* include/ext/sso_string_base.h: Likewise.
* include/bits/basic_string.tcc (__is_null_pointer): Remove, use
the above.
* include/ext/vstring_util.h (__vstring_utility<>::_S_is_null_pointer):
Remove.
From-SVN: r123692
2007-04-10 10:38:50 +00:00
Paolo Carlini
22931aa4a9
type_traits_fwd.h (__is_union_or_class): Remove.
...
2007-04-09 Paolo Carlini <pcarlini@suse.de>
* include/tr1/type_traits_fwd.h (__is_union_or_class): Remove.
* include/tr1/type_traits (struct __in_array,
struct __is_union_or_class, struct __is_union_or_class_helper,
struct __is_empty_helper, struct __is_polymorphic_helper):
Remove.
(struct is_enum): Use __is_enum.
(struct is_union): Use __is_union.
(struct is_class): Use __is_class.
(struct is_function): Adjust.
(struct is_empty): Use __is_empty.
(struct is_polymorphic): Use __is_polymorphic.
(struct is_abstract): Use __is_abstract.
(struct has_virtual_destructor): Use __has_virtual_destructor.
(struct __is_base_of_helper): Use __is_base_of.
* testsuite/tr1/4_metaprogramming/composite_type_traits/
is_union_or_class/typedefs.cc: Remove.
* testsuite/tr1/4_metaprogramming/composite_type_traits/
is_union_or_class/is_union_or_class.cc: Likewise.
* testsuite/tr1/4_metaprogramming/primary_type_categories/
is_class/typedefs.cc: New.
* testsuite/tr1/4_metaprogramming/primary_type_categories/
is_class/is_class.cc: Likewise.
* testsuite/tr1/4_metaprogramming/primary_type_categories/
is_union/typedefs.cc: Likewise.
* testsuite/tr1/4_metaprogramming/primary_type_categories/
is_union/is_union.cc: Likewise.
* testsuite/tr1/4_metaprogramming/type_properties/
has_virtual_destructor/typedefs.cc: Likewise.
* testsuite/tr1/4_metaprogramming/type_properties/
has_virtual_destructor/has_virtual_destructor.cc: Likewise.
* testsuite/util/testsuite_tr1.h (class VirtualDestructorClass): Add.
* testsuite/tr1/4_metaprogramming/type_properties/is_polymorphic/
is_polymorphic.cc: Add test.
From-SVN: r123675
2007-04-09 17:07:37 +00:00
Alexey Beshenov
ad1a64baff
re PR libstdc++/31511 (/usr/include/c++/bits/cmath.tcc: no match for ternary 'operator?:' in '((__n % 2u) != 0u) ? __x : 1')
...
2007-04-08 Alexey Beshenov <bav.272304@gmail.com>
PR libstdc++/31511
* include/c_global/cmath.tcc (__cmath_power): Use _Tp(1).
* include/c_std/cmath.tcc (__cmath_power): Likewise.
From-SVN: r123665
2007-04-08 22:37:56 +00:00
Paolo Carlini
1bfe2e5fca
re PR libstdc++/31117 (c++locale.o thread-unsafe in libstdc++)
...
2007-04-06 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/31117
* config/locale/gnu/c_locale.cc (__convert_to_v): Do not use errno,
just check that the value is finite.
* config/locale/generic/c_locale.cc (__convert_to_v): Likewise.
From-SVN: r123635
2007-04-06 23:36:56 +00:00
Paolo Carlini
b3726dabf3
type_traits.h (__numeric_traits): Move...
...
2007-04-06 Paolo Carlini <pcarlini@suse.de>
* include/ext/type_traits.h (__numeric_traits): Move...
* include/ext/numeric_traits.h: ... here.
* include/Makefile.am: Add.
* include/ext/pb_ds/detail/type_utils.hpp: Include
<ext/numeric_traits.h> too.
* include/tr1/random: Likewise.
* testsuite/ext/type_traits/numeric_traits.cc: Move...
* testsuite/ext/numeric_traits/numeric_traits.cc: ... here.
* include/Makefile.in: Regenerate.
From-SVN: r123618
2007-04-06 14:52:27 +00:00
Paolo Carlini
34989df3a9
valarray_array.h (__valarray_default_construct(_Tp*, _Tp*)): Use __is_scalar instead of __is_pod.
...
2007-04-04 Paolo Carlini <pcarlini@suse.de>
* include/bits/valarray_array.h (__valarray_default_construct(_Tp*,
_Tp*)): Use __is_scalar instead of __is_pod.
From-SVN: r123502
2007-04-04 19:06:46 +00:00
Paolo Carlini
ff2ea58742
stl_algobase.h (__copy_aux(_II, _II, _OI), [...]): Use __is_pod.
...
2007-04-03 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_algobase.h (__copy_aux(_II, _II, _OI),
__copy_backward_aux(_BI1, _BI1, _BI2)): Use __is_pod.
* include/bits/stl_deque.h (deque<>::_M_destroy_data(iterator,
iterator, const std::allocator<>&)): Use __has_trivial_constructor.
(deque<>::_M_destroy_data_dispatch): Remove.
* include/bits/stl_uninitialized.h (uninitialized_copy(_InputIterator,
_InputIterator, _ForwardIterator), uninitialized_fill(_ForwardIterator,
_ForwardIterator, const _Tp&), uninitialized_fill_n(_ForwardIterator,
_Size, const _Tp&)): Use __is_pod.
* include/bits/stl_tempbuf.h (_Temporary_buffer::
_Temporary_buffer(_ForwardIterator, _ForwardIterator)): Use __is_pod.
(_Temporary_buffer::_M_initialize_buffer): Remove.
* include/bits/stl_construct.h (_Destroy(_ForwardIterator,
_ForwardIterator)): Use __has_trivial_destructor.
(__destroy_aux): Remove.
From-SVN: r123480
2007-04-03 18:44:01 +00:00
Paolo Carlini
eb9af792f2
stl_map.h (map<>::insert(iterator, const value_type&): Uglify parameter.
...
2007-04-03 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_map.h (map<>::insert(iterator, const value_type&):
Uglify parameter.
From-SVN: r123453
2007-04-03 08:50:09 +00:00
Paolo Carlini
f7e5257713
re PR libstdc++/31440 (libstdc++-g++-v3 discarded qualifiers)
...
2007-04-03 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/31440
* include/bits/stl_tree.h (_M_lower_bound(_Link_type, _Link_type,
const _Key&), _M_upper_bound(_Link_type, _Link_type, const _Key&)):
Add.
(_M_equal_range(const _Key&) const): Remove.
(lower_bound(const key_type&), lower_bound(const key_type&) const,
upper_bound(const key_type&), upper_bound(const key_type&) const,
equal_range(const key_type&), equal_range(const key_type&) const):
Adjust.
(find(const _Key&), find(const _Key&) const): Tweak.
* testsuite/23_containers/map/operations/31440.cc: New.
From-SVN: r123452
2007-04-03 08:32:31 +00:00
Matthew Levine
be1088fa6a
re PR libstdc++/31370 (resizing bugs in std::vector<bool>)
...
2007-04-02 Matthew Levine <gcc@severeweblint.org>
Paolo Carlini <pcarlini@suse.de>
PR libstdc++/31370
* include/bits/stl_bvector.h (vector<bool>::max_size): Fix.
(vector<bool>::_M_check_len): Add.
* include/bits/vector.tcc (_M_fill_insert(iterator, size_type, bool),
_M_insert_range(iterator, _ForwardIterator, _ForwardIterator,
std::forward_iterator_tag), _M_insert_aux(iterator, bool)): Use it.
* testsuite/23_containers/vector/bool/modifiers/insert/31370.cc: New.
* testsuite/23_containers/vector/bool/capacity/29134.cc: Adjust.
* include/bits/stl_vector.h (vector<>::_M_check_len): Add.
* include/bits/vector.tcc (_M_insert_aux(iterator, const _Tp&),
_M_fill_insert(iterator, size_type, const value_type&),
_M_range_insert(iterator, _ForwardIterator, _ForwardIterator,
std::forward_iterator_tag)): Use it.
Co-Authored-By: Paolo Carlini <pcarlini@suse.de>
From-SVN: r123424
2007-04-02 10:15:50 +00:00
Paolo Carlini
3d919c620f
PR libstdc++/31401 (vstring bits)
...
2007-04-02 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/31401 (vstring bits)
* include/ext/vstring.tcc (find(const _CharT*, size_type,
size_type)): Avoid unsigned overflow.
From-SVN: r123422
2007-04-02 10:08:50 +00:00
Paolo Carlini
5b3f6d1a46
locale_facets.tcc (num_put<>::do_put(iter_type, ios_base&, char_type, const void*)): Fix for sizeof(const void*) > sizeof(unsigned long).
...
2007-04-02 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (num_put<>::do_put(iter_type,
ios_base&, char_type, const void*)): Fix for sizeof(const void*)
> sizeof(unsigned long).
From-SVN: r123421
2007-04-02 09:49:31 +00:00
Andreas Tobler
df848e82e3
poly_laguerre.tcc: Missing s/__alpha/__alpha1, line 278.
...
2007-04-01 Andreas Tobler <a.tobler@schweiz.org>
* include/tr1/poly_laguerre.tcc: Missing s/__alpha/__alpha1, line 278.
From-SVN: r123410
2007-04-01 23:03:42 +02:00
Richard Henderson
f070285a7b
poly_laguerre.tcc: s/__alpha/__alpha1/g.
...
* include/tr1/poly_laguerre.tcc: s/__alpha/__alpha1/g.
* include/tr1/ell_integral.tcc: Likewise.
From-SVN: r123407
2007-04-01 11:28:16 -07:00
Paolo Carlini
232c492526
stl_bvector.h (_M_fill_insert(iterator, size_type, bool), [...]): Move out of line...
...
2007-03-31 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_bvector.h (_M_fill_insert(iterator, size_type,
bool), _M_insert_range(iterator, _ForwardIterator, _ForwardIterator,
std::forward_iterator_tag), _M_insert_aux(iterator, bool)): Move
out of line...
* include/bits/vector.tcc: ... here.
From-SVN: r123389
2007-03-31 19:48:41 +00:00
Paolo Carlini
cb68ec5005
re PR c++/26099 (support for type traits is not available)
...
gcc/
2007-03-30 Paolo Carlini <pcarlini@suse.de>
PR c++/26099
* c-common.h (enum rid): Add RID_HAS_NOTHROW_ASSIGN,
RID_HAS_NOTHROW_CONSTRUCTOR, RID_HAS_NOTHROW_COPY,
RID_HAS_TRIVIAL_ASSIGN, RID_HAS_TRIVIAL_CONSTRUCTOR,
RID_HAS_TRIVIAL_COPY, RID_HAS_TRIVIAL_DESTRUCTOR,
RID_HAS_VIRTUAL_DESTRUCTOR, RID_IS_ABSTRACT, RID_IS_BASE_OF,
RID_IS_CONVERTIBLE_TO, RID_IS_CLASS, RID_IS_EMPTY, RID_IS_ENUM,
RID_IS_POD, RID_IS_POLYMORPHIC, RID_IS_UNION, as
C++ extensions.
* doc/extend.texi (Extensions to the C++ Language): Add Type Traits.
gcc/cp/
2007-03-30 Paolo Carlini <pcarlini@suse.de>
PR c++/26099
* cp-tree.h (enum cp_trait_kind, struct tree_trait_expr,
TRAIT_EXPR_TYPE1, TRAIT_EXPR_TYPE2, TRAIT_EXPR_KIND): Add.
(enum cp_tree_node_structure_enum, union lang_tree_node): Update.
(CLASS_TYPE_NON_UNION_P): Add.
(struct lang_type_class): Add has_complex_dflt.
(TYPE_HAS_COMPLEX_DFLT, TYPE_HAS_TRIVIAL_DFLT): Add.
(locate_copy, locate_ctor, locate_dtor, finish_trait_expr): Declare.
* cp-tree.def: Add TRAIT_EXPR.
* cp-objcp-common.c (cp_tree_size): Add TRAIT_EXPR case.
* lex.c (struct resword): Add __has_nothrow_assign,
__has_nothrow_constructor, __has_nothrow_copy, __has_trivial_assign,
__has_trivial_constructor, __has_trivial_copy,
__has_trivial_destructor, __has_virtual_destructor, __is_abstract,
__is_base_of, __is_class, __is_convertible_to, __is_empty, __is_enum,
__is_pod, __is_polymorphic, __is_union.
* parser.c (cp_parser_primary_expression): Deal with the new RIDs.
(cp_parser_trait_expr): New.
* semantics.c (finish_trait_expr, trait_expr_value
classtype_has_nothrow_copy_or_assign_p): New.
* method.c (locate_copy, locate_ctor, locate_dtor): Do not define
as static.
* decl.c (cp_tree_node_structure): Add TRAIT_EXPR.
* class.c (check_bases, check_field_decl, check_bases_and_members):
Deal with TYPE_HAS_COMPLEX_DFLT (t) too.
* pt.c (uses_template_parms, tsubst_copy_and_build,
value_dependent_expression_p, type_dependent_expression_p): Deal with
TRAIT_EXPR.
* tree.c (cp_walk_subtrees): Deal with TRAIT_EXPR.
gcc/testsuite/
2007-03-30 Paolo Carlini <pcarlini@suse.de>
PR c++/26099
* g++.dg/ext/is_base_of.C: New.
* g++.dg/ext/has_virtual_destructor.C: New.
* g++.dg/ext/is_polymorphic.C: New.
* g++.dg/ext/is_base_of_diagnostic.C: New.
* g++.dg/ext/is_enum.C: New.
* g++.dg/ext/has_nothrow_assign.C: New.
* g++.dg/ext/has_nothrow_constructor.C: New.
* g++.dg/ext/is_empty.C: New.
* g++.dg/ext/has_trivial_copy.C: New.
* g++.dg/ext/has_trivial_assign.C: New.
* g++.dg/ext/is_abstract.C: New.
* g++.dg/ext/is_pod.C: New.
* g++.dg/ext/has_nothrow_copy.C: New.
* g++.dg/ext/is_class.C: New.
* g++.dg/ext/has_trivial_constructor.C: New.
* g++.dg/ext/is_union.C: New.
* g++.dg/ext/has_trivial_destructor.C: New.
* g++.dg/tree-ssa/pr22444.C: Adjust, avoid __is_pod.
* g++.dg/template/crash43.C: Likewise.
libstdc++-v3/
2007-03-30 Paolo Carlini <pcarlini@suse.de>
PR c++/26099
* include/bits/cpp_type_traits.h (struct __is_pod, struct __is_empty):
Remove.
* include/bits/valarray_array.h: Adjust.
* include/bits/allocator.h: Likewise.
* include/bits/stl_tree.h: Likewise.
From-SVN: r123366
2007-03-30 19:45:57 +00:00
Paolo Carlini
1c917b030e
re PR libstdc++/31401 (string find behaves strange when searching from npos)
...
2007-03-30 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/31401
* include/bits/basic_string.tcc (find(const _CharT*, size_type,
size_type)): Avoid unsigned overflow.
* testsuite/21_strings/basic_string/find/char/4.cc: New.
* testsuite/21_strings/basic_string/find/wchar_t/4.cc: Likewise.
From-SVN: r123361
2007-03-30 17:10:50 +00:00
Paolo Carlini
7558d8101e
fstream.tcc (basic_filebuf<>::underflow): Don't call codecvt::in at all if _M_ext_next >= _M_ext_end.
...
2007-03-27 Paolo Carlini <pcarlini@suse.de>
* include/bits/fstream.tcc (basic_filebuf<>::underflow):
Don't call codecvt::in at all if _M_ext_next >= _M_ext_end.
* testsuite/27_io/basic_filebuf/underflow/char/3.cc: New.
From-SVN: r123260
2007-03-27 15:51:41 +00:00
Benjamin Kosnik
5ad2f32df6
complex.h: Without __GXX_EXPERIMENTAL_CXX0X__ include_next complex.h.
...
2007-03-26 Benjamin Kosnik <bkoz@redhat.com>
* include/c_compatibility/complex.h: Without
__GXX_EXPERIMENTAL_CXX0X__ include_next complex.h.
* include/c_compatibility/fenv.h: Same.
* include/c_compatibility/inttypes.h: Same.
* include/c_compatibility/stdbool.h: Same.
* include/c_compatibility/stdint.h: Same.
* include/c_compatibility/tgmath.h: Same.
* include/tr1/cinttypes: Use include_next.
* include/tr1/cstdint: Same.
* include/tr1/cstdbool: Same.
* acinclude.m4 (GLIBCXX_ENABLE_C99): Add check for tgmath.h
* configure: Regenerate.
* config.h.in: Same.
From-SVN: r123214
2007-03-26 10:41:41 +00:00