Jonathan Wakely
ee5ca78921
valarray-inst.cc, [...]: Fix comment typos.
...
* src/valarray-inst.cc, include/ext/atomicity.h,
include/ext/concurrence.h, include/bits/basic_string.h,
include/bits/fstream.tcc, include/ext/vstring.h: Fix comment typos.
From-SVN: r128915
2007-10-01 21:49:39 +01:00
Johannes Singler
c2ba97097b
Add parallel mode.
...
2007-09-11 Johannes Singler <singler@ira.uka.de>
Leonor Frias Moya <lfrias@lsi.upc.edu>
Felix Putze <kontakt@felix-putze.de>
Marius Elvert <marius.elvert@ira.uka.de>
Felix Bondarenko <f.bondarenko@web.de>
Robert Geisberger <robert.geisberger@stud.uni-karlsruhe.de>
Robin Dapp <r.dapp@freenet.de>
Benjamin Kosnik <bkoz@redhat.com>
Add parallel mode.
* include/parallel: New.
* include/parallel/iterator.h: New.
* include/parallel/multiway_merge.h: New.
* include/parallel/parallel.h: New.
* include/parallel/algorithm
* include/parallel/find_selectors.h: New.
* include/parallel/losertree.h: New.
* include/parallel/list_partition.h: New.
* include/parallel/types.h: New.
* include/parallel/for_each.h: New.
* include/parallel/multiseq_selection.h: New.
* include/parallel/workstealing.h: New.
* include/parallel/base.h: New.
* include/parallel/par_loop.h: New.
* include/parallel/numeric
* include/parallel/features.h: New.
* include/parallel/quicksort.h: New.
* include/parallel/algorithmfwd.h: New.
* include/parallel/equally_split.h: New.
* include/parallel/compiletime_settings.h: New.
* include/parallel/for_each_selectors.h: New.
* include/parallel/basic_iterator.h: New.
* include/parallel/omp_loop_static.h: New.
* include/parallel/random_shuffle.h: New.
* include/parallel/balanced_quicksort.h: New.
* include/parallel/set_operations.h: New.
* include/parallel/tags.h: New.
* include/parallel/merge.h: New.
* include/parallel/tree.h: New.
* include/parallel/settings.h: New.
* include/parallel/unique_copy.h: New.
* include/parallel/multiway_mergesort.h: New.
* include/parallel/numericfwd.h: New.
* include/parallel/search.h: New.
* include/parallel/partition.h: New.
* include/parallel/compatibility.h: New.
* include/parallel/algobase.h: New.
* include/parallel/find.h: New.
* include/parallel/partial_sum.h: New.
* include/parallel/algo.h: New.
* include/parallel/omp_loop.h: New.
* include/parallel/queue.h: New.
* include/parallel/timing.h: New.
* include/parallel/sort.h: New.
* include/parallel/checkers.h: New.
* include/parallel/random_number.h: New.
* include/bits/algorithmfwd.h: New.
* acinclude.m4 (GLIBCXX_ENABLE_PARALLEL): New.
* configure.host: Add atomic_flags.
* configure.ac: Export ATOMIC_FLAGS, call GLIBCXX_ENABLE_PARALLEL.
* src/Makefile.am: Add parallel_list rules.
* include/Makefile.am: Add parallel files.
* testsuite/Makefile.am (check-parallel): Add.
(check-performance-parallel): Add.
* config.h.in: Regenerate.
* configure: Same.
* libsupc++/Makefile.in: Same.
* testsuite/Makefile.in: Same.
* Makefile.in: Same.
* libmath/Makefile.in: Same.
* include/Makefile.in: Same.
* src/Makefile.in: Same.
* po/Makefile.in: Same.
* config/abi/pre/gnu.ver: Export parallel list bits.
* docs/html/parallel_mode.html: New.
* docs/html/documentation.html: Add link.
* docs/doxygen/user.cfg.in: Adjust for new files and directory.
* docs/doxygen/doxygroups.cc: Adjust namespace markup.
* include/debug/set.h: Adjust for _GLIBCXX_STD_D or _P change.
* include/debug/bitset: Same.
* include/debug/multiset.h: Same.
* include/debug/vector: Same.
* include/debug/map.h: Same.
* include/debug/deque: Same.
* include/debug/list: Same.
* include/debug/debug.h: Same.
* include/debug/multimap.h: Same.
* include/std/algorithm: Same.
* include/std/numeric: Same.
* include/std/bitset: Same.
* include/std/string: Same.
* include/ext/hash_map: Same.
* include/ext/hash_set: Same.
* include/bits/stl_list.h: Same.
* include/bits/stl_map.h: Same.
* include/bits/stl_algobase.h: Same.
* include/bits/stl_set.h: Same.
* include/bits/stl_multimap.h: Same.
* include/bits/stl_vector.h: Same.
* include/bits/stl_numeric.h: Same.
* include/bits/stl_deque.h: Same.
* include/bits/stl_multiset.h: Same.
* include/bits/char_traits.h: Same.
* include/bits/stl_algo.h: Same.
* include/bits/c++config: Same.
* include/bits/vector.tcc: Same.
* include/bits/deque.tcc: Same.
* include/bits/stl_bvector.h: Same.
* include/bits/list.tcc: Same.
* src/list.cc: Same.
* src/parallel_list.cc: New.
* testsuite/lib/libstdc++.exp (check_v3_target_parallel_mode): New.
* testsuite/lib/dg-options.exp (dg-require-parallel-mode): New.
* scripts/testsuite_flags.in (--cxxparallelflags): New.
* scripts/check_performance: Adjust.
* testsuite/25_algorithms/headers/parallel_algorithm.cc: New.
* testsuite/25_algorithms/headers/algorithm_parallel_mode.cc: New.
* testsuite/25_algorithms/headers/parallel_algorithm_mixed1.cc: New.
* testsuite/25_algorithms/headers/parallel_algorithm_mixed2.cc: New.
* testsuite/26_numerics/headers/numeric/parallel_numeric.cc: New.
* testsuite/26_numerics/headers/numeric/numeric_parallel_mode.cc: New.
* testsuite/26_numerics/headers/numeric/
parallel_numeric_mixed1.cc: New.
* testsuite/26_numerics/headers/numeric/
parallel_numeric_mixed2.cc: New.
Co-Authored-By: Benjamin Kosnik <bkoz@redhat.com>
Co-Authored-By: Felix Bondarenko <f.bondarenko@web.de>
Co-Authored-By: Felix Putze <kontakt@felix-putze.de>
Co-Authored-By: Leonor Frias Moya <lfrias@lsi.upc.edu>
Co-Authored-By: Marius Elvert <marius.elvert@ira.uka.de>
Co-Authored-By: Robert Geisberger <robert.geisberger@stud.uni-karlsruhe.de>
Co-Authored-By: Robin Dapp <r.dapp@freenet.de>
From-SVN: r128395
2007-09-11 22:32:51 +00:00
Benjamin Kosnik
9adfc73cd3
functional_hash.h: Add ext/numeric_traits.h.
...
2007-09-08 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/functional_hash.h: Add ext/numeric_traits.h.
* include/tr1/functional_hash.h Same.
* include/tr1/functional: Remove string, ext/type_traits.h includes.
* include/tr1_impl/functional_hash.h: Move string, wstring
definitions for std::<hash>::operator into separate file.
* include/std/functional
* src/hash.cc: New, move definitions here.
* src/hash_c++0x.cc: Same.
* src/Makefile.am: Add new source files.
* configure: Regenerate.
* Makefile.in: Same.
* src/Makefile.in: Same.
* po/Makefile.in: Same.
* libmath/Makefile.in: Same.
* libsupc++/Makefile.in: Same.
* testsuite/Makefile.in: Same.
* config/abi/pre/gnu.ver: Add symbols.
* config/abi/pre/gnu-versioned-namespace.ver: Same, fix.
From-SVN: r128278
2007-09-09 00:05:13 +00:00
Benjamin Kosnik
bd1a56a0c3
libstdc++.exp: Check CXXFLAGS.
...
2007-09-06 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/lib/libstdc++.exp: Check CXXFLAGS.
* scripts/testsuite_flags.in: CXXFLAGS_default, matching dejagnu.
* include/std/ostream: Spacing tweak.
* include/ext/hashtable.h: Use <algorithm>.
* include/ext/slist: Same.
* include/ext/rope: Same.
* include/bits/stl_function.h: Format.
* include/tr1_impl/array: Remove section number in doxygen markup.
* src/list.cc: Comment tweak.
* docs/doxygen/user.cfg.in: Update for include/tr1_impl.
* testsuite/25_algorithms/search_n/iterator.cc: Add using declaration.
* testsuite/25_algorithms/nth_element/1.cc: Same.
* testsuite/21_strings/char_traits/requirements/short/1.cc: Use
char_type typedef to the underlying character type.
* testsuite/21_strings/char_traits/requirements/wchar_t/typedefs.cc:
Remove -ansi -pedantic-errors.
* testsuite/21_strings/char_traits/requirements/char/typedefs.cc: Same.
* testsuite/tr1/6_containers/headers/functional/synopsis.cc:
Remove specializations.
From-SVN: r128225
2007-09-07 03:01:53 +00:00
Benjamin Kosnik
0646d8a378
system_error: New file.
...
2007-08-23 Benjamin Kosnik <bkoz@redhat.com>
* include/std/system_error: New file.
* src/system_error.cc: New file.
* src/Makefile.am (sources): Add.
* src/Makefile.in: Regenerate.
* include/Makefile.am (std_headers): Add system_error.
* include/Makefile.in: Regenerate.
* acinclude.m4 (GLIBCXX_CHECK_SYSTEM_ERROR): New.
* configure.ac: Call it.
* config.h.in: Regenerate.
* include/bits/functional_hash.h: Add hash<error_code>.
* include/std/ostream: Add inserters for error_code.
* docs/doxygen/user.cfg.in: Add system_error.
* config/abi/pre/gnu.ver(GLIBCXX_3.4.10): Add new symbols.
* testsuite/19_diagnostics/error_code: New.
* testsuite/19_diagnostics/error_code/cons: Same.
* testsuite/19_diagnostics/error_code/cons/1.cc: Same.
* testsuite/19_diagnostics/error_code/operators: Same.
* testsuite/19_diagnostics/error_code/operators/bool.cc: Same.
* testsuite/19_diagnostics/error_code/operators/bool_neg.cc: Same.
* testsuite/19_diagnostics/error_code/operators/equal.cc: Same.
* testsuite/19_diagnostics/error_code/operators/not_equal.cc: Same.
* testsuite/19_diagnostics/error_category: Same.
* testsuite/19_diagnostics/error_category/cons: Same.
* testsuite/19_diagnostics/error_category/cons/copy_neg.cc: Same.
* testsuite/19_diagnostics/error_category/cons/default.cc: Same.
* testsuite/19_diagnostics/error_category/operators: Same.
* testsuite/19_diagnostics/error_category/operators/equal.cc: Same.
* testsuite/19_diagnostics/error_category/operators/not_equal.cc: Same.
* testsuite/19_diagnostics/headers/system_error: Same.
* testsuite/19_diagnostics/headers/system_error/
types_std_c++0x.cc: Same.
* testsuite/19_diagnostics/headers/system_error/std_c++0x_neg.cc: Same.
* testsuite/19_diagnostics/system_error: Same.
* testsuite/19_diagnostics/system_error/
cons_virtual_derivation.cc: Same.
* testsuite/19_diagnostics/system_error/cons-1.cc: Same.
* testsuite/19_diagnostics/system_error/what-1.cc: Same.
* testsuite/19_diagnostics/system_error/what-2.cc: Same.
* testsuite/19_diagnostics/system_error/what-big.cc: Same.
* testsuite/19_diagnostics/system_error/what-3.cc: Same.
* testsuite/19_diagnostics/system_error/what-4.cc: Same.
* testsuite/27_io/basic_ostream/inserters_other/wchar_t/
error_code.cc: Same.
* testsuite/27_io/basic_ostream/inserters_other/char/
error_code.cc: Same.
* testsuite/tr1/6_containers/hash/operators: New.
* testsuite/tr1/6_containers/hash/operators/size_t.cc: Same.
* testsuite/23_containers/hash: Move...
* testsuite/20_util/hash: ... here.
* testsuite/20_util/hash/operators: New.
* testsuite/20_util/hash/operators/size_t.cc: New.
* testsuite/20_util/function_objects/bad_function_call: Move...
* testsuite/20_util/bad_function_call: ...here.
From-SVN: r127744
2007-08-23 16:16:41 +00:00
Jim Blandy
593124a736
Makefile.am (libstdc++-symbol.ver): Make sure the build tree copy of libstdc++-symbol.ver is writeable.
...
* src/Makefile.am (libstdc++-symbol.ver): Make
sure the build tree copy of libstdc++-symbol.ver is writeable.
* src/Makefile.in: Regenerated.
From-SVN: r127279
2007-08-07 21:05:16 +00:00
Paolo Carlini
5dddb7e5eb
re PR libstdc++/31518 (_GLIBCXX_DEBUG error message formatter line width not configurable)
...
2007-07-03 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/31518
* include/debug/formatter.h (_Error_formatter::_M_get_max_length): New.
(_Error_formatter::_Error_formatter): Use it.
* src/debug.cc: Define.
(_Error_formatter::_M_error): Tweak.
* configure.ac: Adjust version to 6:10:0.
* config/abi/pre/gnu.ver: Export _Error_formatter::_M_get_max_length
at GLIBCXX_3.4.10.
* testsuite/util/testsuite_abi.cc: Add GLIBCXX_3.4.10.
* docs/html/debug.html: Document.
* configure: Regenerate.
From-SVN: r126287
2007-07-04 00:09:22 +00:00
Steve Ellcey
1cf3d07da6
ltmain.sh: Update from ToT Libtool.
...
* ltmain.sh: Update from ToT Libtool.
* libtool.m4: Update from ToT Libtool.
* ltsugar.m4: New. Update from ToT Libtool.
* ltversion.m4: New. Update from ToT Libtool.
* ltoptions.m4: New. Update from ToT Libtool.
* ltconfig: Remove.
* ltcf-c.sh: Remove.
* ltcf-cxx.sh: Remove.
* ltcf-gcj.sh: Remove.
* Regenerate all subdirs
From-SVN: r125032
2007-05-24 16:37:27 +00:00
Paolo Carlini
538075fe42
pod_char_traits.h (char_traits<>::move): Use __builtin_memmove.
...
2007-05-11 Paolo Carlini <pcarlini@suse.de>
* include/ext/pod_char_traits.h (char_traits<>::move):
Use __builtin_memmove.
* include/bits/locale_classes.h (locale::_Impl::_M_check_same_name,
collate_byname(const char*, size_t)): Use __builtin_strcmp.
* include/bits/locale_facets.h: Use __builtin_mem* and
__builtin_str* everywhere.
* include/bits/codecvt.h (codecvt_byname(const char*, size_t)):
Use __builtin_strcmp.
* include/bits/char_traits.h: Use __builtin_mem* everywhere.
* include/bits/fstream.tcc (basic_filebuf<>::underflow, imbue):
Use __builtin_memcpy and __builtin_memmove.
* include/bits/locale_facets_nonio.h (moneypunct_byname(const char*,
size_t __refs)): Use __builtin_strcmp.
* include/std/bitset (bitset<>::_M_do_reset): Use __builtin_memset.
* config/locale/gnu/c_locale.h: Use __builtin_strlen, __builtin_strcmp,
and __builtin_memcpy.
* config/locale/gnu/messages_members.h: Likewise.
* config/locale/gnu/time_members.h: Likewise.
* config/locale/generic/c_locale.h: Likewise.
* config/locale/generic/messages_members.h: Likewise.
* config/locale/generic/time_members.h: Likewise.
* config/os/gnu-linux/ctype_noninline.h: Likewise, avoid strdup.
* config/os/tpf/ctype_noninline.h: Likewise.
* config/locale/generic/codecvt_members.cc: Include <cstring>.
* config/locale/generic/ctype_members.cc: Likewise.
* config/locale/generic/collate_members.cc: Likewise.
* config/locale/gnu/c++locale_internal.h: Likewise.
* config/locale/darwin/ctype_members.cc: Likewise.
* src/ctype.cc: Likewise.
* testsuite/19_diagnostics/logic_error/what-1.cc: Likewise.
* testsuite/19_diagnostics/logic_error/what-2.cc: Likewise.
* testsuite/19_diagnostics/runtime_error/what-1.cc: Likewise.
* testsuite/19_diagnostics/runtime_error/what-2.cc: Likewise.
* testsuite/19_diagnostics/runtime_error/what-3.cc: Likewise.
* config/locale/gnu/messages_members.cc: Avoid strdup.
* config/locale/gnu/monetary_members.cc: Likewise.
* config/locale/gnu/time_members.cc: Likewise.
* config/locale/gnu/time_members.cc: Likewise.
* config/locale/generic/c_locale.cc: Likewise.
From-SVN: r124623
2007-05-11 18:58:08 +00:00
Jason Merrill
d05f74f16e
re PR other/28145 (C++ (throw() and catch(...) {/* fall through */ } ) and pthread cancellation are incompatible (at least with NPTL))
...
PR c++/28145
* libsupc++/cxxabi.h (__forced_unwind, __foreign_exception):
New classes.
* libsupc++/eh_exception.cc: Define their destructors.
* config/abi/pre/gnu.ver: Export their type_infos.
* config/abi/pre/gnu-versioned-namespace.ver: Likewise.
* libsupc++/eh_personality.cc: A handler for abi::__forced_unwind
matches a forced unwind, and a handler for abi::__foreign_exception
matches a foreign exception.
* include/bits/istream.tcc: Rethrow forced unwind.
* include/bits/ostream.tcc: Likewise.
* include/bits/ostream_insert.h: Likewise.
* include/bits/basic_string.tcc (operator>>, getline): Likewise.
* include/bits/fstream.tcc (basic_filebuf::close): Likewise.
* include/ext/vstring.cc (operator>>, getline): Likewise.
* src/istream.cc: Likewise.
* src/compatibility.cc (basic_istream::ignore): Likewise.
* include/std/bitset (operator>>): Likewise.
* include/std/fstream (basic_filebuf::close): Remove throw() spec.
* libsupc++/cxxabi-internal.h: Split out from...
* libsupc++/cxxabi.h: ...here.
From-SVN: r124517
2007-05-07 17:27:54 -04: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
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
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
4ba851b58b
PR libstdc++/28080 (partial)
...
2007-03-06 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/28080 (partial)
* include/bits/stl_algobase.h: Do not include <cstdlib>.
* src/localename.cc: Do it here.
* src/ctype.cc: Likewise.
* include/ext/pb_ds/detail/map_debug_base.hpp: Likewise.
* include/ext/pb_ds/exception.hpp: Likewise.
* include/ext/pb_ds/list_update_policy.hpp: Likewise.
* include/bits/stl_algo.h: Likewise.
* include/tr1/random: Likewise.
* testsuite/util/testsuite_hooks.cc: Likewise.
* testsuite/util/testsuite_abi_check.cc: Likewise.
* testsuite/util/testsuite_abi.cc: Likewise.
* testsuite/util/performance/assoc/timing/
tree_order_statistics_test.hpp: Likewise.
* config/locale/darwin/ctype_members.cc: Likewise.
* config/locale/gnu/c++locale_internal.h: Likewise.
* config/locale/generic/ctype_members.cc: Likewise.
* config/locale/generic/time_members.cc: Likewise.
* include/ext/pb_ds/detail/resize_policy/
hash_load_check_resize_trigger_imp.hpp: Qualify abort.
* testsuite/util/performance/assoc/timing/
multimap_find_test.hpp: Likewise.
* include/std/valarray: Do include <cstdlib>.
* include/tr1/hashtable: Likewise.
From-SVN: r122628
2007-03-06 17:43:27 +00:00
Benjamin Kosnik
af13a7a6ec
acinclude.m4 (GLIBCXX_ENABLE_CHEADERS): Add c_global.
...
2007-03-04 Benjamin Kosnik <bkoz@redhat.com>
* acinclude.m4 (GLIBCXX_ENABLE_CHEADERS): Add c_global.
* configure.host (c_model): Set default to c_global.
* configure: Regenerate.
* include/Makefile.am (c_compatibility_headers_extra): Make
conditional on GLIBCXX_C_HEADERS_COMPATIBILITY.
(c_base_headers_extra): Make conditional on GLIBCXX_C_HEADERS_EXTRA.
(c_compatibility_headers): Make conditional on c/c_std/c_global.
* include/Makefile.in: Regenerate.
* docs/html/configopts.html: Add c_global information to
--enable-cheaders. Eventually, "c_std" should mean "C" includes
that are in namespace std, with optional C++ "C" compatibility
includes to inject into global scope. And "c_global" should mean
"C" includes that are in the global namespace, with C++ includes
injecting into namespace std and no C++ "C" compatibility
includes.
2007-03-04 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/c++config: Add _GLIBCXX_NAMEPACE_C.
Add _GLIBCXX_NAMESPACE_ASSOCIATION_CXX200x.
Add _GLIBCXX_TR1 as namespace macro.
Add namespace associations for std::__cxx200x conditionally.
* include/c_compatibility/assert.h: Correct doxygen markup,
conditionalize the global injections on _GLIBCXX_NAMESPACE_C.
* include/c_compatibility/ctype.h: Same.
* include/c_compatibility/errno.h: Same.
* include/c_compatibility/float.h: Same.
* include/c_compatibility/iso646.h: Same.
* include/c_compatibility/limits.h: Same.
* include/c_compatibility/locale.h: Same.
* include/c_compatibility/math.h: Same.
* include/c_compatibility/setjmp.h: Same.
* include/c_compatibility/signal.h: Same.
* include/c_compatibility/stdarg.h: Same.
* include/c_compatibility/stddef.h: Same.
* include/c_compatibility/stdio.h: Same.
* include/c_compatibility/stdlib.h: Same.
* include/c_compatibility/string.h: Same.
* include/c_compatibility/time.h: Same.
* include/c_compatibility/wchar.h: Same.
* include/c_compatibility/wctype.h: Same.
* include/c_compatibility/complex.h: Add.
* 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/c_global/cassert: Add, use include_next, use C++0x features
if -std=c++0x.
* include/c_global/cctype: Same.
* include/c_global/cerrno: Same.
* include/c_global/cfloat: Same.
* include/c_global/ciso646: Same.
* include/c_global/climits: Same.
* include/c_global/clocale: Same.
* include/c_global/cmath: Same.
* include/c_global/cmath.tcc: Same.
* include/c_global/csetjmp: Same.
* include/c_global/csignal: Same.
* include/c_global/cstdarg: Same.
* include/c_global/cstddef: Same.
* include/c_global/cstdio: Same.
* include/c_global/cstdlib: Same.
* include/c_global/cstring: Same.
* include/c_global/ctime: Same.
* include/c_global/cwchar: Same.
* include/c_global/cwctype: Same.
* include/c_global/ccomplex: Add.
* include/c_global/cfenv: Add.
* include/c_global/cinttypes: Add.
* include/c_global/cstdbool: Add.
* include/c_global/cstdint: Add.
* include/c_global/ctgmath: Add.
* include/std/algorithm: Use C++0x features if -std=c++0x.
* include/std/bitset: Same.
* include/std/complex: Same.
* include/std/deque: Same.
* include/std/fstream: Same.
* include/std/functional: Same.
* include/std/iomanip: Same.
* include/std/ios: Same.
* include/std/iosfwd: Same.
* include/std/iostream: Same.
* include/std/istream: Same.
* include/std/iterator: Same.
* include/std/limits: Same.
* include/std/list: Same.
* include/std/locale: Same.
* include/std/map: Same.
* include/std/memory: Same.
* include/std/numeric: Same.
* include/std/ostream: Same.
* include/std/queue: Same.
* include/std/set: Same.
* include/std/sstream: Same.
* include/std/stack: Same.
* include/std/stdexcept: Same.
* include/std/streambuf: Same.
* include/std/string: Same.
* include/std/utility: Same.
* include/std/valarray: Same.
* include/std/vector: Same.
* include/std/array: Add.
* include/std/random: Add.
* include/std/regex: Add.
* include/std/tuple: Add.
* include/std/type_traits: Add.
* include/std/unordered_map: Add.
* include/std/unordered_set: Add.
* include/std/c++0x_warning.h: Add.
* include/tr1/array: Switch namespaces based on _GLIBCXX_TR1.
* include/tr1/boost_shared_ptr.h: Same.
* include/tr1/cctype: Same.
* include/tr1/cfenv: Same.
* include/tr1/cinttypes: Same.
* include/tr1/cmath: Same.
* include/tr1/common.h: Same.
* include/tr1/complex: Same.
* include/tr1/cstdint: Same.
* include/tr1/cstdio: Same.
* include/tr1/cstdlib: Same.
* include/tr1/cwchar: Same.
* include/tr1/cwctype: Same.
* include/tr1/functional: Same.
* include/tr1/functional_hash.h: Same.
* include/tr1/functional_iterate.h: Same.
* include/tr1/hashtable: Same.
* include/tr1/hashtable_policy.h: Same.
* include/tr1/math.h: Same.
* include/tr1/memory: Same.
* include/tr1/random: Same.
* include/tr1/random.tcc: Same.
* include/tr1/ref_fwd.h: Same.
* include/tr1/repeat.h: Same.
* include/tr1/stdlib.h: Same.
* include/tr1/tuple: Same.
* include/tr1/tuple_iterate.h: Same.
* include/tr1/type_traits: Same.
* include/tr1/type_traits_fwd.h: Same.
* include/tr1/unordered_map: Same.
* include/tr1/unordered_set: Same.
* include/tr1/utility: Same.
* include/tr1/ccomplex: Add.
* include/tr1/complex.h: Add.
* include/tr1/regex: Add.
* include/Makefile.am: Add C++0x headers, "C" compatibility headers.
* include/Makefile.in: Regenerate.
* testsuite/tr1/headers.cc: Add in regex/complex.
* testsuite/17_intro/headers/c++200x/all.cc: New.
* testsuite/17_intro/headers/c++200x/all_multiple_inclusion.cc: Same.
* testsuite/17_intro/using_namespace_std_tr1_neg.cc: Same.
* testsuite/18_support/headers/cstdbool/std_c++0x_neg.cc: Same.
* testsuite/18_support/headers/cstdint/std_c++0x_neg.cc: Same.
* testsuite/18_support/headers/cstdint/types_std_c++0x.cc: Same.
* testsuite/20_util/enable_shared_from_this/requirements/
explicit_instantiation.cc: Same.
* testsuite/20_util/headers/functional/types_std_c++0x.cc: Same.
* testsuite/20_util/headers/functional/
using_namespace_std_placeholders.cc: Same.
* testsuite/20_util/headers/memory/types_std_c++0x.cc: Same.
* testsuite/20_util/headers/type_traits/std_c++0x_neg.cc: Same.
* testsuite/20_util/headers/type_traits/types_std_c++0x.cc: Same.
* testsuite/20_util/shared_ptr/requirements/
explicit_instantiation.cc: Same.
* testsuite/20_util/weak_ptr/requirements/
explicit_instantiation.cc: Same.
* testsuite/23_containers/array/requirements/
explicit_instantiation.cc: Same.
* testsuite/23_containers/hash/requirements/
explicit_instantiation.cc: Same.
* testsuite/23_containers/headers/array/std_c++0x_neg.cc: Same.
* testsuite/23_containers/headers/tuple/std_c++0x_neg.cc: Same.
* testsuite/23_containers/headers/tuple/types_std_c++0x.cc: Same.
* testsuite/23_containers/headers/unordered_map/std_c++0x_neg.cc: Same.
* testsuite/23_containers/headers/unordered_set/std_c++0x_neg.cc: Same.
* testsuite/23_containers/tuple/requirements/
explicit_instantiation.cc: Same.
* testsuite/23_containers/unordered_map/requirements/
explicit_instantiation.cc: Same.
* testsuite/23_containers/unordered_multimap/requirements/
explicit_instantiation.cc: Same.
* testsuite/23_containers/unordered_multiset/requirements/
explicit_instantiation.cc: Same.
* testsuite/23_containers/unordered_set/requirements/
explicit_instantiation.cc: Same.
* testsuite/26_numerics/headers/ccomplex/std_c++0x_neg.cc: Same.
* testsuite/26_numerics/headers/cfenv/std_c++0x_neg.cc: Same.
* testsuite/26_numerics/headers/cfenv/types_std_c++0x.cc: Same.
* testsuite/26_numerics/headers/cmath/types_std_c++0x.cc: Same.
* testsuite/26_numerics/headers/cstdlib/types_std_c++0x.cc: Same.
* testsuite/26_numerics/headers/ctgmath/std_c++0x_neg.cc: Same.
* testsuite/26_numerics/headers/random/std_c++0x_neg.cc: Same.
* testsuite/26_numerics/headers/random/types_std_c++0x.cc: Same.
* testsuite/27_io/headers/cinttypes/std_c++0x_neg.cc: Same.
* testsuite/27_io/headers/cinttypes/types_std_c++0x.cc: Same.
* testsuite/28_regex/headers/regex/std_c++0x_neg.cc: Same.
* testsuite/tr1/8_c_compatibility/cfenv/types.cc: Rename ...
* testsuite/tr1/8_c_compatibility/cinttypes/types.cc: Same.
* testsuite/tr1/8_c_compatibility/cmath/types.cc: Same.
* testsuite/tr1/8_c_compatibility/cstdint/types.cc: Same.
* testsuite/tr1/8_c_compatibility/cstdlib/types.cc: Same.
* testsuite/tr1/8_c_compatibility/cfenv/types_std_tr1.cc: ...to this.
* testsuite/tr1/8_c_compatibility/cinttypes/types_std_tr1.cc: Same.
* testsuite/tr1/8_c_compatibility/cmath/types_std_tr1.cc: Same.
* testsuite/tr1/8_c_compatibility/cstdint/types_std_tr1.cc: Same.
* testsuite/tr1/8_c_compatibility/cstdlib/types_std_tr1.cc: Same.
From-SVN: r122533
2007-03-04 22:59:49 +00:00
Paolo Carlini
39b8cd70c2
PR libstdc++/28080 (partial)
...
2007-03-03 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/28080 (partial)
* include/bits/stl_algobase.h: Do not include <iosfwd>,
<bits/functexcept.h> is enough; adjust __copy_aux declarations;
remove declaration of copy overload for istreambuf_iterator /
ostreambuf_iterator.
* src/debug.cc: Include <cstdio>.
* include/ext/rope: Include <iosfwd>.
* include/bits/char_traits.h: Include <cstdio> and <cwchar>.
* include/bits/stl_algo.h: Remove declaration of find overload
for istreambuf_iterator.
* include/std/queue: Clean up includes.
* include/std/stack: Likewise.
* include/std/memory: Likewise.
* include/std/algorithm: Likewise.
* include/std/vector: Likewise.
* include/std/deque: Likewise.
* include/std/list: Likewise.
* include/bits/stl_tree.h: Likewise.
* testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Adjust
dg-error markers.
* testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Likewise.
* testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Likewise.
* testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Likewise.
* testsuite/23_containers/set/operators/1_neg.cc: Likewise.
* testsuite/23_containers/map/operators/1_neg.cc: Likewise.
* testsuite/20_util/auto_ptr/assign_neg.cc: Likewise.
* include/ext/type_traits.h: Fix type of __max_digits10; clean up
includes.
* testsuite/util/testsuite_hooks.h: Do not include <cstddef>.
* testsuite/util/testsuite_hooks.cc: Do it here.
From-SVN: r122502
2007-03-03 10:29:14 +00:00
Paolo Carlini
681a691966
PR libstdc++/28080 (partial)
...
2007-02-26 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/28080 (partial)
* include/std/bitset: Do not include <istream> and <ostream>,
<ios> is enough.
* include/std/iomanip: Do not include the whole <istream>,
<ios> is enough; do not include <functional>; reformat.
* include/std/functional: Do not include <cstddef>.
* include/std/list: Do not include <bits/stl_uninitialized.h>.
* include/std/numeric: Do not include the whole <iterator> and
<bits/stl_function.h>.
* include/std/valarray: Do not include <numeric>.
* include/bits/stl_numeric.h: Include <bits/concept_check.h>.
* src/iostream-inst.cc: Include <istream>.
* include/ext/functional: Include <cstddef>.
* testsuite/util/testsuite_hooks.h: Do not include <locale>,
<ctime> is enough; qualify tm.
* testsuite/util/testsuite_hooks.cc: Qualify tm.
2007-02-26 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.h (class ctype_byname<char>,
class ctype_byname<wchar_t>): Declare.
* src/ctype.cc (ctype_byname<wchar_t>::ctype_byname(const char*,
size_t), ctype_byname<wchar_t>::~ctype_byname): Define.
* config/locale/generic/ctype_members.cc (ctype_byname<char>::
ctype_byname(const char*, size_t), ctype_byname<char>::~ctype_byname):
Likewise.
* config/locale/gnu/ctype_members.cc (ctype_byname<char>::
ctype_byname(const char*, size_t), ctype_byname<char>::~ctype_byname):
Likewise.
* config/locale/darwin/ctype_members.cc (ctype_byname<char>::
ctype_byname(const char*, size_t), ctype_byname<char>::~ctype_byname):
Likewise.
* testsuite/22_locale/headers/locale/synopsis.cc: Remove xfail.
From-SVN: r122329
2007-02-26 09:36:39 +00:00
Benjamin Kosnik
4ffe6e87dc
enc_filebuf.h: Resurrect, update.
...
2007-01-29 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/enc_filebuf.h: Resurrect, update.
* include/ext/codecvt_specializations.h: Remove
_GLIBCXX_USE_ICONV, _GLIBCXX_USE_ENCODING_STATE.
* include/bits/localefwd.h: Remove declaration for __enc_traits.
* docs/html/22_locale/codecvt.html: Change __enc_traits to
encoding_state.
* scripts/testsuite_flags.in: Remove ICONV.
* configure.ac: Remove GLIBCXX_CHECK_ICONV_SUPPORT.
* acinclude.m4 (GLIBCXX_CHECK_ICONV_SUPPORT): Remove.
* crossconfig.m4: Remove use of GLIBCXX_CHECK_ICONV_SUPPORT.
* config.h.in: Remove HAVE_ICONV_CLOSE, HAVE_ICONV_OPEN,
HAVE_NL_LANGINFO, _GLIBCXX_USE_ICONV.
* include/Makefile.am: Uglify ICONV_CONST.
* configure: Regenerate.
* aclocal.m4: Regenerate.
* Makefile.in: Regenerate.
* src/Makefile.in: Regenerate.
* po/Makefile.in: Regenerate.
* libmath/Makefile.in: Regenerate.
* include/Makefile.in: Regenerate.
* libsupc++/Makefile.in: Regenerate.
* testsuite/Makefile.in: Regenerate.
* testsuite/ext/enc_filebuf/wchar_t/13189.cc: Use
dg-require-iconv, fix up for encoding_state changes.
* testsuite/ext/enc_filebuf/char/13189.cc: Same.
* testsuite/ext/enc_filebuf/char/13598.cc: Same.
* testsuite/22_locale/codecvt/unicode: Move...
* testsuite/22_locale/codecvt/unicode/char.cc: Move...
* testsuite/22_locale/codecvt/unicode/1.cc: Move...
* testsuite/22_locale/codecvt/unicode/wchar_t.cc: Move...
* testsuite/ext/codecvt: New.
* testsuite/ext/codecvt/char-1.cc: ...here. Also, use dg-require-iconv.
* testsuite/ext/codecvt/char-2.cc: ...here. Same.
* testsuite/ext/codecvt/1.cc: ...here. Same.
* testsuite/ext/codecvt/wchar_t.cc: ...here. Same.
* testsuite/22_locale/locale/cons/unicode: Delete directory.
* testsuite/22_locale/locale/cons/unicode/1.cc: Move...
* testsuite/22_locale/locale/cons/unicode.cc: ...here.
From-SVN: r121297
2007-01-29 18:22:37 +00:00
Ben Elliston
46bbeb652c
Revert revision 120457.
...
From-SVN: r120458
2007-01-05 11:03:35 +11:00
Ben Elliston
93c5d31c00
strstream.cc (strstreambuf::seekoff): Add parentheses around truth expression to eliminate a new warning from g++.
...
* src/strstream.cc (strstreambuf::seekoff): Add parentheses around
truth expression to eliminate a new warning from g++.
From-SVN: r120457
2007-01-05 10:43:14 +11:00
Ian Lance Taylor
2a67bec24f
re PR c++/19564 (-Wparentheses does not work with the C++ front-end)
...
PR c++/19564
PR c++/19756
gcc/:
* c-typeck.c (parser_build_binary_op): Move parentheses warnings
to warn_about_parentheses in c-common.c.
* c-common.c (warn_about_parentheses): New function.
* c-common.h (warn_about_parentheses): Declare.
* doc/invoke.texi (Warning Options): Update -Wparentheses
description.
gcc/cp/:
* parser.c (cp_parser_expression_stack_entry): Add field
lhs_type.
(cp_parser_binary_expression): Track tree code of left hand side
of expression. Use it when calling build_x_binary_op.
(cp_parser_selection_statement): Add if_p parameter. Change all
callers. Warn about ambiguous else.
(cp_parser_statement): Add if_p parameter. Change all callers.
(cp_parser_implicitly_scoped_statement): Likewise.
* typeck.c (build_x_binary_op): Add parameters arg1_code and
arg2_code. Change all callers. Call warn_about_parentheses.
* cp-tree.h (build_x_binary_op): Update declaration.
gcc/testsuite/:
* g++.dg/warn/Wparentheses-5.C: New test.
* g++.dg/warn/Wparentheses-6.C: New test.
* g++.dg/warn/Wparentheses-7.C: New test.
* g++.dg/warn/Wparentheses-8.C: New test.
* g++.dg/warn/Wparentheses-9.C: New test.
* g++.dg/warn/Wparentheses-10.C: New test.
* g++.dg/warn/Wparentheses-11.C: New test.
* g++.dg/warn/Wparentheses-12.C: New test.
* g++.dg/warn/Wparentheses-13.C: New test.
* g++.dg/warn/Wparentheses-14.C: New test.
* g++.dg/warn/Wparentheses-15.C: New test.
* g++.dg/warn/Wparentheses-16.C: New test.
* g++.dg/warn/Wparentheses-17.C: New test.
* g++.dg/warn/Wparentheses-18.C: New test.
* g++.dg/warn/Wparentheses-19.C: New test.
* g++.dg/warn/Wparentheses-20.C: New test.
* g++.dg/warn/Wparentheses-21.C: New test.
libstdc++-v3/:
* include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
Add parentheses around && within || to avoid warning.
(num_get<>::_M_extract_int): Likewise.
(money_get<>::_M_extract): Likewise.
(num_get<>::do_get(iter_type, iter_type, ios_base&,
ios_base::iostate&, void*&)): Add parentheses around & within | to
avoid warning.
(num_put<>::do_put(iter_type, ios_base&, char_type, const void*)):
Likewise.
* include/bits/streambuf_iterator.h (istreambuf_iterator::equal):
Add parentheses around && within || to avoid warning.
* libsupc++/tinfo.cc (__do_dyncast): Likewise.
* src/locale.cc (locale::_S_normalize_category): Likewise.
* include/bits/stl_tree.h (_Rb_tree<>::_M_insert_unique): Add
braces to avoid ambiguous else warning.
* src/strstream.cc (strstreambuf::_M_free): Likewise.
* src/tree.cc (_Rb_tree_rebalance_for_erase): Likewise.
From-SVN: r119855
2006-12-14 05:49:06 +00:00
Paolo Carlini
682b96647b
valarray-inst.cc (__gslice_to_index): Optimize performance.
...
2006-12-10 Paolo Carlini <pcarlini@suse.de>
* src/valarray-inst.cc (__gslice_to_index): Optimize performance.
* testsuite/performance/26_numerics/valarray_gslice_to_index.cc: New.
From-SVN: r119707
2006-12-10 16:47:27 +00:00
Benjamin Kosnik
78a5388739
throw_allocator.h: Consistent @file markup.
...
2006-11-29 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/throw_allocator.h: Consistent @file markup.
* include/ext/type_traits.h: Same.
* include/debug/hash_map: Same.
* include/debug/hash_multimap.h: Same.
* include/debug/set.h: Same.
* include/debug/hash_set.h: Same.
* include/debug/formatter.h: Same.
* include/debug/bitset: Same.
* include/debug/set: Same.
* include/debug/multiset.h: Same.
* include/debug/safe_sequence.h: Same.
* include/debug/hash_set: Same.
* include/debug/functions.h: Same.
* include/debug/safe_base.h: Same.
* include/debug/hash_multiset.h: Same.
* include/debug/safe_iterator.tcc: Same.
* include/debug/vector: Same.
* include/debug/map.h: Same.
* include/debug/deque: Same.
* include/debug/hash_map.h: Same.
* include/debug/string: Same.
* include/debug/macros.h: Same.
* include/debug/list: Same.
* include/debug/debug.h: Same.
* include/debug/map: Same.
* include/debug/safe_iterator.h: Same.
* include/debug/multimap.h: Same.
* config/cpu/generic/atomicity_mutex/atomicity.h: Same.
* config/cpu/generic/atomicity_builtins/atomicity.h: Same.
* config/cpu/generic/atomic_word.h: Same.
* include/tr1/memory: Same.
* include/tr1/random: Same.
* include/std/std_queue.h: Same.
* include/std/std_iterator.h: Same.
* include/std/std_bitset.h: Same.
* include/std/std_set.h: Same.
* include/std/std_vector.h: Same.
* include/std/std_deque.h: Same.
* include/std/std_utility.h: Same.
* include/std/std_stack.h: Same.
* include/std/std_string.h: Same.
* include/std/std_list.h: Same.
* include/std/std_map.h: Same.
* libsupc++/typeinfo: Same.
* libsupc++/exception: Same.
* libsupc++/exception_defines.h: Same.
* libsupc++/new: Same.
* include/ext/bitmap_allocator.h: Change namespace __balloc to
__detail.
* src/bitmap_allocator.cc: Same.
* include/bits/cpp_type_traits.h: Change __true_type and
__false_type from global to namespace std scope.
* include/ext/slist: Same.
* include/ext/vstring.h: Same.
* include/ext/vstring.tcc: Same.
* include/ext/rc_string_base.h: Same.
* include/ext/sso_string_base.h: Same.
* include/bits/codecvt.h: Adjust markup so that correct namespace
scope information is in all files.
* include/bits/locale_facets.h: Same. Include ctype_base directly.
* config/os/windiss/ctype_base.h: Add in namespace markup.
* config/os/newlib/ctype_base.h: Same.
* config/os/aix/ctype_base.h: Same.
* config/os/vxworks/ctype_base.h: Same.
* config/os/hpux/ctype_base.h: Same.
* config/os/mingw32/ctype_base.h: Same.
* config/os/gnu-linux/ctype_base.h: Same.
* config/os/tpf/ctype_base.h: Same.
* config/os/uclibc/ctype_base.h: Same.
* config/os/djgpp/ctype_base.h: Same.
* config/os/qnx/qnx6.1/ctype_base.h: Same.
* config/os/bsd/netbsd/ctype_base.h: Same.
* config/os/bsd/darwin/ctype_base.h: Same.
* config/os/bsd/freebsd/ctype_base.h: Same.
* config/os/irix/irix5.2/ctype_base.h: Same.
* config/os/irix/irix6.5/ctype_base.h: Same.
* config/os/solaris/solaris2.5/ctype_base.h: Same.
* config/os/solaris/solaris2.6/ctype_base.h: Same.
* config/os/solaris/solaris2.7/ctype_base.h: Same.
* config/os/generic/ctype_base.h: Same.
* include/tr1/mu_iterate.h: Same.
* include/tr1/tuple: Same.
* include/tr1/tuple_iterate.h: Same.
* include/tr1/tuple_defs.h: Same.
* include/tr1/random.tcc: Same.
* include/tr1/functional: Same.
* include/tr1/functional_iterate.h: Same.
* testsuite/ext/type_traits/remove_unsigned_integer_neg.cc: Line
number changes.
* testsuite/ext/type_traits/add_unsigned_floating_neg.cc: Same.
* testsuite/ext/type_traits/remove_unsigned_floating_neg.cc: Same.
* testsuite/ext/type_traits/add_unsigned_integer_neg.cc: Same.
* docs/doxygen/user.cfg.in: Update to doxygen 1.5.1.
* docs/html/17_intro/license.html: Updated info for generated docs.
* docs/doxygen/guide.html: Adjust.
* docs/doxygen/run_doxygen: Adjust.
* docs/doxygen/mainpage.html: Same.
* docs/doxygen/doxygroups.cc: Same.
* docs/doxygen/Intro.3: Same.
* docs/doxygen/tables.html: Same.
From-SVN: r119334
2006-11-29 20:59:22 +00:00
Benjamin Kosnik
1ab7948178
hashtable.h: -Wshadow fixes.
...
2006-11-21 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/hashtable.h: -Wshadow fixes.
* include/ext/pb_ds/detail/cc_hash_table_map_/erase_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/internal_node.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
constructor_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/
constructors_destructor_fn_imps.hpp: Same.
* src/mt_allocator.cc: Same.
* src/debug.cc: Same.
* config/locale/gnu/codecvt_members.cc: Same.
From-SVN: r119061
2006-11-21 18:10:45 +00:00
Benjamin Kosnik
82382c5ae7
iostream-inst.cc: Remove iostream include.
...
2006-11-07 Benjamin Kosnik <bkoz@redhat.com>
Howard Hinnant <hhinnant@apple.com>
* src/iostream-inst.cc: Remove iostream include.
Co-Authored-By: Howard Hinnant <hhinnant@apple.com>
From-SVN: r119046
2006-11-21 09:51:11 +00:00
Paolo Carlini
56acf88c0f
bitmap_allocator.h: Uglify some names.
...
2006-11-12 Paolo Carlini <pcarlini@suse.de>
* include/ext/bitmap_allocator.h: Uglify some names.
* include/ext/concurrence.h: Likewise.
* src/bitmap_allocator.cc: Likewise.
From-SVN: r118722
2006-11-12 10:37:00 +00:00
Paolo Carlini
eebbe2c70e
re PR libstdc++/29496 (_M_invalidate function is not thread-safe in GLIBCXX_DEBUG mode)
...
2006-11-11 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/29496
* include/debug/safe_base.h (_Safe_sequence_base::_M_get_mutex,
_Safe_iterator_base::_M_get_mutex, _M_attach_single, _M_detach_single):
New.
* src/debug.cc: Define the latter.
(_Safe_sequence_base::_M_detach_all, _M_detach_singular,
_M_revalidate_singular, _M_swap): Use the mutex.
(_Safe_iterator_base::_M_attach, _M_detach): Adjust, forward to the
*_single version.
* include/debug/safe_iterator.h (_Safe_iterator<>::_M_attach_single,
_M_invalidate_single): New.
* include/debug/safe_iterator.tcc: Define.
(_Safe_iterator<>::_M_invalidate): Adjust, forward to
_M_invalidate_single.
* include/debug/safe_sequence.h (_Safe_sequence<>::_M_invalidate_if,
_M_transfer_iter): Use the mutex, adjust, forward to the *_single
versions of _M_invalidate and _M_attach.
* config/abi/pre/gnu.ver (_Safe_sequence_base::_M_get_mutex,
_Safe_iterator_base::_M_get_mutex, _M_attach_single, _M_detach_single):
Add @GLIBCXX_3.4.10; adjust.
* configure.ac (libtool_VERSION): To 6:10:0.
* testsuite/util/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.10.
* configure: Regenerate.
From-SVN: r118701
2006-11-11 17:32:12 +00:00
Benjamin Kosnik
8fafc2d3a0
exception.hpp (pb_ds): Modify for -fno-exceptions.
...
2006-11-07 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/pb_ds/exception.hpp (pb_ds): Modify for -fno-exceptions.
(__throw_container_error): New. Conditionalize based on __EXCEPTIONS.
(__throw_insert_error): New.
(__throw_join_error): New.
(__throw_resize_error): New.
* include/ext/pb_ds/detail/resize_policy/
hash_prime_size_policy_imp.hpp: Use them.
* include/ext/pb_ds/detail/resize_policy/
hash_exponential_size_policy_imp.hpp: Same.
* include/ext/pb_ds/detail/resize_policy/
hash_load_check_resize_trigger_imp.hpp: Same.
* include/ext/pb_ds/detail/resize_policy/
hash_standard_resize_policy_imp.hpp: Same.
* include/ext/pb_ds/detail/cc_hash_table_map_/resize_fn_imps.hpp
* include/ext/pb_ds/detail/cc_hash_table_map_/
constructor_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/pat_trie_/insert_join_fn_imps.hpp
* include/ext/pb_ds/detail/pat_trie_/split_join_branch_bag.hpp
* include/ext/pb_ds/detail/pat_trie_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/bin_search_tree_/
split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
insert_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
resize_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
insert_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/resize_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
constructor_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/gp_hash_table_map_/
resize_no_store_hash_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/binary_heap_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
constructors_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/ov_tree_map_/split_join_fn_imps.hpp: Same.
* include/ext/pb_ds/detail/list_update_map_/
constructor_destructor_fn_imps.hpp: Same.
* include/ext/pb_ds/exception.hpp: Same.
* src/functexcept.cc: Qualify abort with std.
From-SVN: r118554
2006-11-07 16:55:49 +00:00
Paolo Carlini
cd07aa11f9
debug.cc (_Safe_sequence_base::_M_revalidate_singular): Fix pasto, advance __iter only once per iteration.
...
2006-10-29 Paolo Carlini <pcarlini@suse.de>
* src/debug.cc (_Safe_sequence_base::_M_revalidate_singular): Fix
pasto, advance __iter only once per iteration.
From-SVN: r118159
2006-10-29 21:50:23 +00:00
Benjamin Kosnik
46db415941
re PR libstdc++/28514 (libstdc++ vs. anonymous namespaces)
...
2006-10-17 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/28514
* include/bits/cpp_type_traits.h (__detail): Uglify namespace.
* include/ext/rope: Remove global-scope anonymous namespace, use
nested __detail. Fixup resulting formatting issues.
* include/ext/ropeimpl.h: Same.
* include/tr1/hashtable_policy.h: Remove anonymous namespace
nesting for __detail.
* include/tr1/random: Revert anonymous namespace to nested
__detail namespace.
* include/tr1/random.tcc: Same.
* src/ext-inst.cc: Fixups for above.
From-SVN: r117824
2006-10-17 11:56:21 +00:00
Douglas Gregor
499c96f56b
Makefile.am (tr1_headers): Add new tuple_defs.h.
...
2006-10-16 Douglas Gregor <doug.gregor@gmail.com>
* include/Makefile.am (tr1_headers): Add new tuple_defs.h.
* include/Makefile.in (tr1_headers): Regenerate.
* include/tr1/tuple (tuple): Move declaration to tuple_defs.h.
(get): Ditto.
(operator==): Ditto.
(operator<): Ditto.
(operator!=): Ditto.
(operator>): Ditto.
(operator<=): Ditto.
(operator>=): Ditto.
(__stripped_tuple_type): Ditto.
Include tuple.defs.h
* include/tr1/tuple_iterate.h (tuple): Use
_GLIBCXX_TUPLE_ALL_TEMPLATE_PARAMS_UNNAMED macro instead of 10
"typename"s.
(tuple_element): Use _GLIBCXX_TUPLE_ALL_TEMPLATE_PARAMS and
_GLIBCXX_TYPLE_ALL_TEMPLATE_ARGS instead of 10
parameters/arguments.
* include/tr1/tuple_defs.h: New header, contains declarations and
definitions for the tuple template with all arguments.
* include/tr1/repeat.h (_GLIBCXX_TUPLE_ALL_TEMPLATE_PARAMS): New.
(_GLIBCXX_TUPLE_ALL_TEMPLATE_PARAMS_UNNAMED): New.
(_GLIBCXX_TUPLE_ALL_TEMPLATE_ARGS): New.
(_GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS): New.
(_GLIBCXX_TEMPLATE_ARGS_STRIPPED): New.
* scripts/gen_includers.pl: Update.
* scripts/gen_includers2.pl: New.
From-SVN: r117790
2006-10-16 19:08:22 +00:00
Benjamin Kosnik
e64690af46
re PR libstdc++/29426 (static __recursive_mutex init vs __GTHREAD_RECURSIVE_MUTEX_INIT_FUNCTION)
...
2006-10-11 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/29426
* libsupc++/guard.cc (get_static_mutex): New.
(mutex_wrapper::mutex_wrapper): Use it to get properly initialized
recursive mutex without ordering issues.
* src/locale_init.cc (__get_locale_mutex): No need to
uglify. Change to get_locale_mutex.
From-SVN: r117643
2006-10-11 20:18:36 +00:00
Benjamin Kosnik
8ba9f01334
re PR libstdc++/29118 (Timeouts in libstdc++, libjava and libgomp testsuites)
...
2006-10-09 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/29118
* src/locale_init.cc (__get_locale_mutex): New.
(locale::locale): Use it.
(locale::global): Use it.
From-SVN: r117600
2006-10-10 10:14:13 +00:00
Benjamin Kosnik
a145e9b64f
globals_io.cc (_GLIBCXX_once): Remove, unused.
...
2006-10-09 Benjamin Kosnik <bkoz@redhat.com>
* src/globals_io.cc (_GLIBCXX_once): Remove, unused.
(_GLIBCXX_mutex): Same.
(_GLIBCXX_mutex_addres): Same.
(_GLIBCXX_mutex_init): Same.
(_GLIBCXX_mutex_address_init): Same.
From-SVN: r117570
2006-10-09 10:34:49 +00:00
Paolo Carlini
6ae7252263
re PR libstdc++/29217 (locale confusion with time/collate categories)
...
2006-09-27 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/29217
* src/localename.cc (locale::_Impl::_M_replace_categories)):
Compensate for the inconsistent numerical encodings of the
collate and time categories vs the corresponding names.
* testsuite/22_locale/locale/cons/29217.cc: New.
* testsuite/22_locale/locale/cons/2.cc: Enable and split
out the few ENC_TRAITS bits to...
* testsuite/22_locale/locale/cons/unicode/1.cc... here.
From-SVN: r117247
2006-09-27 07:08:13 +00:00
Benjamin Kosnik
2e362c7474
atomicity.h: Move to...
...
2006-09-13 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/atomicity.h: Move to...
* include/ext/atomicity.h: ...here.
* include/bits/concurrence.h: Move to...
* include/ext/concurrence.h: ...here.
* include/Makefile.am (ext_headers): Additions.
(bits_headers): Subtractions.
* include/Makefile.in: Regenerate.
* include/ext/bitmap_allocator.h (_Mutex), __threads_enabled,
_Lock, _Auto_Lock): Subsume into...
* include/bits/concurrence.h (__mutex): ..this. Error check
locking and unlocking.
(lock): Uglify to...
(__scoped_lock): Use __mutex.
(__glibcxx_mutex_define_initialized): Remove.
(__glibcxx_mutex_type): Remove.
* include/tr1/boost_shared_ptr.h: Formating tweaks, adjustments.
(_Lock_policy): Move from here...
* include/ext/concurrence.h: ... to here.
(__shared_ptr_default_lock_mode): To __default_lock_policy.
(_S_lockfree): To _S_atomic.
Document.
* libsupc++/guard.cc (static_mutex): Subsume into and fixup for...
* include/ext/concurrence.h (__recursive_mutex): ...this. Error
check locking and unlocking.
* libsupc++/eh_alloc.cc: Use __scoped_lock.
* config/os/aix/atomicity.h: Fixups for include paths, mutex to
__scoped_mutex change, removal of locking defines.
* config/os/irix/atomicity.h: Same.
* config/cpu/cris/atomicity.h: Same.
* config/cpu/m68k/atomicity.h: Same.
* config/cpu/hppa/atomicity.h: Same.
* config/cpu/mips/atomicity.h: Same.
* config/cpu/sparc/atomicity.h: Same.
* config/cpu/i386/atomicity.h: Same.
* config/cpu/i486/atomicity.h: Same.
* config/cpu/sh/atomicity.h: Same.
* config/cpu/generic/atomicity_mutex/atomicity.h: Same.
* include/ext/pool_allocator.h: Same.
* include/ext/bitmap_allocator.h: Same.
* include/ext/rc_string_base.h: Same.
* include/ext/mt_allocator.h: Same.
* include/bits/locale_classes.h: Same.
* include/bits/basic_string.h: Same.
* include/bits/ios_base.h: Same.
* include/tr1/memory: Same.
* src/pool_allocator.cc: Same.
* src/mt_allocator.cc: Same.
* src/locale_init.cc: Same.
* src/ios.cc: Same.
* src/locale.cc: Same.
* src/bitmap_allocator.cc: Same.
* src/ios_init.cc: Same.
* src/debug.cc: Same.
From-SVN: r116942
2006-09-14 09:48:15 +00:00
Paolo Carlini
1a4ba99f96
basic_string.tcc (find(const _CharT*, size_type, size_type)): Reimplement in terms of traits::eq and traits::compare.
...
2006-09-05 Paolo Carlini <pcarlini@suse.de>
* include/bits/basic_string.tcc (find(const _CharT*, size_type,
size_type)): Reimplement in terms of traits::eq and traits::compare.
* include/ext/vstring.tcc (find(const _CharT*, size_type,
size_type)): Likewise.
* src/string-inst.cc: Remove unneded std::search instantiation.
From-SVN: r116698
2006-09-05 15:43:47 +00:00
Paolo Carlini
c4338a62e0
mt_allocator.cc (__pool<true>::_M_reclaim_block): Do not name a variable __used, badname on BSD.
...
2006-09-04 Paolo Carlini <pcarlini@suse.de>
* src/mt_allocator.cc (__pool<true>::_M_reclaim_block): Do
not name a variable __used, badname on BSD.
From-SVN: r116678
2006-09-04 08:00:35 +00:00
Paolo Carlini
1d3e6248e5
re PR libstdc++/24469 (Possible race condition in mt_allocator causing SIGSEGV)
...
2006-09-02 Paolo Carlini <pcarlini@suse.de>
Richard Guenther <rguenther@suse.de>
PR libstdc++/24469
* src/mt_allocator.cc (__pool<true>::_M_reserve_block,
__pool<true>::_M_reclaim_block): Fix the logic to avoid
races, exploit atomic counters stored in second part of
the memory pointed by _M_used.
(__pool<true>::_M_initialize): Adjust _M_used allocation.
* include/ext/mt_allocator.h (__pool<true>::_Bin_record):
Update comment.
Co-Authored-By: Richard Guenther <rguenther@suse.de>
From-SVN: r116660
2006-09-02 08:31:45 +00:00
Benjamin Kosnik
b82f782bfb
PR libstdc++/19664 round 3
...
2006-07-27 Benjamin Kosnik <bkoz@wells.artheist.org>
PR libstdc++/19664 round 3
* include/Makefile.am (tr1_headers): Add hashtable_policy.h.
* include/Makefile.in: Regenerate.
* include/tr1/hashtable: Move policy classes into...
* include/tr1/hashtable_policy.h: ... this. New.
* src/globals_locale.cc: Move contents....
* src/locale_init.cc: ... to here, put in anonymous namespace.
* src/Makefile.am: Remove globals_locale.cc.
* src/Makefile.in: Regenerate.
* src/locale.cc: Convert __gnu_internal to anonymous namespace.
* src/debug.cc: Same.
* src/ext-inst.cc: Same.
* src/mt_allocator.cc: Same.
* src/pool_allocator.cc: Same.
* include/tr1/random: Convert std::tr1::_Private to anonymous
namespace.
* include/tr1/random.tcc: Same.
* include/tr1/hashtable: Move ::Internal to std::tr1::detail and
enclose bits that can actually be internal in in anonymous
namespace.
* include/tr1/unordered_set: Adjust explicit qualifications for
namespace changes.
* include/tr1/unordered_map: Same.
* include/tr1/cmath: Convert __gnu_internal to nested detail namespace.
* include/bits/cpp_type_traits.h: Move __type_type into anonymous
namespace.
* include/ext/rope: Change _Rope_constants to anonymous namespace.
* include/ext/ropeimpl.h: Same.
* src/ext-inst.cc: Same.
From-SVN: r115790
2006-07-28 04:57:34 +00:00
Steve Ellcey
2e5757965d
re PR target/26792 (need to use autoconf when using newly-added libgcc functions)
...
PR target/26792
* configure.ac: Use GCC_CHECK_UNWIND_GETIPINFO to
define HAVE_GETIPINFO.
* aclocal.m4: Add include of ../config/unwind_ipinfo.m4.
* config.h.in: Regenerate.
* configure: Regenerate.
* Makefile.in: Regenerate.
* libmath/Makefile.in: Regenerate.
* include/Makefile.in: Regenerate.
* src/Makefile.in: Regenerate.
* libsupc++/Makefile.in: Regenerate.
* testsuite/Makefile.in: Regenerate.
* po/Makefile.in: Regenerate.
* libsupc++/eh_personality.cc: Check HAVE_GETIPINFO.
From-SVN: r115654
2006-07-21 21:11:46 +00:00
Benjamin Kosnik
98e615b485
PR libstdc++/19664 round 1
...
2006-07-20 Benjamin Kosnik <bkoz@redhat.com>
Jakub Jelinek <jakub@redhat.com>
PR libstdc++/19664 round 1
* acinclude.m4 (GLIBCXX_ENABLE_VISIBILITY): Check it.
* configure.ac: Use it.
* configure: Regenerate.
* docs/html/configopts.html: Document it.
* include/Makefile.am: Slip in to c++config.
* include/Makefile.in: Regenerate.
* include/bits/c++config (_GLIBCXX_VISIBILITY): New.
(_GLIBCXX_BEGIN_NAMESPACE): Use it.
(_GLIBCXX_END_NAMESPACE): Use it.
(_GLIBCXX_BEGIN_NESTED_NAMESPACE): Use it.
(_GLIBCXX_END_NESTED_NAMESPACE): Use it.
* src/debug.cc: Mark __gnu_internal namespace with hidden
visibility attribute.
* src/ext-inst.cc: Same.
* src/globals_io.cc: Same.
* src/globals_locale.cc: Same.
* src/ios_init.cc: Same.
* src/locale.cc: Same.
* src/mt_allocator.cc: Same.
* src/pool_allocator.cc: Same.
Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r115632
2006-07-20 23:37:27 +00:00
Paolo Carlini
964c53299c
re PR libstdc++/26970 (-O3 -Wformat=2 complains about floats written to ostream)
...
2006-06-12 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/26970
* config/locale/gnu/c_locale.h (__convert_from_v<>): Change to
variadic function, instead of template function.
* config/locale/generic/c_locale.h (__convert_from_v<>): Likewise.
* include/bits/locale_facets.tcc (num_put<>::_M_insert_float):
Adjust.
(money_put<>::do_put(long double)): Likewise.
* src/locale-misc-inst.cc: Remove.
* src/Makefile.am: Adjust.
* src/Makefile.in: Regenerate.
From-SVN: r114591
2006-06-12 23:24:22 +00:00
Paolo Carlini
b7ee72de2d
re PR libstdc++/24704 (__gnu_cxx::__exchange_and_add is called even for single threaded applications)
...
2006-05-24 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/24704
* include/bits/atomicity.h (__exchange_and_add_single,
__atomic_add_single): New, single thread versions of the atomic
functions.
(__exchange_and_add_dispatch, __atomic_add_dispatch): New,
depending on __GTHREADS and __gthread_active_p() dispatch either
to the above or to the existing atomic functions.
* include/ext/pool_allocator.h: Update callers.
* include/ext/rc_string_base.h: Likewise.
* include/bits/locale_classes.h: Likewise.
* include/bits/basic_string.h: Likewise.
* include/bits/ios_base.h: Likewise.
* include/tr1/boost_shared_ptr.h: Likewise.
* src/ios.cc: Likewise.
* src/locale.cc: Likewise.
* src/ios_init.cc: Likewise.
From-SVN: r114044
2006-05-24 16:37:42 +00:00
Paolo Carlini
634a11f7bf
Implement the resolution of DR 455, [DR].
...
2006-03-08 Paolo Carlini <pcarlini@suse.de>
Implement the resolution of DR 455, [DR].
* src/ios_init.cc (ios_base::Init::Init()): Do it.
* testsuite/27_io/objects/char/dr455.cc: New.
* testsuite/27_io/objects/wchar_t/dr455.cc: Likewise.
* docs/html/ext/howto.html: Add an entry for DR 455.
From-SVN: r111842
2006-03-08 09:44:56 +00:00
Paolo Carlini
e3dfd6d555
re PR target/26532 (libmudflap failures on ia64)
...
2006-03-06 Paolo Carlini <pcarlini@suse.de>
PR target/26532
* config/io/c_io_stdio.h (struct __ios_flags): Remove.
* include/bits/ios_base.h: Adjust consistently.
(ios_base::_S_local_word_size): Change to an anonymous enum.
* src/ios.cc: Do not define static const data of __ios_flags,
likewise for ios_base::_S_local_word_size.
* include/bits/locale_classes.h (locale::_S_categories_size):
Change to an anonymous enum.
* src/locale.cc: Don't define.
From-SVN: r111789
2006-03-06 18:06:47 +00:00
Benjamin Kosnik
45f388bb44
c++config: Simplify debug namespaces.
...
2006-02-21 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/c++config: Simplify debug namespaces.
* include/ext/hash_set: Specialize insert_iterator after norm,
debug containers have been (optionally) declared. Use nested
namespaces.
* include/ext/hash_map: Same.
* include/debug/hash_map.h (insert): Add specialization for value
pointer types.
* include/debug/hash_set.h (insert): Same.
* include/debug/hash_multimap.h: Change __gnu_debug_def to __debug.
* include/debug/set.h: Same.
* include/debug/bitset: Same.
* include/debug/multiset.h: Same.
* include/debug/hash_multiset.h: Same.
* include/debug/vector: Same.
* include/debug/map.h: Same.
* include/debug/deque: Same.
* include/debug/list: Same.
* include/debug/multimap.h. Same.
* include/debug/macros.h: Use __gnu_debug.
* include/debug/debug.h: Same.
* include/debug/formatter.h: Same.
* include/debug/safe_sequence.h: Same.
* include/debug/functions.h: Same.
* include/debug/safe_base.h: Same.
* include/debug/safe_iterator.h: Same.
* include/debug/safe_iterator.tcc: Same.
(_M_invalidate): Adjust compare order.
* include/debug/string: Change std::__gnu_debug to __gnu_debug.
* include/ext/hashtable.h: Formatting fixes.
* include/bits/stl_map.h: Formatting fixes.
* src/compatibility.cc: Adjust compatibility symbols for old debug
mode model.
* src/debug_list.cc: Tweak.
* src/debug.cc: Adjust namespaces.
* docs/html/debug_mode.html: Adjust namespace names.
* testsuite/25_algorithms/heap/heap.cc: Restore _GLIBCXX_DEBUG
macro guards, as count values differ when in debug mode.
* testsuite/23_containers/vector/26412.cc: Move to...
* testsuite/23_containers/vector/26412-1.cc: ... here.
* testsuite/23_containers/vector/26412-2.cc: Add.
* include/ext/pb_assoc/detail/standard_policies.hpp
(PB_ASSOC_HASH_NAMESPACE): Remove, use __gnu_cxx::hash_map and
std::equal_to.
* configure.ac (libtool_VERSION): To 6:8:0.
* configure: Regenerate.
* config/abi/pre/gnu.ver: Revert to exporting __gnu_debug symbols.
(GLIBCXX_3.4.8): New.
* testsuite/testsuite_abi.cc: Add GLIBCXX_3.4.8 to known versions.
From-SVN: r111356
2006-02-22 00:57:24 +00:00
Paolo Carlini
6f4d3d8656
re PR libstdc++/26181 (istream::operator>>(streambuf*) fails to set eofbit)
...
2006-10-02 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/26181
* include/bits/streambuf.tcc (__copy_streambufs_eof): New, like
the existing __copy_streambufs but reporting eof in input.
(__copy_streambufs): Just use the latter.
* src/streambuf.cc (__copy_streambufs_eof): Adjust specializations
of __copy_streambufs.
* include/bits/istream.tcc (operator>>(__streambuf_type*)): Use
__copy_streambufs_eof instead.
* include/std/std_streambuf.h: Adjust.
* src/streambuf-inst.cc: Adjust.
* config/abi/pre/gnu.ver: Export the new symbols.
* testsuite/27_io/basic_istream/extractors_other/char/26181.cc: New.
* testsuite/27_io/basic_istream/extractors_other/wchar_t/26181.cc:
Likewise.
* testsuite/27_io/basic_istream/extractors_other/char/1.cc: Adjust.
* testsuite/27_io/basic_istream/extractors_other/wchar_t/1.cc:
Likewise.
From-SVN: r110841
2006-02-10 18:29:04 +00:00
Jakub Jelinek
6defecc2d3
configure.ac (_GLIBCXX_LONG_DOUBLE_COMPAT): New check.
...
2006-02-07 Jakub Jelinek <jakub@redhat.com>
Benjamin Kosnik <bkoz@redhat.com>
* configure.ac (_GLIBCXX_LONG_DOUBLE_COMPAT): New check.
If true, set also port_specific_symbol_files and create
as_symver_specs.
(GLIBCXX_LDBL_COMPAT): New GLIBCXX_CONDITIONAL.
* configure: Rebuilt.
* config.h.in: Rebuilt.
* config/os/gnu-linux/ldbl-extra.ver: New file.
* config/abi/pre/gnu.ver: Make sure no __float128 symbols are
exported.
* include/bits/c++config (_GLIBCXX_LONG_DOUBLE_COMPAT,
_GLIBCXX_LDBL_NAMESPACE, _GLIBCXX_BEGIN_LDBL_NAMESPACE,
_GLIBCXX_END_LDBL_NAMESPACE): Define.
* include/bits/localefwd.h: Use them to conditionally scope facets.
* include/bits/locale_facets.h: Surround std::{money,num}_{get,put}
with _GLIBCXX_BEGIN_LDBL_NAMESPACE and _GLIBCXX_END_LDBL_NAMESPACE.
Surround std::{money,num}_{get,put}
with _GLIBCXX_BEGIN_LDBL_NAMESPACE and _GLIBCXX_END_LDBL_NAMESPACE.
[_GLIBCXX_LONG_DOUBLE_COMPAT] (std::money_get): Add __do_get method.
[_GLIBCXX_LONG_DOUBLE_COMPAT] (std::money_put): Add __do_put method.
[_GLIBCXX_LONG_DOUBLE_COMPAT] (std::num_get): Add __do_get method.
[_GLIBCXX_LONG_DOUBLE_COMPAT] (std::num_put): Add __do_put method.
* include/bits/locale_facets.tcc: Surround std::{money,num}_{get,put}
with _GLIBCXX_BEGIN_LDBL_NAMESPACE and _GLIBCXX_END_LDBL_NAMESPACE.
(std::money_get::__do_get, std::money_put::__do_put,
std::num_get::__do_get, std::num_put::__do_put): New
specializations.
* include/Makefile.am: Conditionally define
_GLIBCXX_LONG_DOUBLE_COMPAT in c++config.
* include/Makefile.in: Regenerate.
* src/locale.cc [_GLIBCXX_LONG_DOUBLE_COMPAT] (_GLIBCXX_LOC_ID,
_GLIBCXX_SYNC_ID): Define, use them.
* src/compatibility-ldbl.cc: New file.
* src/complex_io.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Add compatibility
symbols.
* src/limits.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
* src/locale.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
* src/locale-inst.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
* src/locale-misc-inst.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
* src/istream-inst.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
* src/ostream-inst.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
* src/locale.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
* src/wlocale-inst.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
* src/compatibility.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]: Likewise.
* config/locale/generic/c_locale.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]:
Likewise.
* config/locale/gnu/c_locale.cc [_GLIBCXX_LONG_DOUBLE_COMPAT]:
Likewise.
* src/Makefile.am (libstdc++-symbol.ver): Append instead of
insert in the middle if port specific symbol file requests it.
(ldbl_compat_sources): New variable.
(sources): Use it.
(compatibility-ldbl.lo, compatibility-ldbl.o): New rules.
* src/Makefile.in: Rebuilt.
* testsuite/testsuite_abi.cc: Recognize GLIBCXX_LDBL_3.4,
GLIBCXX_LDBL_3.4.7, CXXABI_LDBL_1.3.
Co-Authored-By: Benjamin Kosnik <bkoz@redhat.com>
From-SVN: r110725
2006-02-07 22:23:58 +00:00
Mark Mitchell
d79e6356aa
libtool-ldflags: New script.
...
* libtool-ldflags: New script.
* src/Makefile.am (LTLDFLAGS): New variable.
(CXXLINK): Use LTLDFLAGS.
* src/Makefile.in: Regenerated.
* libsupc++/Makefile.am (LTLDFLAGS): New variable.
(CXXLINK): Use LTLDFLAGS.
* libsupc++/Makefile.in: Regenerated.
From-SVN: r109256
2006-01-03 00:30:27 +00:00