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
bd91a8c4ed
PR libstdc++/28080 (final)
...
2007-03-11 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/28080 (final)
* include/std/iosfwd: Do not include <bits/c++io.h>.
* config/io/basic_file_stdio.h: Do it here.
* include/ext/stdio_sync_filebuf.h: Likewise.
* include/ext/rope: Include <bits/gthr.h> unconditionally.
* include/std/fstream: Do not include <bits/gthr.h>.
* include/std/ios: Do not include <cstdio>.
* include/bits/ios_base.h: Do it here.
* 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: r122818
2007-03-11 12:03:34 +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
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
Paolo Carlini
f56fe8ff92
PR libstdc++/28080 (partial)
...
2007-02-18 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/28080 (partial)
* include/bits/stl_algobase.h: Do not include <climits>, use
std::numeric_limits.
* include/bits/stl_bvector.h: Use __CHAR_BIT__.
* config/locale/gnu/codecvt_members.cc: Include <climits>.
* config/locale/generic/codecvt_members.cc: Likewise.
* include/std/string: Do not include <algorithm>; do not include
<memory>, include <bits/allocator.h> instead.
* include/ext/vstring_fwd.h: Likewise.
* include/ext/vstring_util.h: Do not include <algorithm>.
* include/tr1/hashtable_policy.h: Include <algorithm>.
* testsuite/21_strings/basic_string/replace/char/1.cc: Likewise.
* testsuite/21_strings/basic_string/replace/wchar_t/1.cc: Likewise.
* testsuite/23_containers/bitset/cons/1.cc: Likewise.
* testsuite/util/testsuite_character.h: Likewise.
* config/locale/gnu/codecvt_members.cc: Also include <cstdlib>,
for MB_CUR_MAX.
* config/locale/generic/codecvt_members.cc: Likewise.
From-SVN: r122089
2007-02-18 11:32:44 +00:00
Benjamin Kosnik
311635d103
c++config: Consistent macro guards for config includes.
...
2007-02-02 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/c++config: Consistent macro guards for config includes.
* config/locale/gnu/c_locale.h: Same.
* config/locale/generic/c_locale.h: Same.
* config/allocator/mt_allocator_base.h: Same.
* config/allocator/malloc_allocator_base.h: Same.
* config/allocator/new_allocator_base.h: Same.
* config/allocator/pool_allocator_base.h: Same.
* config/allocator/bitmap_allocator_base.h: Same.
* config/os/vxworks/os_defines.h: Same.
* config/cpu/sh/atomicity.h: Same.
* config/io/c_io_stdio.h: Same.
* config/io/basic_file_stdio.h: Same.
From-SVN: r121502
2007-02-02 14:49:52 +00:00
Paolo Carlini
c3f0f556db
re PR libstdc++/14493 (std::bad_alloc::what() does not explain what happened)
...
2007-02-01 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/14493
* libsupc++/typeinfo (bad_cast::what, bad_typeid::what): Declare.
* libsupc++/tinfo.cc: Define.
* libsupc++/exception (bad_exception::what): Declare.
* libsupc++/eh_exception.cc: Define.
(exception::what): Adjust, don't use typeid.
* libsupc++/new (bad_alloc::what): Declare.
* libsupc++/new_handler.cc: Define.
* config/abi/pre/gnu.ver: Export the new methods @3.4.9; adjust
existing 3.4.10 exports to 3.4.9.
* configure.ac: Adjust to 6.0.9.
* configure: Regenerate.
* testsuite/util/testsuite_abi.cc: Update.
* testsuite/18_support/14493.cc: New.
From-SVN: r121461
2007-02-01 13:36:51 +00:00
Paolo Carlini
ddde5c6ddb
re PR libstdc++/30586 (Namespace pollution in c++ headers)
...
2007-01-26 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/30586
* config/cpu/ia64/atomic_word.h: Just include <bits/cxxabi_tweaks.h>.
* testsuite/abi/30586.cc: New.
From-SVN: r121209
2007-01-26 18:00:42 +00:00
John David Anglin
8f0d85d6e8
atomicity.h (__exchange_and_add): Don't use ordered store.
...
* config/cpu/hppa/atomicity.h (__exchange_and_add): Don't use ordered
store.
(__atomic_add): Likewise.
From-SVN: r120751
2007-01-13 15:06:32 +00:00
Paolo Carlini
b4d30aab66
re PR libstdc++/30226 (FAIL: abi_check)
...
2006-12-29 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/30226
* config/abi/pre/gnu.ver: Do not export ctype<char>::widen.
From-SVN: r120261
2006-12-29 12:52:14 +00:00
Benjamin Kosnik
143c27b065
localefwd.h: Consistent @file placement...
...
2006-12-05 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/localefwd.h: Consistent @file placement, use
include/ as part of the path for files that have shadows instead of no
name.
* include/bits/valarray_after.h: Same.
* include/bits/gslice_array.h: Same.
* include/bits/gslice.h: Same.
* include/bits/locale_classes.h: Same.
* include/bits/locale_facets.h: Same.
* include/bits/indirect_array.h: Same.
* include/bits/basic_string.h: Same.
* include/bits/ios_base.h: Same.
* include/bits/postypes.h: Same.
* include/bits/codecvt.h: Same.
* include/bits/mask_array.h: Same.
* include/bits/slice_array.h: Same.
* include/bits/boost_concept_check.h: Same.
* include/bits/char_traits.h: Same.
* include/bits/stringfwd.h: Same.
* include/bits/c++config: Same.
* include/bits/valarray_array.h: Same.
* include/bits/valarray_before.h: Same.
* include/bits/cpp_type_traits.h: Same.
* include/c/std_cerrno.h: Same.
* include/precompiled/extc++.h: Same.
* include/precompiled/stdtr1c++.h: Same.
* include/precompiled/stdc++.h: Same.
* include/tr1/cinttypes: Same.
* include/tr1/fenv.h: Same.
* include/tr1/mu_iterate.h: Same.
* include/tr1/cstdio: Same.
* include/tr1/limits.h: Same.
* include/tr1/ctgmath: Same.
* include/tr1/cstdarg: Same.
* include/tr1/tuple: Same.
* include/tr1/float.h: Same.
* include/tr1/stdint.h: Same.
* include/tr1/tuple_iterate.h: Same.
* include/tr1/type_traits_fwd.h: Same.
* include/tr1/hashtable_policy.h: Same.
* include/tr1/cfenv: Same.
* include/tr1/wctype.h: Same.
* include/tr1/ref_fwd.h: Same.
* include/tr1/bind_repeat.h: Same.
* include/tr1/utility: Same.
* include/tr1/climits: Same.
* include/tr1/type_traits: Same.
* include/tr1/stdlib.h: Same.
* include/tr1/cwchar: Same.
* include/tr1/stdio.h: Same.
* include/tr1/ref_wrap_iterate.h: Same.
* include/tr1/cstdint: Same.
* include/tr1/memory: Same.
* include/tr1/cstdbool: Same.
* include/tr1/cwctype: Same.
* include/tr1/bind_iterate.h: Same.
* include/tr1/math.h: Same.
* include/tr1/random: Same.
* include/tr1/tuple_defs.h: Same.
* include/tr1/cstdlib: Same.
* include/tr1/unordered_map: Same.
* include/tr1/boost_shared_ptr.h: Same.
* include/tr1/cctype: Same.
* include/tr1/random.tcc: Same.
* include/tr1/wchar.h: Same.
* include/tr1/hashtable: Same.
* include/tr1/cmath: Same.
* include/tr1/stdbool.h: Same.
* include/tr1/ctime: Same.
* include/tr1/functional: Same.
* include/tr1/unordered_set: Same.
* include/tr1/inttypes.h: Same.
* include/tr1/functional_iterate.h: Same.
* include/tr1/repeat.h: Same.
* include/tr1/complex: Same.
* include/tr1/cfloat: Same.
* include/tr1/ctype.h: Same.
* include/tr1/stdarg.h: Same.
* include/tr1/tgmath.h: Same.
* include/tr1/array: Same.
* include/tr1/common.h: Same.
* include/std/std_valarray.h: Same.
* include/std/std_iostream.h: Same.
* include/std/std_queue.h: Same.
* include/std/std_algorithm.h: Same.
* include/std/std_streambuf.h: Same.
* include/std/std_iterator.h: Same.
* include/std/std_ios.h: Same.
* include/std/std_bitset.h: Same.
* include/std/std_iosfwd.h: Same.
* include/std/std_set.h: Same.
* include/std/std_iomanip.h: Same.
* include/std/std_fstream.h: Same.
* include/std/std_functional.h: Same.
* include/std/std_numeric.h: Same.
* include/std/std_vector.h: Same.
* include/std/std_deque.h: Same.
* include/std/std_stdexcept.h: Same.
* include/std/std_utility.h: Same.
* include/std/std_stack.h: Same.
* include/std/std_string.h: Same.
* include/std/std_complex.h: Same.
* include/std/std_memory.h: Same.
* include/std/std_ostream.h: Same.
* include/std/std_list.h: Same.
* include/std/std_map.h: Same.
* include/std/std_sstream.h: Same.
* include/c_std/std_csignal.h: Same.
* include/c_std/std_cstdlib.h: Same.
* include/c_std/std_cstdio.h: Same.
* include/c_std/std_cstdarg.h: Same.
* include/c_std/std_cctype.h: Same.
* include/c_std/std_cerrno.h: Same.
* include/c_std/std_cmath.h: Same.
* include/c_std/std_ctime.h: Same.
* include/c_std/std_clocale.h: Same.
* include/c_std/std_climits.h: Same.
* include/c_std/std_cassert.h: Same.
* include/c_std/cmath.tcc
* include/c_std/std_csetjmp.h: Same.
* include/c_std/std_cwchar.h: Same.
* include/c_std/std_cfloat.h: Same.
* include/c_std/std_cstring.h: Same.
* include/c_std/std_cstddef.h: Same.
* include/c_std/std_cwctype.h: Same.
* config/locale/gnu/c_locale.h: Namespace scope in all files.
* config/locale/gnu/messages_members.h: Same.
* config/locale/gnu/c++locale_internal.h: Same.
* config/locale/gnu/time_members.h: Same.
* config/locale/ieee_1003.1-2001/c_locale.h: Same.
* config/locale/ieee_1003.1-2001/messages_members.h: Same.
* config/locale/generic/c_locale.h: Same.
* config/locale/generic/messages_members.h: Same.
* config/locale/generic/time_members.h: Same.
* config/allocator/mt_allocator_base.h: Same.
* config/allocator/malloc_allocator_base.h: Same.
* config/allocator/new_allocator_base.h: Same.
* config/allocator/pool_allocator_base.h: Same.
* config/allocator/bitmap_allocator_base.h: Same.
* config/os/windiss/ctype_noninline.h: Same.
* config/os/windiss/os_defines.h: Same.
* config/os/windiss/ctype_inline.h: Same.
* config/os/newlib/ctype_noninline.h: Same.
* config/os/newlib/os_defines.h: Same.
* config/os/newlib/ctype_inline.h: Same.
* config/os/aix/ctype_noninline.h: Same.
* config/os/aix/os_defines.h: Same.
* config/os/aix/ctype_inline.h: Same.
* config/os/vxworks/ctype_noninline.h: Same.
* config/os/vxworks/os_defines.h: Same.
* config/os/vxworks/ctype_inline.h: Same.
* config/os/hpux/ctype_noninline.h: Same.
* config/os/hpux/os_defines.h: Same.
* config/os/hpux/ctype_inline.h: Same.
* config/os/mingw32/ctype_noninline.h: Same.
* config/os/mingw32/os_defines.h: Same.
* config/os/mingw32/ctype_inline.h: Same.
* config/os/gnu-linux/ctype_noninline.h: Same.
* config/os/gnu-linux/os_defines.h: Same.
* config/os/gnu-linux/ctype_inline.h: Same.
* config/os/tpf/ctype_noninline.h: Same.
* config/os/tpf/os_defines.h: Same.
* config/os/tpf/ctype_inline.h: Same.
* config/os/uclibc/ctype_noninline.h: Same.
* config/os/uclibc/os_defines.h: Same.
* config/os/uclibc/ctype_inline.h: Same.
* config/os/djgpp/ctype_noninline.h: Same.
* config/os/djgpp/os_defines.h: Same.
* config/os/djgpp/ctype_inline.h: Same.
* config/os/qnx/qnx6.1/ctype_noninline.h: Same.
* config/os/qnx/qnx6.1/ctype_inline.h: Same.
* config/os/bsd/netbsd/ctype_noninline.h: Same.
* config/os/bsd/netbsd/ctype_inline.h: Same.
* config/os/bsd/darwin/ctype_noninline.h: Same.
* config/os/bsd/darwin/ctype_inline.h: Same.
* config/os/bsd/freebsd/ctype_noninline.h: Same.
* config/os/bsd/freebsd/ctype_inline.h: Same.
* config/os/irix/irix5.2/ctype_noninline.h: Same.
* config/os/irix/irix5.2/ctype_inline.h: Same.
* config/os/irix/irix6.5/ctype_noninline.h: Same.
* config/os/irix/irix6.5/ctype_inline.h: Same.
* config/os/solaris/solaris2.5/ctype_noninline.h: Same.
* config/os/solaris/solaris2.5/ctype_inline.h: Same.
* config/os/solaris/solaris2.6/ctype_noninline.h: Same.
* config/os/solaris/solaris2.6/ctype_inline.h: Same.
* config/os/solaris/solaris2.7/ctype_noninline.h: Same.
* config/os/solaris/solaris2.7/ctype_inline.h: Same.
* config/os/generic/ctype_noninline.h: Same.
* config/os/generic/os_defines.h: Same.
* config/os/generic/ctype_inline.h: Same.
* config/cpu/arm/cxxabi_tweaks.h: Same.
* config/cpu/powerpc/cpu_defines.h: Same.
* config/cpu/generic/cxxabi_tweaks.h: Same.
* config/cpu/generic/cpu_defines.h: Same.
* config/cpu/generic/atomic_word.h: Same.
* config/io/c_io_stdio.h: Same.
* config/abi/compatibility.h: Same.
* docs/doxygen/user.cfg.in: Adjust file list.
From-SVN: r119561
2006-12-05 23:24:07 +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
Joseph Myers
8609875306
rs6000.h (TARGET_NO_LWSYNC): Define.
...
gcc:
* config/rs6000/rs6000.h (TARGET_NO_LWSYNC): Define.
* config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Define
__NO_LWSYNC__ if TARGET_NO_LWSYNC.
* config/rs6000/sync.md (lwsync): Emit plain sync if
TARGET_NO_LWSYNC.
libstdc++-v3:
* config/cpu/powerpc/atomic_word.h (_GLIBCXX_WRITE_MEM_BARRIER):
Use plain sync if __NO_LWSYNC__.
From-SVN: r118961
2006-11-18 00:22:45 +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
Jakub Jelinek
29520adf7d
c_locale.cc (__convert_to_v): Prefer strtold_l over __strtold_l if available.
...
* config/locale/gnu/c_locale.cc (__convert_to_v): Prefer
strtold_l over __strtold_l if available.
From-SVN: r118654
2006-11-10 16:50:39 +01:00
Paolo Carlini
ec2061a9bf
PR libstdc++/28277 (partial: ostream bits 2)
...
2006-10-13 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/28277 (partial: ostream bits 2)
* include/std/std_ostream.h (basic_ostream<>::_M_insert(const
char_type*, streamsize)): New.
(basic_ostream<>::_M_write(char_type, streamsize)): Likewise.
(operator<<(basic_ostream<>&, _CharT), operator<<(basic_ostream<>&,
char), operator<<(basic_ostream<>&, const _CharT*),
operator<<(basic_ostream<>&, const char*)): Use the latter.
* include/bits/ostream.tcc (basic_ostream<>::_M_insert(const
char_type*, streamsize)): Define.
(operator<<(basic_ostream<>&, const char*)): Use the latter.
(operator<<(basic_ostream<>&, _CharT), operator<<(basic_ostream<>&,
char), operator<<(basic_ostream<>&, const _CharT*),
operator<<(basic_ostream<>&, const char*),
operator<<(basic_ostream<>&, const basic_string<>&)): Remove.
* include/bits/basic_string.h (operator<<(basic_ostream<>&,
const basic_string<>&)): Use the latter, implement DR 586.
* config/abi/pre/gnu.ver: Adjust, export the new _M_insert.
* docs/html/ext/howto.html: Add an entry for DR 586.
* testsuite/21_strings/basic_string/inserters_extractors/char/
28277.cc: New.
* testsuite/21_strings/basic_string/inserters_extractors/wchar_t/
28277.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_character/char/
28277-3.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_character/char/
28277-4.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_character/wchar_t/
28277-2.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_character/wchar_t/
28277-3.cc: Likewise.
* testsuite/27_io/basic_ostream/inserters_character/wchar_t/
28277-4.cc: Likewise.
From-SVN: r117689
2006-10-13 09:00:31 +00:00
Benjamin Kosnik
3c6430a314
re PR libstdc++/29095 (cxxabi.h __cxa_cdtor_type not declared when included from "C")
...
2006-10-09 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/29095
* libsupc++/cxxabi.h (__cxa_cdtor_type): Explicit "C" linkage.
* config/cpu/arm/cxxabi_tweaks.h: Same.
* config/cpu/generic/cxxabi_tweaks.h: Same.
* testsuite/abi: Add.
* testsuite/abi/header_cxxabi.cc: New.
* testsuite/demangle: Move...
* testsuite/abi/demangle: ...here.
* testsuite/libstdc++-dg/conformance.exp: Adjust testsuite file
calculation.
* scripts/create_testsuite_files: Same.
* testsuite/lib/libstdc++.exp (v3_target_compile_as_c): New.
(libstdc++-dg-test): Use it.
From-SVN: r117589
2006-10-09 23:53:35 +00:00
Paolo Carlini
bc8b35b594
basic_file_stdio.cc: As an extension...
...
2006-10-01 Paolo Carlini <pcarlini@suse.de>
* config/io/basic_file_stdio.cc: As an extension, and
consistently with C facilities, allow for in|out|app and
in|out|app|binary openmodes.
* testsuite/27_io/basic_filebuf/open/char/4.cc: New.
From-SVN: r117346
2006-10-01 08:27:49 +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
Benjamin Kosnik
c1a03f0311
eh_globals.cc: Remove __gnu_internal.
...
2006-09-12 Benjamin Kosnik <bkoz@redhat.com>
* libsupc++/eh_globals.cc: Remove __gnu_internal.
* config/io/basic_file_stdio.cc: Same.
* config/abi/compatibility.h: Same.
* config/cpu/generic/atomicity_mutex/atomicity.h: Same.
* config/cpu/sh/atomicity.h: Same.
From-SVN: r116899
2006-09-12 17:48:45 +00:00
Paolo Carlini
a7cfb1af9e
gnu.ver: Correct atomic helper function signature for case where _Atomic_word is long.
...
2006-08-31 Paolo Carlini <pcarlini@suse.de>
* config/abi/pre/gnu.ver: Correct atomic helper function signature
for case where _Atomic_word is long.
From-SVN: r116602
2006-08-31 11:46:31 +00:00
Benjamin Kosnik
f640f39eef
re PR libstdc++/28671 (undefined reference to `__sync_fetch_and_add_4')
...
2006-08-31 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/28671
* include/bits/atomicity.h (__exchange_and_add): Declare only.
(__atomic_add): Same.
* config/cpu/generic/atomicity_builtins/atomicity.h: Remove comment.
From-SVN: r116601
2006-08-31 10:45:59 +00:00
Benjamin Kosnik
b93d5ca9df
gnu.ver: Spell out exact signatures for atomic access functions.
...
2006-08-30 Benjamin Kosnik <bkoz@redhat.com>
Richard Guenther <rguenther@suse.de>
* config/abi/pre/gnu.ver: Spell out exact signatures for atomic
access functions.
* include/bits/atomicity.h (__atomic_add_dispatch): Remove
volatile qualification for _Atomic_word argument.
(__atomic_add_single): Same.
(__exchange_and_add_dispatch): Same.
(__exchange_and_add_single): Same.
Co-Authored-By: Richard Guenther <rguenther@suse.de>
From-SVN: r116584
2006-08-30 09:39:45 +00:00
Benjamin Kosnik
701a3eeeef
acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): New.
...
2006-07-14 Benjamin Kosnik <bkoz@redhat.com>
* acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): New.
* configure.ac: Use it.
* configure: Regenerated.
* config.h.in: Regenerated.
* configure.host: Simplify.
* include/bits/atomicity.h: Adjust macros.
* config/cpu/generic/atomicity.h: Move...
* config/cpu/generic/atomicity_mutex: New.
* config/cpu/generic/atomicity_mutex/atomicity.h: ...here.
* config/cpu/generic/atomic_builtins: Rename...
* config/cpu/generic/atomicity_builtins: ...to this.
* config/cpu/generic/atomicity_builtins/atomicity.h: Moved.
* config/cpu/mips/atomicity.h: Comment MIPS II requirement.
* scripts/testsuite_flags.in: Make --cxxflags reflect CXXFLAGS.
From-SVN: r115456
2006-07-14 22:41:43 +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
7c499eeb0b
configure.host: If the CPU provides atomic builtins select generic/atomic_builtins/atomicity.h.
...
2006-05-27 Paolo Carlini <pcarlini@suse.de>
* configure.host: If the CPU provides atomic builtins select
generic/atomic_builtins/atomicity.h.
* config/cpu/generic/atomic_builtins/atomicity.h: Add.
* config/cpu/powerpc/atomicity.h: Remove.
* config/cpu/ia64/atomicity.h: Likewise.
* config/cpu/alpha/atomicity.h: Likewise.
* config/cpu/s390/atomicity.h: Likewise.
From-SVN: r114155
2006-05-27 12:05:58 +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
Paolo Carlini
0efaed01c0
re PR libstdc++/26526 (std::__copy_streambufs link failure when _GLIBCXX_DEBUG is defined)
...
2006-03-03 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/26526
* config/abi/pre/gnu.ver (__copy_streambufs, 64-bit version): Add
@GLIBCXX_3.4.8; move existing symbols @GLIBCXX_3.4.8 to 3.4.9.
* configure.ac (libtool_VERSION): To 6:9:0.
* testsuite/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.9.
* configure: Regenerate.
From-SVN: r111690
2006-03-03 23:54:21 +00:00
Paolo Carlini
349ea4d461
gnu.ver: Adjust __copy_streambufs_eof export vs 64-bit arches.
...
2006-03-02 Paolo Carlini <pcarlini@suse.de>
* config/abi/pre/gnu.ver: Adjust __copy_streambufs_eof export
vs 64-bit arches.
From-SVN: r111666
2006-03-03 02:24:25 +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
Joseph Myers
464aea9859
re PR target/20353 (uclibc does not provide C99 math functions)
...
gcc:
PR target/20353
PR target/24578
PR target/24837
* config/linux.opt: New file.
* config/linux.h (CHOOSE_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER,
LINUX_DYNAMIC_LINKER): Define.
(TARGET_C99_FUNCTIONS): Define depending on TARGET_GLIBC.
* config.gcc (*-*-linux*): Define extra_options.
(*-*-*uclibc*): Define UCLIBC_DEFAULT.
(arm*-*-linux-gnueabi): Change to arm*-*-linux-*eabi.
* config/arm/linux-eabi.h (LINUX_TARGET_INTERPRETER): Change to
GLIBC_DYNAMIC_LINKER.
* config/arm/linux-elf.h (LINUX_TARGET_INTERPRETER): Likewise.
(LINUX_TARGET_LINK_SPEC): Use LINUX_DYNAMIC_LINKER.
* config/mips/linux.h (GLIBC_DYNAMIC_LINKER): Define.
(LINK_SPEC): Use LINUX_DYNAMIC_LINKER.
* doc/invoke.texi (GNU/Linux Options): New section.
gcc/testsuite:
* gcc.dg/builtins-config.h (HAVE_C99_RUNTIME): Don't define if
__UCLIBC__ is defined.
libstdc++-v3:
PR libstdc++/14939
* config/os/uclibc/ctype_base.h, config/os/uclibc/ctype_inline.h,
config/os/uclibc/ctype_noninline.h, config/os/uclibc/os_defines.h:
New.
* acinclude.m4 (GLIBCXX_CONFIGURE): Test whether using uClibc.
* configure.host: Use os/uclibc for uClibc.
* crossconfig.m4 (*-linux*): Use link tests. Don't hardcode
presence of math functions.
* configure: Regenerate.
From-SVN: r111160
2006-02-16 23:29:10 +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
Paolo Carlini
49d5c016da
re PR libstdc++/24645 (Commonize arithmetic inserters/extractors bodies)
...
2006-01-02 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/24645
* include/std/std_istream.h (basic_istream<>::_M_extract): New.
(operator>>(bool&), operator>>(short&), operator>>(unsigned short&),
operator>>(int&), operator>>(unsigned int&), operator>>(long&),
operator>>(unsigned long&), operator>>(long long&), operator>>
(unsigned long long&), operator>>(float&), operator>>(double&),
operator>>(long double&), operator>>(void*&)): Use it.
* include/bits/istream.tcc (basic_istream<>::_M_extract): Define.
* include/std/std_ostream.h (basic_ostream<>::_M_insert): New.
(operator<<(long), operator<<(unsigned long), operator<<(bool),
operator<<(short), operator<<(unsigned short), operator<<(int),
operator<<(unsigned int), operator<<(long long), operator<<
(unsigned long long), operator<<(double), operator<<(float),
operator<<(long double), operator<<(const void*): Use it.
* include/bits/ostream.tcc (basic_ostream<>::_M_insert): Define.
* src/istream-inst.cc: Add _M_insert instantiations.
* src/ostream-inst.cc: Add _M_extract instantiations.
* config/abi/pre/gnu.ver: Export the new symbols @GLIBCXX_3.4.7;
detail existing @GLIBCXX_3.4 exports of basic_ostream, num_put,
money_put, etc., symbols to avoid exporting _M_insert symbols
@GLIBCXX_3.4.
From-SVN: r109236
2006-01-02 09:57:49 +00:00
Benjamin Kosnik
3cbc7af037
c++config: Add in revised namespace associations.
...
2005-12-18 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/c++config: Add in revised namespace associations.
_GLIBCXX_BEGIN_NAMESPACE: New macro.
_GLIBCXX_END_NAMESPACE: Same.
_GLIBCXX_BEGIN_NESTED_NAMESPACE: Same.
_GLIBCXX_END_NESTED_NAMESPACE: Same.
* acinclude.m4 (GLIBCXX_ENABLE_SYMVERS]): Add gnu-versioned-namespace.
* configure: Regenerated.
* config.h.in: Same.
* config/abi/pre/gnu-versioned-namespace.ver: New.
* config/abi/pre/gnu.ver (GLIBCXX_3.4.7): Add exports for nested
debug mode items.
* include/Makefile.am (${host_builddir}/c++config.h): Fill in
values for __GLIBCXX__ and _GLIBCXX_NAMESPACE_ASSOCIATION_VERSION.
* include/Makefile.in: Regnerate.
* src/compatibility.cc: Alias new, nested definitions to exported
symbols from non-nested __gnu_debug.
* src/Makefile.am: Add in ENABLE_SYMVERS_GNU_NAMESPACE.
* src/Makefile.in: Regenerate.
* docs/html/debug_mode.html: Revise for nested design.
* docs/html/debug.html: Use debug qualifications instead of
__gnu_debug.
* docs/html/configopts.html: Revise documentation for
--enable-symvers.
* include/debug/formatter: Simplify namespace qualifications for
current, nested-only reality. Add top-level namespace alias,
namespace debug, for debug-mode containers.
* include/debug/safe_iterator.h: Same.
* include/debug/set.h: Same.
* include/debug/hash_multimap.h: Same.
* include/debug/hash_set.h: Same.
* include/debug/bitset
* include/debug/safe_sequence.h: Same.
* include/debug/multiset.h: Same.
* include/debug/safe_base.h: Same.
* include/debug/functions.h: Same.
* include/debug/safe_iterator.tcc
* include/debug/hash_multiset.h: Same.
* include/debug/vector
* include/debug/map.h: Same.
* include/debug/deque
* include/debug/hash_map.h: Same.
* include/debug/string
* include/debug/macros.h: Same.
* include/debug/list
* include/debug/debug.h: Same.
* include/debug/multimap.h: Same.
* src/debug.cc: Same.
* testsuite/23_containers/vector/invalidation/1.cc: Cleanups.
* testsuite/23_containers/vector/invalidation/2.cc: Same.
* testsuite/23_containers/vector/invalidation/3.cc: Same.
* testsuite/23_containers/vector/invalidation/4.cc: Same.
* testsuite/23_containers/deque/invalidation/1.cc: Same.
* testsuite/23_containers/deque/invalidation/2.cc: Same.
* testsuite/23_containers/deque/invalidation/3.cc: Same.
* testsuite/23_containers/deque/invalidation/4.cc: Same.
* testsuite/23_containers/multiset/invalidation/1.cc: Same.
* testsuite/23_containers/multiset/invalidation/2.cc: Same.
* testsuite/23_containers/multimap/invalidation/1.cc: Same.
* testsuite/23_containers/multimap/invalidation/2.cc: Same.
* testsuite/23_containers/bitset/invalidation/1.cc: Same.
* testsuite/23_containers/bitset/cons/16020.cc: Same.
* testsuite/23_containers/bitset/operations/13838.cc: Same.
* testsuite/23_containers/list/invalidation/1.cc: Same.
* testsuite/23_containers/list/invalidation/2.cc: Same.
* testsuite/23_containers/list/invalidation/3.cc: Same.
* testsuite/23_containers/list/invalidation/4.cc: Same.
* testsuite/23_containers/set/invalidation/1.cc: Same.
* testsuite/23_containers/set/invalidation/2.cc: Same.
* testsuite/23_containers/map/invalidation/1.cc: Same.
* testsuite/23_containers/map/invalidation/2.cc: Same.
* testsuite/23_containers/map/insert/16813.cc: Same.
* include/bits/basic_ios.h: Use _GLIBCXX_BEGIN_NAMESPACE(std) and
friends.
* include/bits/stl_list.h: Same.
* include/bits/stl_map.h: Same.
* include/bits/stl_algobase.h: Same.
* include/bits/localefwd.h: Same.
* include/bits/valarray_array.tcc: Same.
* include/bits/valarray_after.h: Same.
* include/bits/gslice_array.h: Same.
* include/bits/stl_queue.h: Same.
* include/bits/gslice.h: Same.
* include/bits/locale_facets.tcc: Same.
* include/bits/locale_classes.h: Same.
* include/bits/stl_set.h: Same.
* include/bits/locale_facets.h: Same.
* include/bits/stl_stack.h: Same.
* include/bits/stl_iterator_base_types.h: Same.
* include/bits/stl_heap.h: Same.
* include/bits/indirect_array.h: Same.
* include/bits/atomicity.h: Same.
* include/bits/stream_iterator.h: Same.
* include/bits/concurrence.h: Same.
* include/bits/basic_string.h: Same.
* include/bits/stl_multimap.h: Same.
* include/bits/stl_pair.h: Same.
* include/bits/basic_ios.tcc: Same.
* include/bits/stl_raw_storage_iter.h: Same.
* include/bits/stl_vector.h: Same.
* include/bits/stl_numeric.h: Same.
* include/bits/ios_base.h: Same.
* include/bits/stl_deque.h: Same.
* include/bits/istream.tcc: Same.
* include/bits/postypes.h: Same.
* include/bits/stl_multiset.h: Same.
* include/bits/mask_array.h: Same.
* include/bits/stl_uninitialized.h: Same.
* include/bits/ostream.tcc: Same.
* include/bits/slice_array.h: Same.
* include/bits/boost_concept_check.h: Same.
* include/bits/sstream.tcc: Same.
* include/bits/stl_iterator_base_funcs.h: Same.
* include/bits/char_traits.h: Same.
* include/bits/stl_algo.h: Same.
* include/bits/stringfwd.h: Same.
* include/bits/c++config
* include/bits/stl_iterator.h: Same.
* include/bits/valarray_array.h: Same.
* include/bits/stl_tempbuf.h: Same.
* include/bits/vector.tcc: Same.
* include/bits/deque.tcc: Same.
* include/bits/stl_bvector.h: Same.
* include/bits/basic_string.tcc: Same.
* include/bits/list.tcc: Same.
* include/bits/streambuf_iterator.h: Same.
* include/bits/valarray_before.h: Same.
* include/bits/stl_construct.h: Same.
* include/bits/stl_function.h: Same.
* include/bits/cpp_type_traits.h: Same.
* include/bits/streambuf.tcc: Same.
* include/bits/allocator.h: Same.
* include/bits/stl_tree.h: Same.
* include/bits/fstream.tcc: Same.
* include/bits/stl_relops.h: Same.
* include/bits/functexcept.h: Same.
* include/std/std_valarray.h: Same.
* include/std/std_iostream.h: Same.
* include/std/std_streambuf.h: Same.
* include/std/std_bitset.h: Same.
* include/std/std_iosfwd.h: Same.
* include/std/std_iomanip.h: Same.
* include/std/std_fstream.h: Same.
* include/std/std_limits.h: Same.
* include/std/std_stdexcept.h: Same.
* include/std/std_istream.h: Same.
* include/std/std_complex.h: Same.
* include/std/std_memory.h: Same.
* include/std/std_ostream.h: Same.
* include/std/std_sstream.h: Same.
* include/c_std/std_csignal.h: Same.
* include/c_std/std_cstdlib.h: Same.
* include/c_std/std_cstdio.h: Same.
* include/c_std/std_cstdarg.h: Same.
* include/c_std/std_cctype.h: Same.
* include/c_std/std_cmath.h: Same.
* include/c_std/std_ctime.h: Same.
* include/c_std/std_clocale.h: Same.
* include/c_std/std_csetjmp.h: Same.
* include/c_std/std_cwchar.h: Same.
* include/c_std/std_cstring.h: Same.
* include/c_std/std_cstddef.h: Same.
* include/c_std/std_cwctype.h: Same.
* include/backward/iterator.h: Same.
* include/backward/set.h: Same.
* include/backward/hashtable.h: Same.
* include/backward/fstream.h: Same.
* include/backward/tempbuf.h: Same.
* include/backward/istream.h: Same.
* include/backward/bvector.h: Same.
* include/backward/stack.h: Same.
* include/backward/rope.h: Same.
* include/backward/complex.h: Same.
* include/backward/ostream.h: Same.
* include/backward/heap.h: Same.
* include/backward/iostream.h: Same.
* include/backward/function.h: Same.
* include/backward/multimap.h: Same.
* include/backward/pair.h: Same.
* include/backward/stream.h: Same.
* include/backward/iomanip.h: Same.
* include/backward/strstream
* include/backward/slist.h: Same.
* include/backward/tree.h: Same.
* include/backward/vector.h: Same.
* include/backward/deque.h: Same.
* include/backward/multiset.h: Same.
* include/backward/list.h: Same.
* include/backward/map.h: Same.
* include/backward/algobase.h: Same.
* include/backward/hash_map.h: Same.
* include/backward/algo.h: Same.
* include/backward/queue.h: Same.
* include/backward/streambuf.h: Same.
* src/allocator-inst.cc: Same.
* src/complex_io.cc: Same.
* src/localename.cc: Same.
* src/limits.cc: Same.
* src/ios_failure.cc: Same.
* src/locale-misc-inst.cc: Same.
* src/streambuf-inst.cc: Same.
* src/misc-inst.cc: Same.
* src/concept-inst.cc: Same.
* src/ios_locale.cc: Same.
* src/pool_allocator.cc: Same.
* src/fstream-inst.cc: Same.
* src/istream-inst.cc: Same.
* src/string-inst.cc: Same.
* src/locale_init.cc: Same.
* src/ctype.cc: Same.
* src/strstream.cc: Same.
* src/ostream-inst.cc: Same.
* src/functexcept.cc: Same.
* src/streambuf.cc: Same.
* src/sstream-inst.cc: Same.
* src/ios.cc: Same.
* src/valarray-inst.cc: Same.
* src/locale.cc: Same.
* src/tree.cc: Same.
* src/stdexcept.cc: Same.
* src/istream.cc: Same.
* src/compatibility.cc: Same.
* src/locale-inst.cc: Same.
* src/globals_io.cc: Same.
* src/list.cc: Same.
* src/ios_init.cc: Same.
* src/locale_facets.cc: Same.
* src/codecvt.cc: Same.
* include/tr1/unordered_map: Use _GLIBCXX_BEGIN_NAMESPACE(tr1).
* include/tr1/boost_shared_ptr.h: Same.
* include/tr1/tuple
* include/tr1/hashtable
* include/tr1/type_traits_fwd.h: Same.
* include/tr1/unordered_set
* include/tr1/functional
* include/tr1/ref_fwd.h: Same.
* include/tr1/utility
* include/tr1/type_traits
* include/tr1/array
* include/ext/hashtable.h: Use _GLIBCXX_BEGIN_NAMESPACE(__gnu_cxx).
* include/ext/typelist.h: Same.
* include/ext/hash_map: Same.
* include/ext/rc_string_base.h: Same.
* include/ext/pool_allocator.h: Same.
* include/ext/iterator: Same.
* include/ext/rb_tree: Same.
* include/ext/numeric: Same.
* include/ext/vstring.tcc: Same.
* include/ext/sso_string_base.h: Same.
* include/ext/stdio_filebuf.h: Same.
* include/ext/algorithm: Same.
* include/ext/codecvt_specializations.h: Same.
* include/ext/new_allocator.h: Same.
* include/ext/array_allocator.h: Same.
* include/ext/vstring_util.h: Same.
* include/ext/vstring_fwd.h: Same.
* include/ext/mt_allocator.h: Same.
* include/ext/debug_allocator.h: Same.
* include/ext/slist: Same.
* include/ext/stdio_sync_filebuf.h: Same.
* include/ext/hash_fun.h: Same.
* include/ext/malloc_allocator.h: Same.
* include/ext/functional: Same.
* include/ext/bitmap_allocator.h: Same.
* include/ext/pod_char_traits.h: Same.
* include/ext/vstring.h: Same.
* include/ext/ropeimpl.h: Same.
* include/ext/hash_set: Same.
* include/ext/memory: Same.
* include/ext/rope: Same.
* include/bits/boost_concept_check.h: Same.
* include/bits/stl_iterator.h: Same.
* include/bits/char_traits.h: Same.
* include/bits/cpp_type_traits.h: Same.
* include/bits/concurrence.h: Same.
* include/bits/atomicity.h: Same.
* config/locale/gnu/numeric_members.cc: Same.
* config/locale/gnu/collate_members.cc: Same.
* config/locale/gnu/ctype_members.cc: Same.
* config/locale/gnu/c_locale.cc: Same.
* config/locale/gnu/codecvt_members.cc: Same.
* config/locale/gnu/messages_members.cc: Same.
* config/locale/gnu/c_locale.h: Same.
* config/locale/gnu/monetary_members.cc: Same.
* config/locale/gnu/time_members.cc: Same.
* config/locale/ieee_1003.1-2001/c_locale.h: Same.
* config/locale/generic/numeric_members.cc: Same.
* config/locale/generic/collate_members.cc: Same.
* config/locale/generic/ctype_members.cc: Same.
* config/locale/generic/c_locale.cc: Same.
* config/locale/generic/codecvt_members.cc: Same.
* config/locale/generic/messages_members.cc: Same.
* config/locale/generic/c_locale.h: Same.
* config/locale/generic/monetary_members.cc: Same.
* config/locale/generic/time_members.cc: Same.
* config/os/aix/atomicity.h: Same.
* config/os/irix/atomicity.h: Same.
* config/cpu/powerpc/atomicity.h: Same.
* config/cpu/cris/atomicity.h: Same.
* config/cpu/ia64/atomicity.h: Same.
* config/cpu/alpha/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.h: Same.
* config/cpu/s390/atomicity.h: Same.
* config/io/c_io_stdio.h: Same.
* config/io/basic_file_stdio.cc: Same.
* config/io/basic_file_stdio.h: Same.
* src/misc-inst.cc: Same.
* src/concept-inst.cc: Same.
* src/ext-inst.cc: Same.
* src/string-inst.cc: Same.
* src/pool_allocator.cc: Same.
* src/bitmap_allocator.cc: Same.
* src/mt_allocator.cc: Same.
* libsupc++/exception: Same.
* libsupc++/vterminate.cc: Same.
* testsuite/ext/hash_map/1.cc: Explicitly qualify __gnu_cxx::hash_map.
* testsuite/ext/hash_map/14648.cc: Same.
* libsupc++/eh_alloc.cc: Correct comment line spacing.
From-SVN: r108775
2005-12-19 00:56:05 +00:00
Benjamin Kosnik
fb5c309d63
post: New.
...
2005-12-18 Benjamin Kosnik <bkoz@redhat.com>
* config/abi/post: New.
* config/abi/*-linux-gnu: Move to..
* config/abi/post/*-linux-gnu: ... here.
* config/abi/pre: New.
* config/linker-map.gnu: Move to ..
* config/abi/pre/gnu.ver: ... here.
* config/linker-map.dummy: Move to..
* config/abi/pre/none.ver: ... here.
* src/Makefile.am: Use ENABLE_SYMVERS_GNU,
ENABLE_SYMVERS_DARWIN, ENABLE_SYMVERS_GNU_NAMESPACE.
Use libstdc++-symbols.ver instead of libstdc++-symbol.ver.
* src/Makefile.in: Regnerate.
* acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Adjust paths for new
placement of abi baseline files.
(GLIBCXX_ENABLE_SYMVERS): Add ENABLE_SYMVERS, ENABLE_SYMVERS_GNU,
ENABLE_SYMVERS_DARWIN. SYMVER_MAP to SYMVER_FILE.
* configure: Regnerate.
* config.h.in: Regnerate.
* src/compatibility.cc: Adjust macro usage.
From-SVN: r108748
2005-12-18 09:39:23 +00:00
Paolo Carlini
cd6dba21ac
re PR libstdc++/25421 (catching exception from codecvt_byname() segfaults)
...
2005-12-15 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/25421
* config/locale/gnu/c_locale.cc (_S_destroy_c_locale): Check
for null argument.
* testsuite/22_locale/facet/25421.cc: New.
From-SVN: r108565
2005-12-15 10:11:03 +00:00
Geoffrey Keating
f9314d012c
/Network/Servers/hills/Volumes/capanna/gkeating/l
...
From-SVN: r107131
2005-11-17 20:10:51 +00:00
Paolo Carlini
4b90c838d2
re PR libstdc++/22203 (std::numeric_limits<int>::traps is wrong on PPC)
...
2005-11-05 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/22203
* include/bits/c++config: Include cpu_defines.h.
* include/Makefile.am: Add cpu_defines.h to host_headers.
* configure.host: Add cpu_defines_dir.
* configure.ac: Use it.
* config/cpu/powerpc/cpu_defines.h: New.
* config/cpu/generic/cpu_defines.h: Likewise.
* configure: Regenerate.
* Makefile.in: Likewise.
* include/Makefile.in: Likewise.
* libmath/Makefile.in: Likewise.
* libsupc++/Makefile.in: Likewise.
* po/Makefile.in: Likewise.
* src/Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.
From-SVN: r106524
2005-11-05 09:42:01 +00:00
Carey Evans
f33e4b3d2e
re PR libstdc++/22087 (ctype<char> tables are offset by one on DJGPP)
...
2005-10-29 Carey Evans <carey.evans@gmail.com>
PR libstdc++/22087
* config/os/djgpp/ctype_inline.h: Fix.
* config/os/djgpp/ctype_noninline.h: Likewise.
From-SVN: r105999
2005-10-29 22:44:23 +00:00
Paolo Carlini
ab940869ea
re PR libstdc++/24450 (Exception safety problem in messages/__timepunct)
...
2005-10-21 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/24450
* config/locale/generic/time_members.h (__timepunct<>::
__timepunct(__c_locale, const char*, size_t)): Avoid leaking
memory if new throws inside _M_initialize_timepunct.
* config/locale/gnu/time_members.h (__timepunct<>::
__timepunct(__c_locale, const char*, size_t)): Likewise.
* config/locale/gnu/message_members.h (messages<>::
messages(__c_locale, const char*, size_t)): Rearrange to
avoid memory leaks.
From-SVN: r105729
2005-10-21 08:34:06 +00:00
Ian Lance Taylor
18c75543a8
re PR libstdc++/13583 (__use_cache not threadsafe)
...
PR libstdc++/13583
* include/bits/locale_classes.h (locale::_Impl::_M_install_cache):
Move out of line.
* src/locale.cc: Define here, add mutex.
* configure.ac (libtool_VERSION): To 6:7:0.
* configure: Regenerate.
* testsuite/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.7.
* config/linker-map.gnu: Export locale::_Impl::_M_install_cache.
From-SVN: r105221
2005-10-11 06:19:13 +00:00
Kazu Hirata
077fc835e5
configure.in (arm-*-linux-gnueabi): Add to noconfigdirs target-libffi...
...
/
* configure.in (arm-*-linux-gnueabi): Add to noconfigdirs
target-libffi, target-qthreads, target-libjava, and
targetlibobjc.
* configure: Regenerate.
gcc/
Merge from csl-arm-branch:
2005-09-07 Paul Brook <paul@codesourcery.com>
* config/arm/linux-eabi.h (SUBTARGET_EXTRA_LINK_SPEC): Prepend a
space to string.
2005-04-30 Paul Brook <paul@codesourcery.com>
* config/arm/bpabi.h (TARGET_DEFAULT): Define.
* config/arm/linux-eabi.h (SUBTARGET_CPU_DEFAULT): Define.
2005-03-07 Daniel Jacobowitz <dan@codesourcery.com>
* config/arm/arm.c (arm_all_abis): Add aapcs-linux.
(arm_override_options): Use TARGET_AAPCS_BASED.
* config/arm/arm.h (enum arm_abi_type): Add ARM_ABI_AAPCS_LINUX.
(PTRDIFF_TYPE): Use int for AAPCS.
(DEFAULT_SHORT_ENUMS): Use false for aapcs-linux.
* config/arm/linux-eabi.h (ARM_DEFAULT_ABI, WCHAR_TYPE): Define.
(DEFAULT_SHORT_ENUMS): Delete.
* doc/invoke.texi (ARM Options): Document -mabi=aapcs-linux.
2004-12-15 Daniel Jacobowitz <dan@codesourcery.com>
* config/arm/arm.h (DEFAULT_SHORT_ENUMS): Wrap in #ifndef.
* config/arm/linux-eabi.h (DEFAULT_SHORT_ENUMS): Define to 0.
* config/arm/t-linux-eabi (TARGET_LIBGCC2_CFLAGS): Set to -fPIC.
2004-12-03 Mark Mitchell <mark@codesourcery.com>
* config/arm/linux-eabi.h (LIBGCC_SPEC): Do not define.
2004-11-22 Mark Mitchell <mark@codesourcery.com>
* config.gcc (arm*-*-linux-gnueabi): Use __cxa_atexit.
2004-11-19 Mark Mitchell <mark@codesourcery.com>
* config.gcc (arm*-*-linux-gnueabi): Add it.
* config/arm/bpabi.h (FPUTYPE_DEFAULT): Undefine it before
redefining it.
(TARGET_OS_CPP_BUILTINS): Likeiwse.
* config/arm/linux-eabi.h: New file.
* config/arm/linux-elf.h (LINUX_TARGET_INTERPRETER): New macro.
(LINUX_TARET_LINK_SPEC): Likewise.
(LINK_SPEC): Use it.
* config/arm/t-linux-eabi: New file.
libcpp/
* configure.ac: Require 64-bit int for arm*-*-*eabi*.
* configure: Regenerate.
libstdc++/
Merge from csl-arm-branch:
2004-12-15 Daniel Jacobowitz <dan@codesourcery.com>
* libstdc++-v3/config/linker-map.gnu: Add ARM EABI symbols.
From-SVN: r105121
2005-10-08 18:17:20 +00:00
Benjamin Kosnik
2f9f6cef1c
[multiple changes]
...
2005-09-11 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/19265
PR libstdc++/22309
* include/ext/mt_allocator.h
(__gnu_cxx::__create_handler): Remove.
(__pool<true>::_M_destroy_thread_key): Compatibility only.
(__pool<true>::_M_initialize(__destroy): Same.
(__pool<true>::_M_initialize): New.
(__pool<true>::_M_initialize_once): Nothing fancy.
(__pool<true>::_M_once): Remove.
(__common_pool): New.
(__common_pool_base): New.
(__per_type_pool): New.
(__per_type_pool_base): New.
* src/mt_allocator.cc: Same.
* config/linker-map.gnu (__pool<true>::_M_initialize()): Add.
2005-09-11 Jakub Jelinek <jakub@redhat.com>
PR libstdc++/19265
PR libstdc++/22309
* src/mt_allocator.cc (__gnu_internal::freelist_mutex): Make static.
(__gnu_internal::__freelist): New type.
(__gnu_internal::freelist): New variable.
(__gnu_internal::_M_destroy_thread_key): New function.
(__gnu_cxx::__pool<true>::_M_destroy): Don't delete
_M_thread_freelist_initial.
(__gnu_cxx::__pool<true>::_M_initialize): Make argument nameless.
Don't use _M_thread_freelist and _M_thread_freelist_initial
__pool<true> fields, instead use __gnu_internal::freelist fields, call
gthread_key_create just once. Use
__gnu_internal::_M_destroy_thread_key as key destructor.
(__gnu_cxx::__pool<true>::_M_get_thread_id): Store size_t id
rather than _Thread_record* in the thread specific value. Don't
use _M_thread_freelist __pool<true> field, instead use
__gnu_internal::freelist fields.
(__gnu_cxx::__pool<true>::_M_destroy_thread_key): Do nothing.
2005-09-11 Benjamin Kosnik <bkoz@redhat.com>
Jakub Jelinek <jakub@redhat.com>
PR libstdc++/19265
PR libstdc++/22309
* testsuite/testsuite_shared.cc: New.
* testsuite/lib/dg-options.exp (dg-require-sharedlib): New.
* testsuite/lib/libstdc++.exp (libstdc++_init): Look for shared
library, and set v3-sharedlib based on this.
(check_v3_target_sharedlib): New.
(proc v3-build_support): Build shared objects.
* testsuite/ext/mt_allocator/22309_thread.cc: New, use above.
From-SVN: r104161
2005-09-12 04:49:11 +00:00
Benjamin Kosnik
277d42e27f
PR libstdc++/20534 (contd)
...
2005-08-26 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/20534 (contd)
* src/debug.cc (__gnu_debug): Remove __fancy_abort definition.
Remove cstdio and cstdlib includes.
* include/debug/debug.h: Define inline here. Remove
_GLIBCXX_DEBUG_ABORT.
* include/debug/macros.h: Remove __fancy_abort declaration,
_GLIBXX_DEBUG_ABORT definition.
* config/linker-map.gnu: Remove export.
From-SVN: r103535
2005-08-26 21:10:59 +00:00
J"orn Rennecke
e27ce37987
atomicity.h: Replace broken generic code with current copy of generic/atomicity.h .
...
* config/cpu/sh/atomicity.h: Replace broken generic code with current
copy of generic/atomicity.h .
From-SVN: r103274
2005-08-19 12:50:21 +01:00
Kelley Cook
83f517994d
All files: Update FSF address.
...
2005-08-17 Kelley Cook <kcook@gcc.gnu.org>
* All files: Update FSF address.
From-SVN: r103192
2005-08-17 02:28:44 +00:00
Paolo Carlini
39a72a9179
ctype_members.cc (do_is(mask, wchar_t)): Speed-up for the common case of mask == ctype_base::space...
...
2005-07-18 Paolo Carlini <pcarlini@suse.de>
* config/locale/gnu/ctype_members.cc (do_is(mask, wchar_t)):
Speed-up for the common case of mask == ctype_base::space;
otherwise, exit the loop earlier if the mask is one of the
elementary ones.
From-SVN: r102137
2005-07-18 17:42:32 +00:00
Paolo Carlini
d04e9b7fef
re PR libstdc++/22131 (std::num_get fails for input with invalid groups)
...
2005-06-29 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/22131
* include/bits/locale_facets.tcc (num_get<>::_M_extract_int,
num_get<>::_M_extract_float, money_get<>::_M_extract):
Adjust to assign the result also when digit grouping is
wrong (but the grammar is correct), as per 22.2.2.1.2, p11-12
(NB: consistently for money_get too).
* config/locale/generic/c_locale.cc (__convert_from_v): Do
not check ios_base::failbit at the outset.
* config/locale/gnu/c_locale.cc: Likewise.
* testsuite/22_locale/money_get/get/char/22131.cc: New.
* testsuite/22_locale/money_get/get/wchar_t/22131.cc: Likewise.
* testsuite/22_locale/num_get/get/char/22131.cc: Likewise.
* testsuite/22_locale/num_get/get/wchar_t/22131.cc: Likewise.
* testsuite/22_locale/num_get/get/char/12.cc: Adjust.
* testsuite/22_locale/num_get/get/wchar_t/12.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_arithmetic/char/07.cc:
Likewise.
* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/07.cc:
Likewise.
From-SVN: r101416
2005-06-29 11:48:53 +00:00
Jakub Jelinek
462ec41561
re PR libstdc++/22109 (/home/dave/opt/gnu/bin/ld: BFD 2.16.91 20050612 internal error)
...
PR libstdc++/22109
* src/compatibility.cc (_GLIBCXX_SYMVER_COMPATIBILITY): Remove.
(istreambuf_iterator, basic_fstream, basic_ifstream, basic_ofstream,
_M_copy, _M_move, _M_assign, _M_disjunct, _M_check_length,
_M_set_length_and_sharable, ignore, eq): Define to XX suffixed
variants.
(ignore (streamsize)): Remove _W prefixed aliases.
(_GLIBCXX_3_4_SYMVER_SPECIAL, _GLIBCXX_3_4_5_SYMVER_SPECIAL,
_GLIBCXX_APPLY_SYMVER_SPECIAL): Remove.
(_GLIBCXX_3_4_SYMVER, _GLIBCXX_3_4_5_SYMVER): Add XXname argument.
Use #XXname instead of #name as the alias argument.
* config/abi/compatibility.h: Replace uses of
_GLIBCXX_APPLY_SYMVER_SPECIAL with _GLIBCXX_APPLY_SYMVER. Always
pass 2 arguments to the _GLIBCXX_APPLY_SYMVER macro.
* include/bits/char_traits.h (char_traits::eq): Revert 2005-06-15
change.
* acinclude.m4: Decrease glibcxx_min_gnu_ld_version back to 21400.
* configure: Rebuilt.
From-SVN: r101273
2005-06-23 18:49:00 +02:00
Jakub Jelinek
5ef55e37b8
baseline_symbols.txt: Update.
...
2005-06-17 Jakub Jelinek <jakub@redhat.com>
Benjamin Kosnik <bkoz@redhat.com>
* config/abi/alpha-linux-gnu/baseline_symbols.txt: Update.
* config/abi/hppa-linux-gnu/baseline_symbols.txt: Same.
* config/abi/mips-linux-gnu/baseline_symbols.txt: Same.
* config/abi/sparc-linux-gnu/baseline_symbols.txt: Same.
* config/abi/alpha-freebsd5/baseline_symbols.txt: Remove.
* config/abi/i386-freebsd4/baseline_symbols.txt: Same.
* config/abi/i386-freebsd5/baseline_symbols.txt: Same.
* config/abi/sparc-freebsd5/baseline_symbols.txt: Same.
* config/abi/arm-linux-gnu/baseline_symbols.txt: Remove.
* config/abi/m68k-linux-gnu/baseline_symbols.txt: Same.
From-SVN: r101149
2005-06-18 06:14:43 +00:00
Benjamin Kosnik
bb2b2a2472
[multiple changes]
...
2005-06-17 Jakub Jelinek <jakub@redhat.com>
Benjamin Kosnik <bkoz@redhat.com>
* config/abi/alpha-linux-gnu/baseline_symbols.txt: Update.
* config/abi/hppa-linux-gnu/baseline_symbols.txt: Same.
* config/abi/mips-linux-gnu/baseline_symbols.txt: Same.
* config/abi/sparc-linux-gnu/baseline_symbols.txt: Same.
* config/abi/alpha-freebsd5/baseline_symbols.txt: Remove.
* config/abi/i386-freebsd4/baseline_symbols.txt: Same.
* config/abi/i386-freebsd5/baseline_symbols.txt: Same.
* config/abi/sparc-freebsd5/baseline_symbols.txt: Same.
* config/abi/arm-linux-gnu/baseline_symbols.txt: Remove.
* config/abi/m68k-linux-gnu/baseline_symbols.txt: Same.
2005-06-17 Jakub Jelinek <jakub@redhat.com>
* config/abi/ia64-linux-gnu/baseline_symbols.txt: Update.
* config/abi/s390x-linux-gnu/baseline_symbols.txt: Update.
* config/abi/s390-linux-gnu/baseline_symbols.txt: Update.
* config/abi/x86_64-linux-gnu/baseline_symbols.txt: Update.
* config/abi/x86_64-linux-gnu/32/baseline_symbols.txt: Update.
* config/abi/powerpc-linux-gnu/baseline_symbols.txt: Update.
* config/abi/i486-linux-gnu/baseline_symbols.txt: Update.
* config/abi/i386-linux-gnu/baseline_symbols.txt: Update.
* config/abi/powerpc64-linux-gnu/baseline_symbols.txt: New file.
* config/abi/powerpc64-linux-gnu/32/baseline_symbols.txt: New file.
2005-06-16 Jakub Jelinek <jakub@redhat.com>
* src/compatibility.cc: Include bits/c++config.h first.
(_GLIBCXX_SYMVER_COMPATIBILITY): Define if _GLIBCXX_SYMVER
and PIC are both defined.
* include/bits/char_traits.h (char_traits::eq): Rename
only if _GLIBCXX_SYMVER_COMPATIBILITY is defined.
2005-06-16 Jakub Jelinek <jakub@redhat.com>
* acinclude.m4 ((GLIBCXX_ENABLE_SYMVERS): Rename _GLIBCXX_SIZE_T_IS_INT
to _GLIBCXX_SIZE_T_IS_UINT. Define _GLIBCXX_PTRDIFF_T_IS_INT.
* configure: Regenerate.
* config.h.in: Regenerate.
* src/compatibility.cc (istream:ignore(streamsize)): Use
_GLIBCXX_PTRDIFF_T_IS_INT instead of _GLIBCXX_SIZE_T_IS_INT.
* config/abi/compatibility.h: Rename _GLIBCXX_SIZE_T_IS_INT
to _GLIBCXX_SIZE_T_IS_UINT. Use _GLIBCXX_PTRDIFF_T_IS_INT
instead for symbols with streamsize arguments.
2005-06-16 Jakub Jelinek <jakub@redhat.com>
* config/linker-map.gnu: Also export
_ZNSt13basic_istreamIwSt11char_traitsIwEE6ignoreE[il][il].
2005-06-15 Benjamin Kosnik <bkoz@redhat.com>
* configure.ac (libtool_VERSION): To 6:6:0.
* configure: Regenerate.
* config/linker-map.gnu: Edit.
* src/istream.cc: Move istream::ignore(streamsize) specializations...
* src/compatibility.cc: ...here. New.
* include/bits/char_traits.h (char_traits::eq): Rename when
appropriate.
* acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Define _GLIBCXX_SIZE_T_IS_INT.
Bump glibcxx_min_gnu_ld_version to 21590.
* configure: Regenerate.
* acconfig.h: Remove _GLIBCXX_ASM_SYMVER.
* config.h.in: Regenerate.
* src/Makefile.am (sources): Add compatibility.cc.
* src/Makefile.in: Regenerate.
* include/Makefile.am (host_headers_noinst): Add compatibility.h.
* include/Makefile.in: Regenerate.
* testsuite/testsuite_abi.h (symbol): Add data members.
* testsuite/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.5,
GLIBCXX_3.4.6. Remove deprecated versions. Do a better job
version checking.
From-SVN: r101125
2005-06-17 07:33:56 +00:00
Adrian Straetling
e0374221d9
s390.md: ("UNSPECV_MB", "UNSPECV_CAS"): New constants.
...
2005-06-07 Adrian Straetling <straetling@de.ibm.com>
gcc/ChangeLog:
* config/s390/s390.md: ("UNSPECV_MB", "UNSPECV_CAS"): New constants.
("type"): Add "sem" to 'type' attribute.
("memory_barrier", "*memory_barrier", "sync_compare_and_swapdi",
"sync_compare_and_swapsi", "sync_compare_and_swap_ccdi",
"sync_compare_and_swap_ccsi", "*sync_compare_and_swap_ccdi",
"*sync_compare_and_swap_ccsi"): New patterns.
* config/s390/2064.md: ("z_sem"): New insn_reservation.
* config/s390/2084.md: ("x_sem"): New insn_reservation.
* config/s390/s390.c: (s390_compare_emitted): New global variable.
(s390_emit_compare): Do not emit comparison again after cas.
* config/s390/s390.h (s390_compare_emitted): Declare.
libstdc++/ChangeLog:
* config/cpu/s390/atomicity.h: (__exchange_and_add,
__atomic_add): Use the builtins for atomic memory operations.
From-SVN: r100711
2005-06-07 16:35:27 +00:00
Paolo Carlini
87d33b419b
PR libstdc++/20534 (contd)
...
2005-05-31 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/20534 (contd)
* include/debug/macros.h: Add _GLIBCXX_DEBUG_ABORT, using
__gnu_debug::__fancy_abort.
* src/debug.cc: Define the latter.
* include/debug/debug.h: Use _GLIBCXX_DEBUG_ABORT instead of
assert.
* config/linker-map.gnu (__gnu_debug::__fancy_abort): Add.
From-SVN: r100405
2005-05-31 18:31:55 +00:00
Benjamin Kosnik
36b72d8d92
linker-map.gnu: Add linkage support for no extern templates.
...
2005-05-25 Benjamin Kosnik <bkoz@redhat.com>
* config/linker-map.gnu: Add linkage support for no extern templates.
(std::ios_base::_M_call_callbacks): Add.
(std::ios_base::_M_dispose_callbacks): Add.
(std::locale::facet::_S_get_c_name): Add.
(std::__copy_streambufs): Add.
* configure.ac (libtool_VERSION): To 6:5:0.
* configure: Regenerate.
* testsuite/testsuite_abi.cc (check_version): Add GLIBCXX_3.4.5.
From-SVN: r100193
2005-05-26 07:10:21 +00:00
Paolo Carlini
3ff13f48e6
re PR libstdc++/21726 (baseline_symbols.txt for powerpc64 missing)
...
2005-05-25 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/21726
* configure.host (abi_baseline_pair switch): Add an entry
for powerpc64-linux.
* config/abi/powerpc64-linux-gnu/baseline_symbols.txt: New.
* config/abi/powerpc64-linux-gnu/32/baseline_symbols.txt: New.
* config/abi/powerpc64-linux-gnu/32/nof/baseline_symbols.txt: New.
From-SVN: r100157
2005-05-25 19:33:35 +00:00
Paolo Carlini
5bf6892e61
atomicity.h: Use the builtins for atomic memory operations.
...
2005-05-25 Paolo Carlini <pcarlini@suse.de>
* config/cpu/alpha/atomicity.h: Use the builtins for
atomic memory operations.
* config/cpu/powerpc/atomicity.h: Likewise.
* config/cpu/ia64/atomicity.h: Do not include ia64intrin.h.
From-SVN: r100139
2005-05-25 09:25:25 +00:00
Benjamin Kosnik
9b22c09e3c
allocator.h: Change ___glibcxx_base_allocator to __glibcxx_base_allocator.
...
2005-05-24 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/allocator.h: Change ___glibcxx_base_allocator to
__glibcxx_base_allocator.
* config/allocator/bitmap_allocator_base.h: Same.
* config/allocator/malloc_allocator_base.h: Same.
* config/allocator/mt_allocator_base.h: Same.
* config/allocator/new_allocator_base.h: Same.
* config/allocator/pool_allocator_base.h: Same.
From-SVN: r100111
2005-05-24 20:28:55 +00:00
Paolo Carlini
df1de1a353
os_defines.h: Remove obsolete __off_t, __off64_t, __ssize_t defines.
...
2005-05-01 Paolo Carlini <pcarlini@suse.de>
* config/os/aix/os_defines.h: Remove obsolete __off_t,
__off64_t, __ssize_t defines.
* config/os/djgpp/os_defines.h: Likewise.
* config/os/hpux/os_defines.h: Likewise.
* config/os/irix/irix5.2/os_defines.h: Likewise.
* config/os/irix/irix6.5/os_defines.h: Likewise.
* config/os/solaris/solaris2.5/os_defines.h: Likewise.
* config/os/solaris/solaris2.6/os_defines.h: Likewise.
* config/os/solaris/solaris2.7/os_defines.h: Likewise.
* docs/html/17_intro/porting.html: Don't discuss the defines.
* docs/html/17_intro/porting.texi: Likewise.
From-SVN: r99072
2005-05-01 16:26:43 +00:00
Benjamin Kosnik
57b11c9654
2005-04-14 Benjamin Kosnik <bkoz@redhat.com>
...
* include/ext/bitmap_allocator.h
(__gnu_cxx::free_list::_M_get_mutex): New.
(__gnu_cxx::free_list::_M_get_free_list): New.
(__gnu_cxx::free_list::_S_bfl_mutex): Remove.
(__gnu_cxx::free_list::_S_free_list): Remove.
* src/bitmap_allocator.cc: Same.
* config/linker-map.gnu: Remove free_list and mutex export.
From-SVN: r98173
2005-04-15 04:07:45 +00:00
Danny Smith
1ae4835877
re PR libstdc++/20806 (basic_filebuf::xsgetn() fails with text mode and DOS line endings and large buffers)
...
2005-04-08 Danny Smith <dannysmith@users.sourceforge.net>
Paolo Carlini <pcarlini@suse.de>
PR libstdc++/20806
* config/os/mingw32/os_defines.h: Define
_GLIBCXX_HAVE_DOS_BASED_FILESYSTEM.
* config/os/newlib/os_defines.h: Likewise, for __CYGWIN__.
* include/bits/fstream.tcc (basic_filebuf<>::showmanyc()):
Use it.
(basic_filebuf<>::xsgetn(_CharT*, streamsize)): Likewise.
Co-Authored-By: Paolo Carlini <pcarlini@suse.de>
From-SVN: r97842
2005-04-08 17:31:33 +00:00
Ulrich Weigand
8270a21775
atomicity.h (__exchange_and_add): Add "memory" clobber to inline assembly statement.
...
* config/cpu/s390/atomicity.h (__exchange_and_add): Add "memory"
clobber to inline assembly statement.
From-SVN: r97728
2005-04-06 16:54:26 +00:00
Benjamin Kosnik
347669a079
acinclude.m4: Adjust so that _GLIBCXX_USE_C99 implies using _GLIBCXX_USE_C99_COMPLEX...
...
2005-03-23 Benjamin Kosnik <bkoz@redhat.com>
* acinclude.m4: Adjust so that _GLIBCXX_USE_C99 implies
using _GLIBCXX_USE_C99_COMPLEX, _GLIBCXX_USE_C99_MATH, and
_GLIBCXX_USE_C99_WCHAR.
Remove GLIBCXX_ENABLE_C_MBCHAR, consolidate in GLIBCXX_ENABLE_C99
and GLIBCXX_ENABLE_WCHAR_T.
Take C99 bits from GLIBCXX_CHECK_WCHAR_T_SUPPORT and put in
GLIBCXX_ENABLE_C99.
Change remaining parts of GLIBCXX_CHECK_WCHAR_T_SUPPORT to
GLIBCXX_CHECK_ICONV_SUPPORT.
* configure.ac: Remove GLIBCXX_ENABLE_C_MBCHAR, use
GLIBCXX_CHECK_ICONV_SUPPORT and GLIBCXX_ENABLE_WCHAR_T.
* crossconfig.m4: Same.
* acconfig.h: Same, adjust comments.
* config.h.in: Regenerate.
* configure: Regenerate.
* docs/html/configopts.html: Change --enable-c-mbchar to
--enable-wchar_t.
* config/locale/gnu/c++locale_internal.h: Guard wide functions
with _GLIBCXX_USE_WCHAR_T.
* include/c_std/std_cwctype.h: Alphabetize, remove duplicates.
* include/c_std/std_cstdio.h: Spacing.
* config/locale/gnu/c_locale.h: Tweaks for unused warnings.
* src/debug.cc: Same.
From-SVN: r96981
2005-03-24 05:45:45 +00:00
Hans-Peter Nilsson
b98c9bf289
re PR target/19065 (Make CRIS libstdc++ asms autoincrement-safe)
...
PR target/19065
* config/cpu/cris/atomicity.h (__exchange_and_add): In asm, use
'Q' constraint, not 'm'.
From-SVN: r95648
2005-02-28 02:33:39 +00:00
Richard Henderson
396090773c
re PR libstdc++/10606 (uncaught_exception() returns false too early)
...
PR libstdc++/10606
gcc/cp/
* except.c (do_get_exception_ptr): New.
(expand_start_catch_block): Use it.
libstdc++/
* config/linker-map.gnu (CXXABI_1.3.1): Add __cxa_get_exception_ptr.
* libsupc++/eh_alloc.cc (__cxa_allocate_exception): Increment
uncaughtExceptions here instead of ...
* libsupc++/eh_throw.cc (__cxa_throw) ... here.
(__cxa_rethrow): Increment uncaughtExceptions here instead of ...
* libsupc++/eh_catch.cc (__cxa_end_catch): ... here.
(__cxa_get_exception_ptr): New.
* libsupc++/unwind-cxx.h (__cxa_get_exception_ptr): Declare.
From-SVN: r95262
2005-02-18 18:35:25 -08:00
Mark Mitchell
f537f2f7f0
* config/linker-map.gnu (GLIBCXX_3.4): Add _ZNSdC* and _ZNSdD*.
...
From-SVN: r94739
2005-02-08 16:37:02 +00:00
Paolo Carlini
d2f64e95fd
re PR libstdc++/19642 (streaming doubles is very slow compared to sprintf)
...
2005-01-30 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/19642
* config/locale/generic/c_locale.h (__convert_from_v): Switch only
LC_NUMERIC, and only when actually != "C".
From-SVN: r94440
2005-01-30 14:09:58 +00:00
Loren J. Rittle
a7f7b3348c
acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Map FreeBSD to darwin instead of generic.
...
* acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Map FreeBSD to darwin
instead of generic. Change autoconf report to "darwin or freebsd".
* configure: Regenerate.
* config/os/bsd/freebsd/ctype_inline.h (ctype<wchar_t>::do_is): Add.
(ctype<wchar_t>::do_scan_is): Likewise.
(ctype<wchar_t>::do_scan_not): Likewise.
From-SVN: r94236
2005-01-25 23:44:03 +00:00
David Edelsohn
1906b8dc43
os_defines.h (_XOPEN_SOURCE): Delete.
...
* config/os/aix/os_defines.h (_XOPEN_SOURCE): Delete.
(_XOPEN_SOURCE_EXTENDED): Delete.
From-SVN: r93837
2005-01-18 12:08:50 -05:00
David Edelsohn
57307e313d
* config/os/aix/os_defines.h (_G_USING_THUNKS): Delete.
...
From-SVN: r93699
2005-01-15 12:38:04 -05:00
Benjamin Kosnik
825bd0e1e8
acinclude.m4: Remove CCODECVT_H.
...
2005-01-07 Benjamin Kosnik <bkoz@redhat.com>
* acinclude.m4: Remove CCODECVT_H.
* configure: Regenerate.
* include/Makefile.am (host_headers_extra): Move to...
(ext_headers): ...here.
* include/Makefile.in: Regenerate.
* include/ext/enc_filebuf: Remove enc_filebuf, consolidate
enc_traits to...
* config/locale/ieee_1003.1-2001/codecvt_specializations.h: Move...
* include/ext/codecvt_specializations.h: ...here. Remove
_GLIBCXX_USE___ENC_TRAITS.
(__enc_traits): To __encoding_state, put in __gnu_cxx namespace.
(enc_char_traits): To __encoding_char_traits, put in __gnu_cxx
namespace.
* config/locale/generic/codecvt_specializations.h: Remove.
* include/bits/codecvt.h: Remove codecvt_specializations.h include.
* src/codecvt.cc: Remove __enc_traits::_S_max_size.
From-SVN: r93062
2005-01-07 19:34:46 +00:00
David Edelsohn
7afe555c33
configure.host (aix4*|aix5*): Add atomic_word_dir.
...
* configure.host (aix4*|aix5*): Add atomic_word_dir.
* config/os/aix/atomic_word.h: New file.
From-SVN: r92673
2004-12-28 11:34:16 -05:00
Jason Merrill
445cf5eb0d
Add memory barriers to the double-checked locking used for static initialization.
...
libstdc++:
Add memory barriers to the double-checked locking used for static
initialization.
* libsupc++/guard.cc (__test_and_acquire): Define default.
(_GLIBCXX_GUARD_TEST_AND_ACQUIRE, __set_and_release)
(_GLIBCXX_GUARD_SET_AND_RELEASE): Likewise.
(recursion_push, recursion_pop): New abstraction functions.
(__cxa_guard_acquire): Use _GLIBCXX_GUARD_TEST_AND_ACQUIRE.
(__cxa_guard_release): Use _GLIBCXX_GUARD_SET_AND_RELEASE.
* config/cpu/generic/cxxabi_tweaks.h (_GLIBCXX_GUARD_TEST): Rename
from _GLIBCXX_GUARD_ACQUIRE and reverse sense.
(_GLIBCXX_GUARD_SET): Rename from _GLIBCXX_GUARD_RELEASE.
* config/cpu/arm/cxxabi_tweaks.h: Likewise.
* config/cpu/alpha/atomic_word.h (_GLIBCXX_READ_MEM_BARRIER)
(_GLIBCXX_WRITE_MEM_BARRIER): Define.
* config/cpu/powerpc/atomic_word.h: Likewise.
* config/cpu/sparc/atomic_word.h: Likewise.
* config/cpu/generic/atomic_word.h: Define them, commented out.
* include/bits/atomicity.h: Define defaults.
* config/cpu/ia64/atomic_word.h (__test_and_acquire)
(__set_and_release): New inlines.
(_GLIBCXX_GUARD_TEST_AND_ACQUIRE): Define.
(_GLIBCXX_GUARD_SET_AND_RELEASE): Define.
* libsupc++/guard.cc (acquire_1): Use __builtin_trap instead of
abort();
gcc:
* doc/tm.texi (TARGET_RELAXED_ORDERING): Document.
* target.h (struct gcc_target): Add relaxed_ordering field.
* target-def.h (TARGET_RELAXED_ORDERING): Define default.
(TARGET_INITIALIZER): Add it.
* config/alpha/alpha.c (TARGET_RELAXED_ORDERING): Define.
* config/ia64/ia64.c (TARGET_RELAXED_ORDERING): Define.
* config/rs6000/rs6000.c (TARGET_RELAXED_ORDERING): Define.
* config/sparc/sparc.c (TARGET_RELAXED_ORDERING): Define.
* cp/decl.c (expand_static_init): Don't use shortcut if
targetm.relaxed_ordering.
From-SVN: r92659
2004-12-27 23:36:54 -05:00
Danny Smith
59b1a766fb
re PR target/18997 (Segmentation Violation in pthread_getspecific)
...
gcc
PR target/18997
* config/i386/cygwin.h (GTHREAD_USE_WEAK): Define to 0.
libstdc++-v3
PR target/18997
* config/os/newlib/os_defines.h (_GLIBCXX_GTHREAD_USE_WEAK):
Define to 0 for __CYGWIN__.
From-SVN: r92281
2004-12-16 19:56:12 +00:00
Volker Reichelt
e76382b571
2004-11-24 Volker Reichelt <reichelt@igpm.rwth-aachen.de>
...
* config/locale/ieee_1003.1-2001/codecvt_specializations.h
(do_out, do_unshift, do_in): Remove redundant typedef.
From-SVN: r91156
2004-11-24 13:39:48 +00:00
Benjamin Kosnik
00aca6e83a
locale_facets.h (isspace, [...]): Add doxygen markup.
...
2004-11-22 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/locale_facets.h (isspace, isprint, isupper,
islower, isalpha, isdigit, ispunct, isxdigit, isalnum, isgraph,
toupper, tolower): Add doxygen markup.
(codecvt_byname, ctype_byname, numpunct_byname, collate_byname,
time_get_byname, time_put_byname, moneypunct_byname,
messages_byname): Same.
* include/std/std_fstream.h: Remove superfluous markup.
* include/std/std_sstream.h: Same.
* include/std/std_streambuf.h: Same.
* include/ext/enc_filebuf.h: Adjust markup.
* include/ext/stdio_filebuf.h: Same.
* include/ext/stdio_sync_filebuf.h: Same.
* include/bits/codecvt.h: Same.
* config/os/gnu-linux/ctype_base.h: Same.
* config/locale/ieee_1003.1-2001/codecvt_specializations.h: Same.
* include/tr1/array: Add markup.
* include/tr1/tuple: Same.
* docs/doxygen/run_doxygen: Print arguments.
* docs/doxygen/user.cfg.in: Tweaks.
From-SVN: r91080
2004-11-23 09:18:41 +00:00
Benjamin Kosnik
8736cbe6f2
configure.ac (libtool_VERSION): To 6:4:0.
...
2004-11-08 Benjamin Kosnik <bkoz@redhat.com>
* configure.ac (libtool_VERSION): To 6:4:0.
* configure: Regenerate.
* config/linker-map.gnu: Slide new symbols into GLIBCXX_3.4.4.
* docs/doxygen/user.cfg.in: Add more extension files.
From-SVN: r90292
2004-11-08 20:06:30 +00:00
Benjamin Kosnik
6309eefc3d
re PR libstdc++/17218 (unknown subjects in generated libstdc++ manpages)
...
2004-11-05 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/17218
PR libstdc++/17223
* docs/doxygen/filter: Remove.
* docs/doxygen/filter.sed: Remove.
* docs/doxygen/mainpage.html: Add link to functions.
* docs/doxygen/run_doxygen: Changes due to new source filtering.
* docs/doxygen/user.cfg.in: Update to doxygen 1.3.9.1, tweak.
* include/bits/allocator.h: Tweaks for doxygen.
* include/bits/char_traits.h: Same.
* include/bits/codecvt.h: Same.
* include/bits/concurrence.h: Same.
* include/bits/locale_facets.h: Same.
* include/ext/array_allocator.h: Same.
* include/ext/debug_allocator.h: Same.
* include/ext/malloc_allocator.h: Same.
* include/ext/mt_allocator.h: Same.
* include/ext/new_allocator.h: Same.
* include/ext/pool_allocator.h: Same.
* include/ext/stdio_sync_filebuf.h: Same.
* include/std/std_memory.h: Same.
* include/tr1/array: Same.
* include/tr1/tuple: Same.
* config/locale/ieee_1003.1-2001/codecvt_specializations.h: Same.
* config/os/gnu-linux/ctype_base.h: Same.
From-SVN: r90137
2004-11-05 19:58:03 +00:00
Aaron W. LaFramboise
5cc781508e
* config/os/bsd/darwin/os_defines.h
...
(_GLIBCXX_WEAK_DEFINITION): Define.
* include/bits/c++config (_GLIBCXX_WEAK_DEFINITION): Define.
* libsupc++/del_op.cc (operator delete(void *)): Use
_GLIBCXX_WEAK_DEFINITION.
* libsupc++/del_opnt.cc
(operator delete(void *, const std::nothrow_t&)): Same.
* libsupc++/del_opv.cc (operator delete[](void *)): Same.
* libsupc++/del_opvnt.cc
(operator delete[](void *, const std::nothrow_t&)): Same.
* libsupc++/new_op.cc (operator new(std::size_t)): Same.
* libsupc++/new_opnt.cc
(operator new(std::size_t, const std::nothrow_t&)): Same
* libsupc++/new_opv.cc (operator new[](std::size_t)): Same.
* libsupc++/new_opvnt.cc
(operator new[](std::size_t, const std::nothrow_t&)): Same.
From-SVN: r90017
2004-11-02 21:00:00 -06:00
Benjamin Kosnik
bd80bd9b93
re PR libstdc++/17922 (Spurious warnings about std::ios_base::seekdir)
...
2004-11-02 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/17922
* include/bits/ios_base.h : Add enum values.
* testsuite/testsuite_hooks.h (bitmask_operators): Add function.
* testsuite/27_io/ios_base/types/fmtflags/bitmask_operators.cc: New.
* testsuite/27_io/ios_base/types/fmtflags/case_label.cc: New.
* testsuite/27_io/ios_base/types/iostate/bitmask_operators.cc: New.
* testsuite/27_io/ios_base/types/iostate/case_label.cc: New.
* testsuite/27_io/ios_base/types/openmode/bitmask_operators.cc: New.
* testsuite/27_io/ios_base/types/openmode/case_label.cc: New.
* testsuite/27_io/ios_base/types/seekdir/case_label.cc: New.
* config/io/c_io_stdio.h (__ios_flags): Mark deprecated.
* src/ios.cc: Same.
* testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
* testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
From-SVN: r89996
2004-11-02 19:00:19 +00:00
Geoffrey Keating
f9686024ee
configure.host (darwin*): Set os_include_dir to a separate directory for Darwin.
...
* configure.host (darwin*): Set os_include_dir to a separate directory
for Darwin.
* acinclude.m4 (GLIBCXX_ENABLE_CLOCALE): Add a new C locale kind,
'darwin'.
* config/locale/darwin/ctype_members.cc: New.
* config/os/bsd/darwin/ctype_base.h: New.
* config/os/bsd/darwin/ctype_inline.h: New.
* config/os/bsd/darwin/ctype_noninline.h: New.
* config/os/bsd/darwin/os_defines.h: New.
From-SVN: r89874
2004-10-30 01:03:12 +00:00
Dhruv Matani
a815571193
bitmap_allocator.h: Change unsigned int -> size_t...
...
2004-10-17 Dhruv Matani <dhruvbird@gmx.net>
Paolo Carlini <pcarlini@suse.de>
* include/ext/bitmap_allocator.h: Change unsigned int -> size_t: this
makes the code 64-bit correct and also fixes (together with using at
the beginning a bitmap 2 * size_t bytes wide) alignment issues: now
8 is guaranteed, easily tunable to 16 via _BALLOC_ALIGN_BYTES.
Fix pthread-rope7.cc fail by nulling out __mini_vector<> destructor.
* src/bitmap_allocator.cc: Change to size_t.
* config/linker-map.gnu: Adjust.
Co-Authored-By: Paolo Carlini <pcarlini@suse.de>
From-SVN: r89170
2004-10-17 14:46:29 +00:00
Dhruv Matani
1399eca190
bitmap_allocator.h: Clean-up add/remove functions.
...
2004-10-14 Dhruv Matani <dhruvbird@gmx.net>
* ext/bitmap_allocator.h: Clean-up add/remove functions.
* src/bitmap_allocator.cc: New file. Contains the out-of-line
function definitions, static initialization of variables, and
explicit instantiations needed for the allocator.
* src/Makefile.am: Add.
* src/Makefile.in: Regenerate.
* config/linker.map.gnu: Add the necessary symbols.
From-SVN: r89042
2004-10-14 17:52:18 +00:00
Benjamin Kosnik
5a1e5472f5
re PR libstdc++/17937 (Critical ~__pool troubles)
...
2004-10-11 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/stl_deque.h: Correct for over-long lines.
2004-10-11 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/17937
* include/ext/mt_allocator.h (__pool::_M_destroy): New.
* src/mt_allocator.cc (__pool::~__pool): Change definitions to
_M_destroy.
* acconfig.h: Remove _GLIBCXX_USE___CXA_ATEXIT.
* acinclude.m4 (GLIBCXX_ENABLE_CXA_ATEXIT): Remove.
* configure.ac: Remove call to GLIBCXX_ENABLE_CXA_EXIT.
* configure: Regenerate.
* config/linker-map.gnu: Tweak exports.
* docs/html/ext/mt_allocator.html: Update docs.
* testsuite/ext/mt_allocator/deallocate_global-2.cc: Fix.
* testsuite/ext/mt_allocator/deallocate_global-4.cc: Fix.
* testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: Fix.
* testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: Fix.
* testsuite/ext/mt_allocator/deallocate_local-2.cc: Fix.
* testsuite/ext/mt_allocator/deallocate_local-4.cc: Fix.
* testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: Fix.
* testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: Fix.
From-SVN: r88913
2004-10-12 01:10:39 +00:00
Paolo Carlini
a780ad2f43
monetary_members.cc (_S_construct_pattern): Give __ret a default value, thus avoiding spurious warnings.
...
2004-10-10 Paolo Carlini <pcarlini@suse.de>
* config/locale/gnu/monetary_members.cc (_S_construct_pattern):
Give __ret a default value, thus avoiding spurious warnings.
* testsuite/performance/27_io/filebuf_sgetn_unbuf.cc: Open either
words or linux.words, otherwise exit.
* testsuite/performance/27_io/ifstream_getline.cc: Slighlty tweak.
From-SVN: r88848
2004-10-10 17:55:23 +00:00
Benjamin Kosnik
12cde21b12
re PR libstdc++/17780 (std::allocator vs. static init)
...
2004-10-05 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/17780
* include/ext/mt_allocator.h (__pool_base::_Tune): Add default
options as compile-time constant enums.
(__pool_base::_Tune::is_default): New.
(__pool_base::_Block_address): New.
(__pool_base): Rearrange data members.
(__pool::_M_reserve_memory): To _M_reserve_block.
(__pool::_M_reclaim_memory): To _M_reclaim_block.
(__pool::_Bin_record): Add _Block_address data member.
(__pool<false>): Add _M_thread_freelist_initial.
(__pool::~__pool): Declare.
(__common_pool_policy): Move static data member to...
(__common_pool_policy::_S_get_pool): ...here, make static local.
(__per_type_pool_policy): Move static data member to...
(__per_type_pool_policy::_S_get_pool): ...here, make static local.
(__mt_alloc::__mt_alloc): Call __policy_type::_S_get_pool.
Remove static member definitions. Use define for __default_policy.
* src/mt_allocator.cc: Same.
* config/linker-map.gnu: Don't export _S_get_pool. Renames.
* testsuite/ext/new_allocator: New.
* testsuite/ext/new_allocator/instantiate.cc: New.
* testsuite/ext/new_allocator/check_new.cc: New.
* testsuite/ext/new_allocator/deallocate_global.cc: New.
* testsuite/ext/new_allocator/deallocate_local.cc: New.
* testsuite/ext/mt_allocator/instantiate.cc: Instantiate all
template arguments.
* testsuite/ext/mt_allocator/deallocate_global-1.cc: New.
* testsuite/ext/mt_allocator/deallocate_global-2.cc: New.
* testsuite/ext/mt_allocator/deallocate_global-3.cc: New.
* testsuite/ext/mt_allocator/deallocate_global-4.cc: New.
* testsuite/ext/mt_allocator/deallocate_local-1.cc: New.
* testsuite/ext/mt_allocator/deallocate_local-2.cc: New.
* testsuite/ext/mt_allocator/deallocate_local-3.cc: New.
* testsuite/ext/mt_allocator/deallocate_local-4.cc: New.
* testsuite/ext/mt_allocator/deallocate.cc: New.
* testsuite/ext/malloc_allocator/deallocate.cc: New.
* testsuite/ext/malloc_allocator/deallocate_global.cc: New.
* testsuite/ext/malloc_allocator/deallocate_local.cc: New.
From-SVN: r88589
2004-10-06 04:22:42 +00:00
Ulrich Weigand
29cb3c21e8
configure.host (abi_baseline_pair): Define for s390-*-linux* and s390x-*-linux*.
...
* configure.host (abi_baseline_pair): Define for s390-*-linux* and
s390x-*-linux*.
* config/abi/s390-linux-gnu/baseline_symbols.txt: Add missing symbols.
* config/abi/s390x-linux-gnu/baseline_symbols.txt: New file.
From-SVN: r88553
2004-10-05 13:45:38 +00:00
Roger Sayle
cfd51eaf34
re PR libstdc++/17505 (<cmath> calls acosf(), ceilf(), and other functions missing from system libraries)
...
PR libstdc++/17505
* config/linker-map.gnu: Synchronize the current list of stub
functions from libmath.
Co-Authored-By: Eric Botcazou <ebotcazou@libertysurf.fr>
From-SVN: r88540
2004-10-05 02:30:48 +00:00
Roger Sayle
e6fecd0132
c_locale.cc (__convert_to_v): Use _GLIBCXX_HAVE_STRTOF instead _GLIBCXX_USE_C99 to check for strtof.
...
* config/locale/generic/c_locale.cc (__convert_to_v): Use
_GLIBCXX_HAVE_STRTOF instead _GLIBCXX_USE_C99 to check for strtof.
Likewise, use _GLIBCXX_HAVE_STRTOLD instead of _GLIBCXX_USE_C99
to check for presence of strtold.
From-SVN: r88472
2004-10-04 00:19:57 +00:00
Paolo Carlini
dd5d134bc9
PR libstdc++/12882 (cont)
...
2004-09-21 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/12882 (cont)
* acinclude.m4 (GLIBCXX_CHECK_LFS): Check for fstat64 too.
* configure: Regenerate.
* config/io/basic_file_stdio.cc (__basic_file<>::showmanyc): When
_GLIBCXX_USE_LFS use fstat64 and lseek64, thus providing a non
trivial showmanyc for large files too.
From-SVN: r87797
2004-09-21 09:06:08 +00:00
Paolo Carlini
ee19761de7
basic_file_stdio.cc (__basic_file<>::close)): Don't call unnecessarily sync, that is fflush...
...
2004-09-17 Paolo Carlini <pcarlini@suse.de>
Andrea Arcangeli <andrea@suse.de>
* config/io/basic_file_stdio.cc (__basic_file<>::close)): Don't
call unnecessarily sync, that is fflush: the library, since 3.4.0
does not use buffered fread/fwrite.
* include/bits/fstream.tcc (basic_filebuf<>::overflow): Likewise.
Co-Authored-By: Andrea Arcangeli <andrea@suse.de>
From-SVN: r87636
2004-09-17 08:42:07 +00:00
Mark Mitchell
511bbc8f91
cxxabi_tweaks.h (__cxa_cdtor_return_type): Define.
...
* config/cpu/arm/cxxabi_tweaks.h (__cxa_cdtor_return_type):
Define.
* config/cpu/generic/cxxabi_tweaks.h (__cxa_cdtor_return_type):
Define.
* libsupc++/cxxabi.h (__cxa_cdtor_return_type): New type.
(__cxa_vec_new): Use it.
(__cxa_vec_new2): Likewise.
(__cxa_vec_new3): Likewise.
(__cxa_vec_cdtor): Likewise.
(__cxa_vec_cctor): Likeiwse.
(__cxa_vec_dtor): Likewise.
(__cxa_vec_cleanup): Likewise.
(__cxa_vec_delete2): Likewise.
(__cxa_vec_delete3): Likewise.
* libsupc++/vec.cc (__cxa_vec_new): Likewise.
(__cxa_vec_new2): Likewise.
(__cxa_vec_new3): Likewise.
(__cxa_vec_cdtor): Likewise.
(__cxa_vec_cctor): Likeiwse.
(__cxa_vec_dtor): Likewise.
(__cxa_vec_cleanup): Likewise.
(__cxa_vec_delete2): Likewise.
(__cxa_vec_delete3): Likewise.
(__aeabi_vec_ctor_nocookie_nodtor): New function.
(__aeabi_vec_ctor_cookie_nodtor): Likewise.
(__aeabi_vec_cctor_nocookie_nodtor): Likewise.
(__aeabi_vec_new_cookie_noctor): Likewise.
(__aeabi_vec_new_nocookie): Likewise.
(__aeabi_vec_new_cookie_nodtor): Likewise.
(__aeabi_vec_new_cookie): Likewise.
(__aeabi_vec_dtor): Likewise.
(__aeabi_vec_dtor_cookie): Likewise.
(__aeabi_vec_delete): Likewise.
(__aeabi_vec_delete3): Likewise.
(__aeabi_vec_delete3_nodtor): Likewise.
(__aeabi_atexit): Likewise.
* testsuite/g++.old-deja/g++.abi/cxa_vec.C: Adjust for ARM
EABI.
From-SVN: r87585
2004-09-16 03:41:19 +00:00
Benjamin Kosnik
c3462823c6
linker-map.gnu (GLIBCXX_3.4.3): New, adjust symbol exports.
...
2004-09-08 Benjamin Kosnik <bkoz@redhat.com>
* config/linker-map.gnu (GLIBCXX_3.4.3): New, adjust symbol exports.
From-SVN: r87186
2004-09-08 13:54:18 +00:00
Benjamin Kosnik
8bfd0a46ea
re PR libstdc++/16614 (Excessive resource usage in __mt_alloc)
...
2004-09-01 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/16614
* include/ext/mt_allocator.h (__mt_base): Not type dependent,
split into..
(__pool): New, specialize.
(__common_pool): New, static bits here.
(__per_type_pool): New, and here.
(__mt_alloc_base): New.
(__mt_alloc): Add template parameter, inherit from it.
* src/allocator.cc: Split this...
* src/allocator-inst.cc: And this...
* src/pool_allocator.cc: ...into this.
* src/mt_allocator.cc: ... and this. Add definitions for
__mt_base.
* src/Makefile.am (sources): Split allocator.cc to
pool_allocator.cc and mt_allocator.cc.
* src/Makefile.in: Regenerate.
* config/linker-map.gnu: Add symbols.
* docs/html/ext/mt_allocator.html: Document new design.
* testsuite/ext/mt_allocator/tune-1.cc: New.
* testsuite/ext/mt_allocator/tune-2.cc: New.
* testsuite/ext/mt_allocator/tune-3.cc: New.
* testsuite/ext/mt_allocator/tune-4.cc: New.
* testsuite/testsuite_allocator.h (__gnu_test::check_new): New.
* testsuite/ext/allocators.cc: Use check_new, split into...
* testsuite/ext/mt_allocator/check_new.cc: this.
* testsuite/ext/pool_allocator/check_new.cc: this.
* testsuite/ext/malloc_allocator/check_new.cc: this.
* testsuite/ext/debug_allocator/check_new.cc: this.
* testsuite/ext/mt_allocator/instantiate.cc: this.
* testsuite/ext/pool_allocator/instantiate.cc: this.
* testsuite/ext/malloc_allocator/instantiate.cc: this.
* testsuite/ext/debug_allocator/instantiate.cc: this.
From-SVN: r86936
2004-09-01 22:17:00 +00:00
Benjamin Kosnik
fa01624514
pool_allocator.h: Rename __pool_base to __pool_alloc_base.
...
2004-08-30 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/pool_allocator.h: Rename __pool_base to
__pool_alloc_base.
* src/allocator.cc: Same.
* config/linker-map.gnu: Same.
From-SVN: r86789
2004-08-30 18:22:01 +00:00
Paolo Carlini
ce894603bf
re PR libstdc++/17215 ([3.4 only] __basic_file<char>::close ignores errors)
...
2004-08-30 Paolo Carlini <pcarlini@suse.de>
Kenneth C. Schalk <ken@xorian.net>
PR libstdc++/17215
* config/io/basic_file_stdio.cc (__basic_file<char>::close()):
Check the return value of fclose/sync, loop on EINTR.
(__basic_file<char>::sys_open): Likewise, for sync.
Co-Authored-By: Kenneth C. Schalk <ken@xorian.net>
From-SVN: r86756
2004-08-30 11:33:54 +00:00
Matthias Klose
23a62f7f9e
baseline_symbols.txt: New.
...
2004-08-27 Matthias Klose <doko@debian.org>
* config/abi/arm-linux-gnu/baseline_symbols.txt: New.
* config/abi/mips-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
* configure.host: Set abi_baseline_pair for arm*-*-linux* and
mips*-*-linux*.
From-SVN: r86677
2004-08-27 19:58:15 +00:00
Paolo Carlini
cb79308987
PR libstdc++/17038 (partial)
...
2004-08-25 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/17038 (partial)
* include/bits/locale_facets.tcc (time_put<>::do_put): Increase
__maxlen to 128.
* include/bits/locale_facets.h (class __timepunct): Add FIXME
comment about _M_put.
* config/locale/generic/time_members.cc (_M_put): Always null
terminate __s.
* config/locale/gnu/time_members.cc (_M_put): Likewise.
* testsuite/22_locale/time_put/put/char/17038.cc: New.
* testsuite/22_locale/time_put/put/wchar_t/17038.cc: New.
From-SVN: r86586
2004-08-25 23:38:29 +00:00
Matthias Klose
106a720099
baseline_symbols.txt: New.
...
2004-08-22 Matthias Klose <doko@debian.org>
* config/abi/m68k-linux-gnu/baseline_symbols.txt: New.
* config/abi/sparc-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
From-SVN: r86428
2004-08-23 15:07:53 +00:00
John David Anglin
dd8b67a1a8
atomicity.h (__exchange_and_add, [...]): Add memory barrier to locking asm.
...
* cpu/hppa/atomicity.h (__exchange_and_add, __atomic_add): Add memory
barrier to locking asm.
From-SVN: r86328
2004-08-20 16:08:49 +00:00
Matthias Klose
05d2826595
baseline_symbols.txt: New.
...
2004-08-20 Matthias Klose <doko@debian.org>
* config/abi/s390-linux-gnu/baseline_symbols.txt: New.
From-SVN: r86318
2004-08-20 13:39:18 +00:00
Paolo Carlini
7368df6fa3
baseline_symbols.txt: Add 32 bit baseline.
...
2004-08-20 Paolo Carlini <pcarlini@suse.de>
* config/abi/x86_64-linux-gnu/32/baseline_symbols.txt: Add 32 bit
baseline.
From-SVN: r86304
2004-08-20 09:01:05 +00:00
Paolo Carlini
f14bf98ed3
baseline_symbols.txt: Fix it.
...
2004-08-20 Paolo Carlini <pcarlini@suse.de>
* config/abi/x86_64-linux-gnu/baseline_symbols.txt: Fix it.
From-SVN: r86302
2004-08-20 08:33:46 +00:00
Paolo Carlini
861aa21540
baseline_symbols.txt: Update to 3.4.0.
...
2004-08-19 Paolo Carlini <pcarlini@suse.de>
* config/abi/x86_64-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
From-SVN: r86242
2004-08-19 08:47:17 +00:00
Matthias Klose
f80fd74213
baseline_symbols.txt: Update to 3.4.0.
...
2004-08-18 Matthias Klose <doko@debian.org>
* config/abi/hppa-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
* config/abi/i386-linux-gnu/baseline_symbols.txt: New.
* config/abi/powerpc-linux-gnu/baseline_symbols.txt: New.
From-SVN: r86226
2004-08-19 00:18:04 +00:00
Paolo Carlini
7fa53b443a
baseline_symbols.txt: Update to 3.4.0.
...
2004-08-17 Paolo Carlini <pcarlini@suse.de>
* config/abi/alpha-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
From-SVN: r86155
2004-08-17 22:58:55 +00:00
Paolo Carlini
1bc7e46697
baseline_symbols.txt: Update to 3.4.0.
...
2004-08-17 Paolo Carlini <pcarlini@suse.de>
* config/abi/ia64-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
From-SVN: r86142
2004-08-17 20:25:55 +00:00
Benjamin Kosnik
4c7cb3ea1e
baseline_symbols.txt: Update to 3.4.0.
...
2004-08-17 Benjamin Kosnik <bkoz@redhat.com>
* config/abi/i486-linux-gnu/baseline_symbols.txt: Update to 3.4.0.
From-SVN: r86126
2004-08-17 15:17:03 +00:00
Paul Brook
47bedfb079
cxxabi_tweaks.h: Define __cxa_vec_ctor_return and _GLIBCXX_CXA_VEC_CTOR_RETURN.
...
* config/cpu/arm/cxxabi_tweaks.h: Define __cxa_vec_ctor_return and
_GLIBCXX_CXA_VEC_CTOR_RETURN.
* config/cpu/generic/cxxabi_tweaks.h: Ditto.
* libsupc++/cxxabi.h (__cxa_vec_ctor, __cxa_vec_cctor): Use
__cxa_vec_ctor_return.
* libsupc++/vec.cc (__cxa_vec_ctor, __cxa_vec_cctor): Ditto.
Use _GLIBCXX_CXA_VEC_CTOR_RETURN.
* g++.dg/abi/arm_cxa_vec_1.C: New test.
From-SVN: r85891
2004-08-12 18:50:38 +00:00
Jan Beulich
03a2b8100f
2004-08-12 Jan Beulich <jbeulich@novell.com>
...
* config/locale/generic/ctype_members.cc
(ctype<wchar_t>::_M_convert_to_wmask): Default case must not use 0 as
initializer for return value, as that is invalid for enumerated types.
* config/locale/gnu/ctype_members.cc
(ctype<wchar_t>::_M_convert_to_wmask): Likewise.
From-SVN: r85862
2004-08-12 09:46:39 +00:00
Paolo Carlini
49864a8255
c_locale.h (__convert_from_v): Don't use a default for __prec, assume __prec >= 0 and simplify.
...
2004-08-07 Paolo Carlini <pcarlini@suse.de>
* config/locale/generic/c_locale.h (__convert_from_v): Don't
use a default for __prec, assume __prec >= 0 and simplify.
* config/locale/gnu/c_locale.h (__convert_from_v): Likewise.
* include/bits/locale_facets.tcc (money_put<>::do_put(long double)):
Pass format "%.*Lf" + precision == 0, equivalent to "%.0Lf".
From-SVN: r85669
2004-08-07 13:48:31 +00:00
Jason Merrill
d4794d1a61
fix typo
...
From-SVN: r85575
2004-08-04 17:13:16 -04:00
Alexandre Oliva
312209c6a5
Introduce sh4a support.
...
gcc/ChangeLog:
Introduce sh4a support.
* config.gcc: Handle sh4a multilibs and cpu selection.
* config/sh/sh.h: Likewise. Handle sh4a command line flags.
* config/sh/t-mlib-sh4a: New.
* config/sh/t-mlib-sh4al: New.
* config/sh/t-mlib-sh4a-nofpu: New.
* config/sh/t-mlib-sh4a-single: New.
* config/sh/t-mlib-sh4a-single-only: New.
2004-02-20 DJ Delorie <dj@redhat.com>
* config/sh/sh.md ("movua"): Change constraint from "m" to "Sua".
* config/sh/sh.h (EXTRA_CONSTRAINT_S): Add "Sua" support.
2003-08-22 Eric Christopher <echristo@redhat.com>
* config/sh/sh4a.md: Update for chip errata.
2003-08-07 Eric Christopher <echristo@redhat.com>
* config/sh/sh4a.md: New file. sh4a processor description.
2003-07-08 Alexandre Oliva <aoliva@redhat.com>
* config/sh/sh.h (TARGET_SWITCHES): Added 4al. Adjust description
of -m4a-nofpu.
(SH_ASM_SPEC): Pass -dsp for -m4al, not -m4a-nofpu.
* config/sh/t-sh (MULTILIB_MATCHES): Map -m4al to -m4a-nofpu.
* doc/invoke.texi (SH Options): Document -m4al.
2003-07-03 Alexandre Oliva <aoliva@redhat.com>
* config/sh/sh.c (expand_block_move): Remove commented-out code
checked in by mistake.
(sh_cannot_change_mode_class): Enable SUBREGs to be used to select
single elements from SFmode vectors.
* config/sh/sh.md (fsca): Use VEC_CONCAT to initialize the output
register.
(sinsf2, cossf2, sindf2, cosdf2): Don't emit CLOBBER.
2003-07-01 Alexandre Oliva <aoliva@redhat.com>
* config/sh/sh.h (sh_fsca_sf2int, sh_fsca_df2int,
sh_fsca_int2sf): Remove variable declarations.
* config/sh/sh.c (sh_fsca_sf2int, sh_fsca_df2int,
sh_fsca_int2sf): New functions.
(sh_fsca_sf2int_rtx, sh_fsca_df2int_rtx,
sh_fsca_int2sf_rtx): New static variables.
* config/sh/sh-protos.h (sh_fsca_sf2int, sh_fsca_df2int,
sh_fsca_int2sf): Declare.
* config/sh/sh.md: Adjust.
* doc/invoke.texi (SH Options): Document new options.
* config/sh/lib1funcs.asm (ic_invalidate): Remove SH4a forward
compatibility from SH4 code.
2003-06-27 Alexandre Oliva <aoliva@redhat.com>
* config/sh/sh.c (expand_block_move): Don't emit POST_INC too
early.
(memory_movsrc_operand): Renamed to...
(unaligned_load_operand): ... this. Simplified.
* config/sh/sh.h (PREDICATE_CODES): Adjust.
* config/sh/sh.md (movua, extv, extzv): Likewise. Change movua's
input operand to SImode, and adjust the others. Introduce
post-increment by peephole.
* config/sh/sh.c (expand_block_move): Give the target address the
same mode as the temp reg.
* config/sh/sh.c (expand_block_move): Use a temp reg for unaligned
copying.
2003-06-26 Alexandre Oliva <aoliva@redhat.com>
Introduce support for SH4a.
* config/sh/lib1funcs.asm (ic_invalidate): Use icbi if
__SH4A__. Emit 4 4kb blocks and touch all of them otherwise.
* config/sh/sh.c (sh_fsca_sf2int, sh_fsca_df2int,
sh_fsca_int2sf): New.
(sh_init_builtins): Initialize them.
(print_operand): Support `d'.
(expand_block_move): Use movua if src is misaligned.
(memory_movsrc_operand): New.
* config/sh/sh.h (TARGET_CPU_CPP_BUILTINS): Define __SH4A__
and one of the SH4 macros.
(SH4A_BIT, TARGET_SH4A_ARCH, TARGET_SH4A_FP,
SELECT_SH4A_NOFPU, SELECT_SH4A_SINGLE_ONLY, SELECT_SH4A,
SELECT_SH4A_SINGLE): New.
(TARGET_NONE): Add SH4A_BIT.
(TARGET_SWITCHES): Add 4a-single-only, 4a-single, 4a-nofpu and 4a.
(SH_ASM_SPEC): Pass -dsp if -m4a-nofpu.
(sh_fsca_sf2int, sh_fsca_df2int, sh_fsca_int2sf): Declare.
(OVERRIDE_OPTIONS): Set cpu to CPU_SH4A when appropriate.
(enum processor_type): Added PROCESSOR_SH4A.
(PREDICATE_CODES): Add memory_movsrc_operand.
* config/sh/sh.md: Removed unused variables.
(attr cpu): Add sh4a.
(attr type): Add movua, fsrra and fsca.
(prefetch): New, for SH4.
(ic_invalidate_line, ic_invalidate_line_sh4a): Use icbi.
(toggle_sz): Set type to fp.
(toggle_pr, rsqrtsf2, fsca, sinsf2, cossf2, sindf2, cosdf2): New.
(movua, extv, extzv): New.
* config/sh/t-sh: Add multilibs for 4a, 4a-nofpu, 4a-single
and 4a-single-only.
gcc/testsuite/ChangeLog:
2003-07-06 Alexandre Oliva <aoliva@redhat.com>
* gcc.dg/sh4a-memmovua.c: Tweak regular expression.
2003-07-01 Alexandre Oliva <aoliva@redhat.com>
* gcc.dg/sh4a-bitmovua.c: New.
* gcc.dg/sh4a-cos.c: New.
* gcc.dg/sh4a-cosf.c: New.
* gcc.dg/sh4a-fprun.c: New.
* gcc.dg/sh4a-fsrra.c: New.
* gcc.dg/sh4a-memmovua.c: New.
* gcc.dg/sh4a-sin.c: New.
* gcc.dg/sh4a-sincos.c: New.
* gcc.dg/sh4a-sincosf.c: New.
* gcc.dg/sh4a-sinf.c: New.
libstdc++-v3/ChangeLog:
2003-10-01 Eric Christopher <echristo@redhat.com>
* config/cpu/sh/atomicity.h (__exchange_and_add): Remove 'm'
constraint.
2003-07-09 Alexandre Oliva <aoliva@redhat.com>
* config/cpu/sh/atomicity.h: New. Use movli and movco on SH4a.
From-SVN: r85257
2004-07-28 09:13:58 +00:00
Benjamin Kosnik
9e80211469
[multiple changes]
...
2004-07-07 Benjamin Kosnik <bkoz@redhat.com>
* configure.ac (libtool_VERSION): To 6:2:0.
* configure: Regenerated.
* testsuite/testsuite_abi.cc (check_version): Add 3.4.2.
2004-07-07 Aaron W. LaFramboise <aaronraolete36@aaronwl.com>
PR libstdc++/16411
* config/linker-map.gnu: Add stdio_sync_filebuf::file exports.
From-SVN: r84264
2004-07-08 05:24:33 +00:00
Paul Brook
a7e4cdca85
cxxabi_tweaks.h: New file.
...
* config/cpu/arm/cxxabi_tweaks.h: New file.
* config/cpu/generic/cxxabi_tweaks.h: New file.
From-SVN: r84035
2004-07-02 23:58:41 +00:00
Benjamin Kosnik
bd535dc55c
linker-map.gnu: Revert.
...
2004-06-30 Benjamin Kosnik <bkoz@redhat.com>
* config/linker-map.gnu: Revert.
From-SVN: r83913
2004-06-30 16:38:42 +00:00
Benjamin Kosnik
9abf398dd9
linker-map.gnu: Add destructor exports for abstract base classes to conform to LSB.
...
2004-06-30 Benjamin Kosnik <bkoz@redhat.com>
Stuart Anderson <anderson@netsweng.com>
* config/linker-map.gnu: Add destructor exports for abstract base
classes to conform to LSB.
Co-Authored-By: Stuart Anderson <anderson@netsweng.com>
From-SVN: r83910
2004-06-30 16:19:45 +00:00
Paolo Carlini
61c53cd36b
2004-06-28 Paolo Carlini <pcarlini@suse.de>
...
* config/locale/gnu/monetary_members.cc
(moneypunct<wchar_t>::_M_initialize_moneypunct): Clean up
assignments of _M_decimal_point and _M_thousands_sep.
From-SVN: r83767
2004-06-28 09:27:18 +00:00
Benjamin Kosnik
838d430929
concurrence.h (__gnu_cxx::lock): New.
...
2004-06-24 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/concurrence.h (__gnu_cxx::lock): New.
* include/ext/pool_allocator.h (__pool_base::_Lock::_S_lock): Remove.
(__pool_base::_M_get_mutex): New.
* include/bits/allocator.h: Tweak.
* src/allocator.cc (__pool_base::_M_get_free_list): Correct offset.
* config/linker-map.gnu: Remove __pool_base::_Lock::_S_lock.
* include/bits/stl_threads.h: Remove.
* include/Makefile.am: Also here.
* include/Makefile.in: Regenerate.
* src/locale_init.cc: Use __gnu_cxx::lock.
* src/allocator.cc: Move all instantiations...
* src/allocator-inst.cc: ...here.
From-SVN: r83638
2004-06-25 06:10:44 +00:00
Loren J. Rittle
88c499cce7
linker-map.gnu: Use wildcards for __basic_file::sys_open(FILE*, _Ios_Openmode).
...
* config/linker-map.gnu: Use wildcards for
__basic_file::sys_open(FILE*, _Ios_Openmode).
From-SVN: r83470
2004-06-22 00:24:52 +00:00
Benjamin Kosnik
2832d07bd1
pool_allocator.h: Qualify __throw_bad_alloc.
...
2004-06-18 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/pool_allocator.h: Qualify __throw_bad_alloc.
(__pool_base): Remove unused template parameter. Add
protected. Move lock data into __pool_base::_Lock. Remove static
on member functions.
(__pool_base::_M_get_free_list): New.
(__pool_alloc): Move _S_force new here.
* src/allocator.cc: Move out of line __pool_base definitions here.
* config/linker-map.gnu: Export bits from __pool_base.
From-SVN: r83355
2004-06-18 16:52:42 +00:00
Paolo Carlini
a80e0e831f
2004-06-18 Paolo Carlini <pcarlini@suse.de>
...
* config/locale/gnu/numeric_members.cc
(numpunct<wchar_t>::_M_initialize_numpunct): Clean up
assignments of _M_decimal_point and _M_thousands_sep.
* config/locale/gnu/time_members.cc
(__timepunct<wchar_t>::_M_initialize_timepunct): Clean up
and reformat assignments of date and time fields.
From-SVN: r83346
2004-06-18 10:54:44 +00:00
Jason Merrill
37f3105a58
linker-map.gnu: Use wildcards for __basic_file::{xsgetn,xsputn,seekoff,xsputn_2}.
...
* config/linker-map.gnu: Use wildcards for
__basic_file::{xsgetn,xsputn,seekoff,xsputn_2}.
From-SVN: r82813
2004-06-08 23:56:34 -04:00
Benjamin Kosnik
7c9fee34e5
linker-map.gnu (GLIBCXX_3.4.1): Add.
...
2004-05-31 Benjamin Kosnik <bkoz@redhat.com>
* config/linker-map.gnu (GLIBCXX_3.4.1): Add.
* testsuite/testsuite_abi.cc: Same.
* configure.ac (libtool_VERSION): Bump to 6:1:0.
* configure: Regenerate.
* aclocal.m4: Regenerate.
From-SVN: r82498
2004-05-31 21:19:52 +00:00
Richard B. Kreckel
803cb0b5c9
re PR libstdc++/14600 (__gnu_cxx::stdio_sync_filebuf should expose internal FILE*)
...
2004-05-29 Richard B. Kreckel <Richard.Kreckel@Framatome-ANP.com>
Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/14600
* include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf::file): New.
* include/ext/stdio_filebuf.h (stdio_filebuf::file): New.
* config/io/basic_file_stdio.cc (__basic_file::file): New.
* config/io/basic_file_stdio.h: Define.
Co-Authored-By: Benjamin Kosnik <bkoz@redhat.com>
From-SVN: r82419
2004-05-29 14:40:59 +00:00
Benjamin Kosnik
26c691a88b
re PR libstdc++/12854 (libstdc++ vs. -Weffc++)
...
2004-05-22 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/12854
Fixups for -Weffc++.
* include/bits/basic_string.h (basic_string::operator=): Return
pointer to this instead of result of assign. Although redundant,
this doesn't impact resultant codegen.
* include/bits/locale_facets.h (__numpunct_cache): Declare
assignment opxserator and copy constructor private.
(__timepunct_cache): Same.
(__moneypunct_cache): Same.
(collate): Use member initialization list for _M_c_locale_collate.
* config/locale/gnu/messages_members.h: Same.
* config/locale/gnu/time_members.h (__timepunct): Same.
* src/codecvt.cc: Use member initialization list to initialize
_M_c_locale_codecvt.
* src/ctype.cc: Same, with _M_c_locale_ctype and _M_narrow_ok.
* config/os/gnu-linux/ctype_noninline.h: Same.
* src/locale.cc (_Impl): Same.
* src/locale_init.cc: Same.
* src/localename.cc: Same.
* include/bits/basic_ios.h (basic_ios): Complete member
initialization list.
* include/bits/istream.tcc (basic_istream::sentry): Same.
* include/bits/ostream.tcc (basic_ostream::sentry): Same.
* include/bits/fstream.tcc (basic_filebuf): Add _M_lock and
_M_pback to member initialization list.
* include/std/std_streambuf.h: Same.
* include/std/std_sstream.h: Same, for _M_mode.
* src/ios.cc (ios_base): Same.
* include/ext/rope: Make derived classes match exception
specifications. Add copy constructors and assignment operators.
* include/debug/safe_base.h (_Safe_sequence_base): Declare copy
constructor and assignment operator protected.
(_Safe_iterator_base): Same.
* include/debug/formatter.h (_Error_formatter): Define copy
constructor and assignment operator.
* include/backward/strstream: Declare assignment operator and copy
constructor private.
From-SVN: r82153
2004-05-22 23:46:34 +00:00
Simon Marshall
95b147fe4a
re PR libstdc++/15090 (-fno-for-scope vs. libstdc++)
...
2004-05-13 Simon Marshall <simon.marshall@misys.com>
Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/15090
* include/bits/locale_facets.h: Fix for -fno-for-scope.
* include/debug/safe_sequence.h: Same.
* include/debug/safe_iterator.tcc: Same.
* src/debug.cc: Same.
* src/locale.cc: Same.
* src/locale_init.cc: Same.
* src/localename.cc: Same.
* config/locale/gnu/ctype_members.cc: Same.
* config/locale/gnu/numeric_members.cc: Same.
* testsuite/testsuite_abi.cc: Same.
* testsuite/testsuite_hooks.cc: Same.
Co-Authored-By: Benjamin Kosnik <bkoz@redhat.com>
From-SVN: r81795
2004-05-13 16:29:39 +00:00
Benjamin Kosnik
390e4c0dbe
c++config (_GLIBCXX_STD): New.
...
2004-04-16 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/c++config (_GLIBCXX_STD): New.
* src/list.cc: Use it.
* include/std/std_bitset.h: Same.
* include/bits/vector.tcc: Same.
* include/bits/stl_set.h: Same.
* include/bits/stl_multiset.h: Same.
* include/bits/stl_multimap.h: Same.
* include/bits/stl_map.h: Same.
* include/bits/stl_list.h: Same.
* include/bits/stl_vector.h: Same.
* include/bits/stl_bvector.h: Same.
* include/bits/stl_deque.h: Same.
* include/bits/deque.tcc: Same.
* include/bits/list.tcc: Same.
* include/debug/vector: Same.
* include/debug/set.h: Same.
* include/debug/multiset.h: Same.
* include/debug/multimap.h: Same.
* include/debug/map.h: Same.
* include/debug/list: Same.
* include/debug/deque: Same.
* include/debug/bitset: Same.
* include/debug/formatter.h (__gnu_debug): Remove using directive.
Add using declaration for std::type_info.
* include/debug/safe_iterator.h: Add using declaration for
std::iterator_traits and std::pair.
* src/debug_list.cc: New.
* src/Makefile.am: Add debug_list.cc.
* src/Makefile.in: Regenerate.
* config/linker-map.gnu: Add _List_node_base exports for std and
__gnu_norm.
* include/bits/stl_bvector.h (_Bvector_base): Use _Bvector_impl
idiom that other containers use.
* testsuite/23_containers/vector/bool/clear_allocator.cc: New.
From-SVN: r80763
2004-04-16 19:04:07 +00:00
Paolo Carlini
af55af57e1
acconfig.h: Remove _GLIBCXX_USE_LONG_DOUBLE entry, not used anymore.
...
2004-04-16 Paolo Carlini <pcarlini@suse.de>
* acconfig.h: Remove _GLIBCXX_USE_LONG_DOUBLE entry, not
used anymore.
* config.h.in: Regenerate.
2004-04-16 Paolo Carlini <pcarlini@suse.de>
* config/locale/generic/monetary_members.cc
(moneypunct<wchar_t>::_M_initialize_moneypunct): Avoid calling
btowc unnecessarily, just cast to wchar_t (the concerned chars
all belong to the basic character set).
* config/locale/generic/numeric_members.cc
(numpunct<wchar_t>::_M_initialize_numpunct): Likewise.
* config/locale/gnu/monetary_members.cc
(moneypunct<wchar_t>::_M_initialize_moneypunct): Likewise.
* config/locale/gnu/numeric_members.cc
(numpunct<wchar_t>::_M_initialize_numpunct): Likewise.
From-SVN: r80746
2004-04-16 09:23:05 +00:00
Paolo Carlini
92861ad4a0
2004-04-12 Paolo Carlini <pcarlini@suse.de>
...
* config/locale/gnu/numeric_members.cc
(numpunct<wchar_t>::_M_initialize_numpunct): No need to wrap
in __uselocale, since btowc is called for chars belonging to
the basic character set.
From-SVN: r80618
2004-04-12 08:36:23 +00:00
Paolo Carlini
ba98a8d81a
time_members.cc (__timepunct<char>::_M_initialize_timepunct, [...]): the correct _M_amonth07 in the "C" locale is "Jul" and L"Jul", respectively.
...
2004-04-07 Paolo Carlini <pcarlini@suse.de>
* config/locale/generic/time_members.cc
(__timepunct<char>::_M_initialize_timepunct,
__timepunct<wchar_t>::_M_initialize_timepunct): the correct
_M_amonth07 in the "C" locale is "Jul" and L"Jul", respectively.
* config/locale/gnu/time_members.cc
(__timepunct<char>::_M_initialize_timepunct,
__timepunct<wchar_t>::_M_initialize_timepunct): Ditto.
* testsuite/22_locale/time_get/get_monthname/char/4.cc: New.
* testsuite/22_locale/time_get/get_monthname/wchar_t/4.cc: New.
* testsuite/22_locale/time_get/date_order/char/1.cc: Remove junk.
* testsuite/22_locale/time_get/date_order/wchar_t/1.cc: Ditto.
* testsuite/22_locale/time_get/get_date/char/1.cc: Ditto.
* testsuite/22_locale/time_get/get_date/char/2.cc: Ditto.
* testsuite/22_locale/time_get/get_date/wchar_t/1.cc: Ditto.
* testsuite/22_locale/time_get/get_date/wchar_t/2.cc: Ditto.
* testsuite/22_locale/time_get/get_monthname/char/1.cc: Ditto.
* testsuite/22_locale/time_get/get_monthname/char/2.cc: Ditto.
* testsuite/22_locale/time_get/get_monthname/wchar_t/1.cc: Ditto.
* testsuite/22_locale/time_get/get_monthname/wchar_t/2.cc: Ditto.
* testsuite/22_locale/time_get/get_time/char/1.cc: Ditto.
* testsuite/22_locale/time_get/get_time/char/2.cc: Ditto.
* testsuite/22_locale/time_get/get_time/wchar_t/1.cc: Ditto.
* testsuite/22_locale/time_get/get_time/wchar_t/2.cc: Ditto.
* testsuite/22_locale/time_get/get_weekday/char/1.cc: Ditto.
* testsuite/22_locale/time_get/get_weekday/char/2.cc: Ditto.
* testsuite/22_locale/time_get/get_weekday/wchar_t/1.cc: Ditto.
* testsuite/22_locale/time_get/get_weekday/wchar_t/2.cc: Ditto.
* testsuite/22_locale/time_get/get_year/char/1.cc: Ditto.
* testsuite/22_locale/time_get/get_year/wchar_t/1.cc: Ditto.
* testsuite/22_locale/time_put/put/char/1.cc: Ditto.
* testsuite/22_locale/time_put/put/char/2.cc: Ditto.
* testsuite/22_locale/time_put/put/char/3.cc: Ditto.
* testsuite/22_locale/time_put/put/char/4.cc: Ditto.
* testsuite/22_locale/time_put/put/char/5.cc: Ditto.
* testsuite/22_locale/time_put/put/char/6.cc: Ditto.
* testsuite/22_locale/time_put/put/char/7.cc: Ditto.
* testsuite/22_locale/time_put/put/char/8.cc: Ditto.
* testsuite/22_locale/time_put/put/wchar_t/1.cc: Ditto.
* testsuite/22_locale/time_put/put/wchar_t/2.cc: Ditto.
* testsuite/22_locale/time_put/put/wchar_t/3.cc: Ditto.
* testsuite/22_locale/time_put/put/wchar_t/4.cc: Ditto.
* testsuite/22_locale/time_put/put/wchar_t/5.cc: Ditto.
* testsuite/22_locale/time_put/put/wchar_t/6.cc: Ditto.
* testsuite/22_locale/time_put/put/wchar_t/7.cc: Ditto.
* testsuite/22_locale/time_put/put/wchar_t/8.cc: Ditto.
* testsuite/22_locale/time_put/put/char/9780-1.cc: Fix typos.
From-SVN: r80493
2004-04-07 23:14:08 +00:00
Paolo Carlini
f332a090b2
2004-04-07 Paolo Carlini <pcarlini@suse.de>
...
* config/locale/gnu/monetary_members.cc
(moneypunct<wchar_t>::_M_initialize_moneypunct): Prefer
_NL_MONETARY_DECIMAL_POINT_WC, _NL_MONETARY_THOUSANDS_SEP_WC,
and __MON_GROUPING to _NL_NUMERIC_DECIMAL_POINT_WC,
_NL_NUMERIC_THOUSANDS_SEP_WC, and GROUPING.
* config/locale/gnu/numeric_members.cc
(numpunct<char>::_M_initialize_numpunct): Prefer DECIMAL_POINT
and THOUSANDS_SEP to the deprecated RADIXCHAR and THOUSEP.
From-SVN: r80477
2004-04-07 14:32:47 +00:00
Benjamin Kosnik
563ae04fec
Fixups for EDG front end.
...
2004-04-06 Benjamin Kosnik <bkoz@redhat.com>
Fixups for EDG front end.
* include/ext/rope: Instead of non-existent function
_Data_allocate, use allocator's allocate. Use this.
(namespace _Rope_constants): Move _S_max_rope_depth, and _Tag
enumerations from _Rope_RopeRep here.
* include/ext/ropeimpl.h: Same.
* src/ext-inst.cc (_S_min_len): Fix up definition.
* config/locale/gnu/ctype_members.cc: Qualify base class members
with this.
* config/locale/generic/ctype_members.cc: Same.
* config/locale/gnu/messages_members.h: Same.
* config/locale/generic/messages_members.h: Same.
* src/ctype.cc: Same.
* include/bits/codecvt.h: Same.
* include/bits/boost_concept_check.h: Declare.
(__error_type_must_be_an_unsigned_integer_type): Remove this.
(__error_type_must_be_an_integer_type): Remove this.
(__error_type_must_be_a_signed_integer_type): Remove this.
* config/io/basic_file_stdio.cc (__basic_file::sys_open): Remove cast.
* libsupc++/eh_alloc.cc (__cxa_free_exception): Add exception
specification to definition.
(__cxa_allocate_exception): Same.
* libsupc++/eh_catch.cc (__cxa_begin_catch): Same.
* libsupc++/eh_globals.cc (__cxa_get_globals_fast): Same.
(__cxa_get_globals): Same.
* libsupc++/del_op.cc: Add comment about freestanding.
From-SVN: r80475
2004-04-07 03:33:36 +00:00
Paolo Carlini
e004c3313e
c_locale.cc (__convert_to_v(long double&)): In v3 uses of sscanf...
...
2004-03-31 Paolo Carlini <pcarlini@suse.de>
* config/locale/generic/c_locale.cc (__convert_to_v(long double&)):
In v3 uses of sscanf, the special floating-point numbers INF,
INFINITY, etc., cannot occur in input, therefore, if the latter
is too large, ERANGE is always stored in errno, no need of finitel.
From-SVN: r80247
2004-03-31 09:13:10 +00:00
Benjamin Kosnik
a5f105b590
[multiple changes]
...
2004-03-27 Benjamin Kosnik <bkoz@redhat.com>
libstdc++ PR/13598
* config/locale/ieee_1003.1-2001/codecvt_specializations.h
(__enc_traits::_M_destroy): New.
(__enc_traits::~__enc_traits): Use it.
(__enc_traits::operator=): Use _M_destroy, _M_init.
(__enc_traits::__enc_traits): Same.
2004-03-27 Petur Runolfsson <peturr02@ru.is>
* testsuite/ext/enc_filebuf/char/13598.cc: New.
From-SVN: r80027
2004-03-27 16:21:21 +00:00
Paolo Carlini
29d4adf460
acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Add pool_allocator.
...
2004-03-22 Paolo Carlini <pcarlini@suse.de>
* acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): Add pool_allocator.
* configure: Regenerate.
* config/allocator/pool_allocator_base.h: New.
* include/ext/pool_allocator.h: Convert to a standard-conforming
allocator.
* src/allocator.cc: Tweak instantiations.
* testsuite/performance/20_util/allocator/insert.cc: Add __pool_alloc.
* testsuite/performance/20_util/allocator/insert_insert.cc: Ditto.
* testsuite/performance/20_util/allocator/list_sort_search.cc: Ditto.
* testsuite/performance/20_util/allocator/map_mt_find.cc: Ditto.
* testsuite/performance/20_util/allocator/map_thread.cc: Ditto.
* testsuite/performance/20_util/allocator/producer_consumer.cc: Ditto.
From-SVN: r79824
2004-03-22 13:07:13 +00:00
Hans-Peter Nilsson
fea41ef911
atomicity.h (__atomic_add): Remove "static inline" and attribute-unused.
...
* config/cpu/cris/atomicity.h (__atomic_add): Remove "static
inline" and attribute-unused. Qualify parameter __mem with
"volatile".
(__exchange_and_add): Ditto. Add back memory clobber to asm.
From-SVN: r79804
2004-03-22 01:37:04 +00:00
Michael Eager
1b1a632b4d
atomicity.h: Prevent reg loads between LL and SC instructions.
...
2004-03-19 Michael Eager <eager@mvista.com>
* config/cpu/mips/atomicity.h: Prevent reg loads between LL and
SC instructions.
From-SVN: r79711
2004-03-19 23:12:10 +00:00
Benjamin Kosnik
8b0d605196
allocator: New.
...
2004-03-13 Benjamin Kosnik <bkoz@redhat.com>
* config/allocator: New.
* config/allocator/bitmap_allocator_base.h: New.
* config/allocator/malloc_allocator_base.h: New.
* config/allocator/mt_allocator_base.h: New.
* config/allocator/new_allocator_base.h: New.
* include/bits/allocator.h: Include c++allocator.h.
* acinclude.m4 (GLIBCXX_ENABLE_ALLOCATOR): New.
* aclocal.m4: Regenerate.
* configure.ac: Use GLIBCXX_ENABLE_ALLOCATOR.
* configure: Regenerate.
* include/Makefile.am (host_headers_extra): Add c++allocator.h.
* include/Makefile.in: Regenerate.
* docs/html/configopts.html: Add enable-libstdcxx-allocator.
From-SVN: r79435
2004-03-13 06:54:25 +00:00
Benjamin Kosnik
f83295bafc
re PR libstdc++/12658 (Thread safety problems in locale::global() and locale::locale())
...
2004-03-06 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/12658
* src/locale_init.cc (locale::locale): Lock critical regions with
external mutexes.
(locale::global): Same.
* include/bits/concurrence.h (__glibcxx_mutex_define_initialized):
Add in once bits for cases without __GTHREAD_MUTEX_INIT.
(__glibcxx_mutex_lock): Same.
* config/cpu/generic/atomicity.h: Remove
_GLIBCXX_NEED_GENERIC_MUTEX, use concurrence.h.
* src/misc-inst.cc: Move all locking bits out of this file.
* config/os/hpux/os_defines.h: Remove _GLIBCXX_INST_ATOMICITY_LOCK.
* src/misc-inst.cc: Same.
* config/cpu/hppa/atomicity.h: Same.
* config/linker-map.gnu: Remove types in the signature of atomic
exports, as they may vary.
From-SVN: r79043
2004-03-07 01:32:43 +00:00
John David Anglin
3a1a4ed26e
atomicity.h (__atomic_add): Make first argument volatile.
...
* config/cpu/hppa/atomicity.h (__atomic_add): Make first argument
volatile.
* config/os/hpux/os_defines.h (_GLIBCXX_INST_ATOMICITY_LOCK): Use
__GXX_WEAK__ instead of _GLIBCXX_SUPPORTS_WEAK.
From-SVN: r78633
2004-02-28 22:46:32 +00:00
Benjamin Kosnik
00d04db682
atomicity.h: Include c++config.h to get defines.
...
2004-02-27 Benjamin Kosnik <bkoz@redhat.com>
* config/cpu/hppa/atomicity.h: Include c++config.h to get defines.
* src/misc-inst.cc (_S_atomicity_lock): Move to __gnu_cxx.
* config/os/irix/irix5.2/atomicity.h: Merge..
* config/os/irix/irix6.5/atomicity.h: Merge..
* config/os/irix/atomicity.h: ...into this.
* config/os/irix/atomic_word.h: New.
* configure.host: Set atomic_word_dir for irix.
* hppa/atomicity.h: Change __Atomicity_lock to _Atomicity_lock.
* i386/atomicity.h: Same.
* m68k/atomicity.h: Same.
* sparc/atomicity.h: Same.
From-SVN: r78577
2004-02-27 20:56:46 +00:00
David Edelsohn
c284a1261d
atomicity.h: Use __gnu_cxx namespace.
...
* config/os/aix/atomicity.h: Use __gnu_cxx namespace. Remove
static, and inline keyworks.
From-SVN: r78574
2004-02-27 13:59:31 -05:00
Benjamin Kosnik
2c5d0ae842
atomicity.h: New, forward declarations for __atomic_add and __exchange_and_add.
...
2004-02-25 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/atomicity.h: New, forward declarations for __atomic_add
and __exchange_and_add.
* config/cpu/generic/atomic_word.h: New, typdef for atomic word.
* config/cpu/cris/atomic_word.h: Same.
* config/cpu/sparc/atomic_word.h: Same.
* include/bits/ios_base.h (_Callback_list::_M_remove_reference):
Qualifiy with __gnu_cxx.
(_Callback_list::_M_add_reference): Same.
* include/bits/locale_classes.h (locale::facet::_M_add_reference): Add.
(locale::facet::_M_remove_reference): Same.
(locale::_Impl::_M_add_reference): Add.
(locale::_Impl::_M_remove_reference): Same.
* include/bits/basic_string.h (basic_string::_Rep::_M_refcopy): Same.
(basic_string::_Rep::_M_dispose): Same.
* src/ios.cc (ios_base::xalloc): Same.
* src/ios_init.cc (ios_base::Init::Init): Same.
(ios_base::Init::~Init): Same.
* src/locale.cc (locale:🆔 :_M_id): Same.
* config/cpu/i486/atomicity.h: Use __gnu_cxx namespace. Remove
static, and inline keyworks.
* config/cpu/alpha/atomicity.h: Same.
* config/cpu/cris/atomicity.h: Same.
* config/cpu/generic/atomicity.h: Same.
* config/cpu/hppa/atomicity.h: Same.
* config/cpu/i386/atomicity.h: Same.
* config/cpu/ia64/atomicity.h: Same.
* config/cpu/m68k/atomicity.h: Same.
* config/cpu/mips/atomicity.h: Same.
* config/cpu/powerpc/atomicity.h: Same.
* config/cpu/s390/atomicity.h: Same.
* config/cpu/sparc/atomicity.h: Same.
* src/Makefile.am (host_sources): Add atomicity.cc.
(atomicity.cc): New rule.
* src/Makefile.in: Regenerate.
* include/Makefile.am (host_headers): Remove host atomicity.h.
(host_headers): Add atomic_word.h.
(bits_headers): Add bits atomicity.h.
Change ATOMICITY_INC_SRCDIR to ATOMICITY_SRCDIR.
* include/Makefile.in: Regenerate.
* configure.host (atomic_word_dir): Add.
* configure.ac: Substitute ATOMIC_WORD_SRCDIR. Change
ATOMICITY_INC_SRCDIR to ATOMICITY_SRCDIR.
* configure: Regenerate.
* config/linker-map.gnu: Export __exchange_and_add, and __atomic_add.
* testsuite/27_io/ios_base/cons/assign_neg.cc: Adjust line numbers.
* testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
From-SVN: r78544
2004-02-27 00:49:50 +00:00
Paolo Carlini
fe932e504b
locale_facets.h (class money_base): Add { _S_minus, _S_zero, _S_end } enum, _S_atoms.
...
2004-02-21 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.h (class money_base): Add { _S_minus,
_S_zero, _S_end } enum, _S_atoms.
(struct __moneypunct_cache<>): Parameterize on _Intl too; add
_M_grouping_size, _M_curr_symbol_size, _M_positive_sign_size,
_M_negative_sign_size, _M_atoms; tweak constructor consistently.
(__moneypunct_cache<>::~__moneypunct_cache): Update.
(__moneypunct_cache<>::_M_cache): Fill the cache.
(class moneypunct): Tweak __cache_type typedef.
(class money_put): Inherit from money_base too; tweak declaration
of _M_insert, now parameterized on _Intl.
* include/bits/locale_facets.tcc
(struct __use_cache<__moneypunct_cache<_CharT, _Intl> >): New.
(money_put<>::_M_insert): Update definition to use the cache;
call reserve on __res to avoid multiple reallocations.
(money_put<>::do_put(long double),
money_put<>::do_put(const string_type&): Update calls of _M_insert.
* config/locale/generic/monetary_members.cc
(moneypunct<char, true>::_M_initialize_moneypunct,
moneypunct<char, false>::_M_initialize_moneypunct,
moneypunct<wchar_t, true>::_M_initialize_moneypunct,
moneypunct<wchar_t, false>::_M_initialize_moneypunct): Update.
* config/locale/gnu/monetary_members.cc: Likewise.
* config/locale/gnu/monetary_members.cc
(moneypunct<wchar_t, true>::~moneypunct(),
moneypunct<wchar_t, false>::~moneypunct()): Likewise.
* src/globals_locale.cc: Tweak fake_money_cache_c.
* src/locale-inst.cc: Add instantiations for
money_put::_M_insert<false> and money_put::_M_insert<true> and
__moneypunct_cache<C, false>, __moneypunct_cache<C, true>.
* src/locale_facets.cc: Define money_base::_S_atoms.
* src/locale_init.cc: Update placement new of
__moneypunct_cache<char, false>, __moneypunct_cache<char, true>,
__moneypunct_cache<wchar_t, false>, __moneypunct_cache<wchar_T, true>.
* config/locale/generic/numeric_members.cc: Clean up.
* config/locale/gnu/numeric_members.cc: Likewise.
* testsuite/22_locale/money_put/put/char/1.cc: Likewise.
* testsuite/22_locale/money_put/put/char/2.cc: Likewise.
* testsuite/22_locale/money_put/put/char/3.cc: Likewise.
* testsuite/22_locale/money_put/put/wchar_t/1.cc: Likewise.
* testsuite/22_locale/money_put/put/wchar_t/2.cc: Likewise.
* testsuite/22_locale/money_put/put/wchar_t/3.cc: Likewise.
From-SVN: r78216
2004-02-21 09:26:35 +00:00
Paolo Carlini
94b8de97c4
basic_file_stdio.cc (__gnu_internal::xwritev): Rewrite, avoiding recursion.
...
2004-02-18 Paolo Carlini <pcarlini@suse.de>
* config/io/basic_file_stdio.cc (__gnu_internal::xwritev):
Rewrite, avoiding recursion.
(__gnu_internal::xwrite): Minor tweaks.
From-SVN: r78015
2004-02-18 08:36:27 +00:00
Paolo Carlini
2e9a1f6b05
PR libstdc++/13731 (final part: writev)
...
2004-02-12 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/13731 (final part: writev)
* config/io/basic_file_stdio.cc (__gnu_internal::xwrite):
New, a wrapper around writev() handling partial writes.
(__basic_file<char>::xwrite): Move to __gnu_internal and make
static.
(__basic_file<char>::xsputn): Update call.
(__basic_file<char>::xsputn_2): Likewise.
* config/io/basic_file_stdio.h (__basic_file<char>::write):
Don't declare, now static.
From-SVN: r77717
2004-02-12 18:24:07 +00:00
Paolo Carlini
98e9678463
PR libstdc++/13731 (first part: write)
...
2004-02-11 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/13731 (first part: write)
* config/io/basic_file_stdio.h (__basic_file<char>::xwrite):
New, declare.
* config/io/basic_file_stdio.cc (__basic_file<char>::xwrite):
Define it: a wrapper around write() handling partial write.
(__basic_file<char>::xsputn): Use it.
(__basic_file<char>::xsputn_2): Likewise.
From-SVN: r77680
2004-02-12 00:05:35 +00:00
Loren J. Rittle
d318a8ba74
re PR libstdc++/14097 ([3.4 only] Severe disparity between stdio_filebuf and stdio_sync_filebuf.)
...
PR libstdc++/14097
* config/linker-map.gnu: Add typeinfo and typeinfo name for
__gnu_cxx::stdio_filebuf<char, std::char_traits<char> >.
From-SVN: r77636
2004-02-11 05:21:57 +00:00
Loren J. Rittle
64bd39ccc7
re PR libstdc++/14098 ([3.4 only] typeinfo issue with __gnu_cxx::stdio_sync_filebuf)
...
PR libstdc++/14098
* config/linker-map.gnu: Add typeinfo and typeinfo name for
__gnu_cxx::stdio_sync_filebuf<char, std::char_traits<char> >.
From-SVN: r77635
2004-02-11 05:03:13 +00:00
Richard Sandiford
d232925f0b
os_defines.h (_GLIBCXX_FIONREAD_TAKES_OFF_T): Define.
...
* config/os/irix/irix6.5/os_defines.h (_GLIBCXX_FIONREAD_TAKES_OFF_T):
Define.
* config/io/basic_file_stdio.cc (__basic_file<char>::showmanyc): Use
it to decide whether FIONREAD should take an off_t or int argument.
From-SVN: r77336
2004-02-05 20:11:32 +00:00
Zack Weinberg
9fe7e2b747
Revert previous change to config/abi/*/baseline_symbols.txt.
...
From-SVN: r77305
2004-02-05 07:25:58 +00:00
Benjamin Kosnik
6a734d618f
basic_file_stdio.cc (__gnu_internal::fopen_mode): New function.
...
2004-02-04 Benjamin Kosnik <bkoz@redhat.com>
Zack Weinberg <zack@codesourcery.com>
* config/io/basic_file_stdio.cc (__gnu_internal::fopen_mode):
New function.
(__basic_file<char>::sys_open, __basic_file<char>::open): Use it.
(__basic_file<char>::_M_open_mode): Delete.
* config/io/basic_file_stdio.cc: Delete declaration of _M_open_mode.
* testsuite/27_io/basic_filebuf/close/char/9964.cc
* testsuite/27_io/basic_filebuf/open/char/9507.cc:
Correct flags to filebuf::open calls.
* config/abi/alpha-freebsd5/baseline_symbols.txt
* config/abi/alpha-linux-gnu/baseline_symbols.txt
* config/abi/hppa-linux-gnu/baseline_symbols.txt
* config/abi/i386-freebsd4/baseline_symbols.txt
* config/abi/i386-freebsd5/baseline_symbols.txt
* config/abi/i486-linux-gnu/baseline_symbols.txt
* config/abi/ia64-linux-gnu/baseline_symbols.txt
* config/abi/mips-linux-gnu/baseline_symbols.txt
* config/abi/sparc-freebsd5/baseline_symbols.txt
* config/abi/sparc-linux-gnu/baseline_symbols.txt
* config/abi/x86_64-linux-gnu/baseline_symbols.txt:
Remove entry for __basic_file<char>::_M_open_mode.
From-SVN: r77298
2004-02-05 05:24:18 +00:00
Paolo Carlini
9924f721bf
c++locale_internal.h: Remove prototypes of no longer used GLIBC thread locale functions.
...
2004-02-02 Paolo Carlini <pcarlini@suse.de>
* config/locale/gnu/c++locale_internal.h: Remove prototypes
of no longer used GLIBC thread locale functions.
From-SVN: r77140
2004-02-02 23:45:34 +00:00
Stephen M. Webb
917a9fd4d5
c_locale.h: Change ::malloc() to new char[].
...
2004-01-29 Stephen M. Webb <stephen.webb@bregmasoft.com>
* config/local/generic/c_locale.h: Change ::malloc() to new char[].
* config/local/gnu/c_locale.h: Change ::malloc() to new char[].
* include/bits/stl_tempbuf.h: Convert _Temporary_buffer to use
std::get_temporary_buffer() instead of duplicating its code.
Update to C++STYLE conventions.
* include/std/std_memory.h (get_temporary_buffer): Use ::operator
new() instead of std::malloc().
(return_temporary_buffer): Use ::operator delete() instead of
std::free().
From-SVN: r76922
2004-01-30 03:43:00 +00:00
Benjamin Kosnik
ba9d552e03
Makefile.am (bits_headers): Remove allocator_traits.h.
...
2004-01-28 Benjamin Kosnik <bkoz@redhat.com>
* include/Makefile.am (bits_headers): Remove allocator_traits.h.
* include/Makefile.in: Regenerate.
* include/bits/allocator_traits.h: Remove.
* include/bits/allocator.h: Remove allocator_traits.h include, and
relevant comments.
(allocator): Empty base class, inherit from the underlying allocator.
* src/allocator-inst.cc: Move __pool_alloc instantiation to...
* src/allocator.cc: ...here. New. For the underlying allocators.
Add __mt_alloc, __pool_alloc, new_allocator, malloc_allocator bits.
* config/linker-map.gnu: Remove __pool_alloc bits.
* src/Makefile.am (sources): Add allocator.cc.
* src/Makefile.in: Regenerate.
* testsuite/20_util/allocator/1.cc: Split second test into...
* testsuite/20_util/allocator/8230.cc: ...this.
* include/bits/stl_bvector.h (__gnu_norm): Change bit_vector
typedef to use std::allocatore. Format.
* include/ext/pool_allocator.h: Remove allocator_traits.h include,
_Alloc_traits.
* include/ext/mt_allocator.h (__gnu_cxx): Qualify
__throw_bad_alloc calls. Don't include <memory>.
* include/ext/malloc_allocator.h: Remove <memory> include.
* include/ext/new_allocator.h (new_allocator): Same.
* include/ext/ropeimpl.h (__gnu_cxx): Remove __alloc using
declaration. Switch __alloc to _Alloc.
* include/ext/hashtable.h: Remove __alloc.
* include/backward/alloc.h: Only inject allocator, not
implementation details.
* include/ext/mt_allocator.h: Replace free with delete.
From-SVN: r76821
2004-01-29 00:18:40 +00:00
Ulrich Weigand
6e198ee05d
configure.host: Add support for *-tpf.
...
* configure.host: Add support for *-tpf.
* crossconfig.m4: Likewise.
* configure: Regenerate.
* config/os/tpf: New directory.
* config/os/tpf/os_defines.h: New file.
* config/os/tpf/ctype_base.h: Likewise.
* config/os/tpf/ctype_inline.h: Likewise.
* config/os/tpf/ctype_noninline.h: Likewise.
Co-Authored-By: PJ Darcy <darcypj@us.ibm.com>
From-SVN: r76724
2004-01-27 15:36:22 +00:00
Paolo Carlini
ba9119ec89
c_locale.cc: Fix throw messages to use the __N marker.
...
2004-01-26 Paolo Carlini <pcarlini@suse.de>
* config/locale/generic/c_locale.cc: Fix throw messages
to use the __N marker.
* config/locale/gnu/c_locale.cc: Likewise.
* config/locale/ieee_1003.1-2001/codecvt_specializations.h:
Likewise.
* docs/html/17_intro/C++STYLE: Likewise.
* include/bits/basic_ios.tcc: Likewise.
* include/bits/fstream.tcc: Likewise.
* include/bits/vector.tcc: Likewise.
* include/ext/ropeimpl.h: Likewise.
* include/std/std_bitset.h: Likewise.
* src/ios.cc: Likewise.
* src/locale.cc: Likewise.
* src/localename.cc: Likewise.
From-SVN: r76684
2004-01-27 00:49:03 +00:00
Andreas Schwab
f942e78de9
monetary_members.cc: Restore locale before rethrowing exception.
...
* config/locale/gnu/monetary_members.cc: Restore locale before
rethrowing exception.
From-SVN: r76595
2004-01-25 23:31:43 +00:00
Kaveh R. Ghazi
129057c1ee
re PR c/13814 (rejects different prototypes than builtin function)
...
PR c/13814
* config/linker-map.gnu (nan): Delete.
* libmath/mathconf.h (NAN, nan): Delete.
* linkage.m4 (nan): Don't check for it.
* libmath/nan.c: Delete file.
* config.h.in, configure: Regenerate.
From-SVN: r76431
2004-01-23 16:47:06 +00:00
Paolo Carlini
47f62b27c8
locale_facets.h (struct __numpunct_cache): Add member _M_grouping_size, caching the length of _M_grouping.
...
2004-01-14 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.h (struct __numpunct_cache):
Add member _M_grouping_size, caching the length of _M_grouping.
(__numpunct_cache<>::_M_cache): Assign the latter.
(__verify_grouping): Move declaration...
* include/bits/locale_facets.tcc (__verify_grouping):
... here, change signature to take a const char* and a size_t
for the grouping; not a template anymore.
(__add_grouping, num_put::_M_group_int, num_put::_M_group_float):
Likewise change signature and tweak consistently.
(num_get::_M_extract_float, num_get::_M_extract_int,
num_put::_M_insert_int, num_put::_M_insert_float,
money_get::do_get(string_type&), money_get::do_put(string_type)):
Update callers.
* config/locale/generic/numeric_members.cc
(numpunct<>::_M_initialize_numpunct): Assign the new member.
* config/locale/gnu/numeric_members.cc
(numpunct<>::_M_initialize_numpunct): Likewise.
* src/locale-inst.cc (__add_grouping): Tweak signature.
(__verify_grouping): Don't instantiate, not a template anymore.
* include/bits/locale_facets.h: Rename _M_truename_len ->
_M_truename_size, _M_falsename_len -> _M_falsename_size.
* include/bits/locale_facets.tcc: Likewise.
* config/locale/generic/numeric_members.cc: Likewise.
* config/locale/gnu/numeric_members.cc: Likewise.
From-SVN: r75876
2004-01-14 19:14:39 +00:00
Paolo Carlini
dc6798f865
locale_facets.h (struct __numpunct_cache): Add members _M_truename_len and _M_falsename_len...
...
2004-01-12 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.h (struct __numpunct_cache):
Add members _M_truename_len and _M_falsename_len, caching
the lengths of _M_truename and _M_falsename.
(__numpunct_cache<>::_M_cache): Assign the latter.
* include/bits/locale_facets.tcc (num_get::do_get(bool&),
num_put::do_put(bool)): Use the new members, thus avoiding
computing string lengths again and again.
* config/locale/generic/numeric_members.cc
(numpunct<>::_M_initialize_numpunct): Assign the new members.
* config/locale/gnu/numeric_members.cc
(numpunct<>::_M_initialize_numpunct): Likewise.
From-SVN: r75735
2004-01-12 17:02:08 +00:00
Benjamin Kosnik
e135a038d3
[multiple changes]
...
2004-01-07 Gawain Bolton <gp.bolton@computer.org>
* include/bits/stl_list.h:
* include/bits/list.tc:
* src/list.cc:
Performance enhancements for destructor, push_front(),
push_back(), pop_front(), pop_back(), sort()
Eliminated static_casts where possible.
Moved code out of header files into new src/list.cc
implementation file for library where possible.
Remove inheritance from iterator class and create separate
classes for non-constant and constant iterators.
* include/bits/stl_tree.h (_Rb_tree class):
* src/tree.cc:
Only erase contents in destructor.
Eliminate unnecessary initialization in assignment operator.
Optimize for the nominal case by not checking whether
container is empty in clear().
Re-order test in _M_insert() to improve performance.
Move initialization of new node's left & right pointers to
src/tree.cc to where new node's colour is initialized
and to reduce the amount of inline code.
Use _M_leftmost() and _M_end() to improve readability where
appropriate.
Create separate classes for non-constant and constant
iterators to clarify code, avoid extra template parameters and
casting away constness.
2004-01-07 Benjamin Kosnik <bkoz@redhat.com>
* src/Makefile.am (sources): Add list.cc, tree.cc.
* src/stl_tree.cc: Move to...
* src/tree.cc: ...here.
* src/list.cc: Add.
* config/linker-map.gnu: Tweaks.
* testsuite/23_containers/map/operators/1_neg.cc: Add excess errors.
* testsuite/23_containers/set/operators/1_neg.cc: Add excess errors.
* bits/stl_vector.h: Column wrap comments.
From-SVN: r75515
2004-01-07 20:55:06 +00:00
Paolo Carlini
17fa55600a
numeric_members.cc (_M_initialize_numpunct): Avoid unnecessarily zero terminating _M_atoms_out and _M_atoms_in...
...
2004-01-04 Paolo Carlini <pcarlini@suse.de>
* config/locale/generic/numeric_members.cc (_M_initialize_numpunct):
Avoid unnecessarily zero terminating _M_atoms_out and _M_atoms_in;
always use double underscored names.
* config/locale/gnu/numeric_members.cc (_M_initialize_numpunct):
Likewise.
* include/bits/locale_facets.h (struct __numpunct_cache):
Dimension _M_atoms_out and _M_atoms_in one position smaller.
(__numpunct_cache<>::_M_cache): Don't zero terminate _M_atoms_out
and _M_atoms_in.
From-SVN: r75393
2004-01-04 18:34:27 +00:00
Andrew Pinski
be88628621
atomicity.h (__exchange_and_add): Fix output constraint.
...
* config/cpu/i386/atomicity.h (__exchange_and_add): Fix output
constraint.
From-SVN: r75017
2003-12-24 20:27:58 -08:00
Andrew Pinski
a51c409779
re PR libstdc++/13480 (bits/atomicity.h:56: warning: read-write constraint does not allow a register)
...
2003-12-24 Andrew Pinski <pinskia@physics.uc.edu>
PR libstdc++/13480
* config/cpu/i486/atomicity.h: Split up read-write memory operand.
From-SVN: r75016
2003-12-24 18:04:06 -08:00
Benjamin Kosnik
70a8416094
5.cc: Don't use stdc++.h.gch.
...
2003-12-22 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/27_io/objects/char/5.cc: Don't use stdc++.h.gch.
* testsuite/27_io/objects/wchar_t/5.cc: Same.
* docs/html/test.html: Add docs for constructing test files that
don't use stdc++.h.gch.
* scripts/testsuite_flags.in (PCHFLAGS): Move to --cxxpchflags.
* testsuite/libstdc++-dg/normal.exp: Compute DEFAULT_CXXFLAGS
differently.
* include/bits/ios_base.h (ios_base::Init::_S_initialized): Remove.
* src/ios_init.cc: Same.
* config/linker-map.gnu: Same.
* testsuite/27_io/ios_base/cons/copy_neg.cc: Adjust line numbers.
* testsuite/27_io/ios_base/cons/assign_neg.cc: Same.
From-SVN: r74946
2003-12-22 20:09:23 +00:00
Jason Merrill
778e99e55f
fix thinko
...
From-SVN: r74889
2003-12-20 12:44:11 -05:00
Jason Merrill
46eb4b3989
atomicity.h: Remove memory clobbers.
...
* config/cpu/cris/atomicity.h: Remove memory clobbers.
* config/cpu/mips/atomicity.h: Likewise.
* config/cpu/i486/atomicity.h: Remove memory clobbers.
Split up read-write memory operand.
* config/cpu/m68k/atomicity.h: Likewise.
* config/cpu/powerpc/atomicity.h: Make memory I/O explicit.
* config/cpu/s390/atomicity.h: Likewise.
* config/cpu/sparc/atomicity.h: Likewise.
From-SVN: r74870
2003-12-19 22:08:42 -05:00
Paolo Carlini
1b4513069a
locale_facets.tcc (num_get::_M_extract_float): When __found_sci becomes true stop eating thousands separators and the decimal...
...
2003-12-19 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (num_get::_M_extract_float):
When __found_sci becomes true stop eating thousands separators
and the decimal radix separator.
* testsuite/22_locale/num_get/get/char/9.cc: New.
* testsuite/22_locale/num_get/get/wchar_t/9.cc: Likewise.
* config/locale/generic/c_locale.cc (__convert_to_v): Don't
check that *__sanity == '\0': parsing may stop earlier, still
be successful.
* config/locale/gnu/c_locale.cc: Likewise.
* testsuite/22_locale/num_get/get/char/10.cc: New.
* testsuite/22_locale/num_get/get/wchar_t/10.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_arithmetic/char/10.cc:
Tweak in one place accordingly.
* testsuite/22_locale/money_get/get/char/1.cc: Fix typo.
* testsuite/22_locale/money_get/get/wchar_t/1.cc: Likewise.
From-SVN: r74826
2003-12-19 09:35:24 +00:00
Paolo Carlini
9a1349b920
re PR libstdc++/11723 (ctype<wchar_t>::do_is(mask, wchar_t) is slow)
...
2003-12-16 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/11723
* include/bits/locale_facets.h: Add _M_bit and _M_wmask,
used to speed up the computation of ctype::do_is.
* config/locale/generic/ctype_members.cc
(_M_initialize_ctype): Fill _M_bit and _M_wmask.
(ctype::do_is): Use _M_bit and _M_wmask.
* config/locale/gnu/ctype_members.cc: Likewise.
* testsuite/performance/is_wchar_t.cc: New.
* testsuite/performance/narrow_widen_wchar_t.cc: Tweak
string literal (incorrect citation ;)
* include/bits/locale_facets.h: Minor tweaks, const
correctness, unsigned -> size_t.
From-SVN: r74686
2003-12-16 11:00:52 +00:00
Jerry Quinn
3fc63c15b4
ctype_noninline.h, [...] (ctype): Initialize _M_narrow, _M_widen.
...
2003-12-15 Jerry Quinn <jlquinn@optonline.net>
* config/os/aix/ctype_noninline.h,
config/os/bsd/freebsd/ctype_noninline.h,
config/os/bsd/netbsd/ctype_noninline.h,
config/os/djgpp/ctype_noninline.h,
config/os/generic/ctype_noninline.h,
config/os/gnu-linux/ctype_noninline.h,
config/os/hpux/ctype_noninline.h,
config/os/irix/irix5.2/ctype_noninline.h,
config/os/irix/irix6.5/ctype_noninline.h,
config/os/mingw32/ctype_noninline.h,
config/os/newlib/ctype_noninline.h,
config/os/qnx/qnx6.1/ctype_noninline.h,
config/os/solaris/solaris2.5/ctype_noninline.h,
config/os/solaris/solaris2.6/ctype_noninline.h,
config/os/solaris/solaris2.7/ctype_noninline.h,
config/os/vxworks/ctype_noninline.h,
config/os/windiss/ctype_noninline.h (ctype): Initialize
_M_narrow, _M_widen.
* include/bits/locale_facets.h (_M_widen, _M_widen_ok,
_M_narrow, _M_narrow_ok): New.
(widen, narrow): Use tables to bypass virtual functions.
(_M_widen_init, _M_narrow_init): New.
From-SVN: r74662
2003-12-16 01:57:03 +00:00
Paolo Carlini
ca13fb7f5d
locale_facets.tcc (num_get::do_get(bool&)): Fail as soon as the begins of both truename and falsename stop to match...
...
2003-12-15 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc (num_get::do_get(bool&)):
Fail as soon as the begins of both truename and falsename
stop to match; always leave __beg one position beyond the
last char successfully matched.
* testsuite/22_locale/num_get/get/char/8.cc: New.
* testsuite/22_locale/num_get/get/wchar_t/8.cc: Likewise.
2003-12-15 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.h (_M_widen): Reserve space
for all the possible widened chars.
* config/locale/generic/ctype_members.cc (_M_initialize_ctype):
Compute at construction time all the possible widened chars.
(do_widen): Tweak, simplify.
* config/locale/gnu/ctype_members.cc: Likewise.
* testsuite/performance/narrow_widen_wchar_t.cc: Add tests
for the array versions.
From-SVN: r74636
2003-12-15 16:56:42 +00:00
Paolo Carlini
e3c0c0989b
re PR libstdc++/13341 (ctype<wchar_t>::do_narrow(wchar_t, char) is slow)
...
2003-12-12 Paolo Carlini <pcarlini@suse.de>
Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/13341
* include/bits/locale_facets.h (ctype<wchar_t>): Declare
_M_initialize_ctype() and _M_narrow_ok, _M_narrow and _M_widen.
* src/ctype.cc (ctype<wchar_t>::ctype(size_t),
ctype<wchar_t>::ctype(__c_locale, size_t)): Use
_M_initialize_ctype to fill _M_narrow and _M_widen.
(ctype_byname<wchar_t>::ctype_byname(const char*, size_t)):
Likewise.
* config/locale/generic/ctype_members.cc (do_narrow, do_widen)
Use _M_narrow and _M_widen when possible, instead of calling
wctob and btowc, respectively.
(_M_initialize_ctype): Define, it fills at construction time
_M_narrow and _M_widen.
* config/locale/gnu/ctype_members.cc: Likewise.
* testsuite/performance/narrow_widen_wchar_t.cc: New.
Co-Authored-By: Benjamin Kosnik <bkoz@redhat.com>
From-SVN: r74580
2003-12-12 19:44:17 +00:00
Benjamin Kosnik
35d6801ebe
re PR libstdc++/10063 (stdio_filebuf broken)
...
2003-12-10 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/10063
* config/io/basic_file_stdio.cc (__basic_file::sys_open): Sync.
* testsuite/ext/stdio_filebuf/char/10063-1.cc: New.
* testsuite/ext/stdio_filebuf/char/10063-2.cc: New.
From-SVN: r74505
2003-12-10 17:37:25 +00:00
Benjamin Kosnik
5ec3f5662c
linker-map.gnu: Remove private ios_base members from export list.
...
2003-12-09 Benjamin Kosnik <bkoz@redhat.com>
* config/linker-map.gnu: Remove private ios_base members from
export list.
* config/cpu/alpha/atomicity.h: Consistently format.
* config/cpu/cris/atomicity.h: Same.
* config/cpu/generic/atomicity.h: Same.
* config/cpu/hppa/atomicity.h: Same.
* config/cpu/i386/atomicity.h: Same.
* config/cpu/i486/atomicity.h: Same.
* config/cpu/ia64/atomicity.h: Same.
* config/cpu/m68k/atomicity.h: Same.
* config/cpu/mips/atomicity.h: Same.
* config/cpu/powerpc/atomicity.h: Same.
* config/cpu/s390/atomicity.h: Same.
* config/cpu/sparc/atomicity.h: Same.
From-SVN: r74486
2003-12-10 04:52:37 +00:00
Paolo Carlini
0fa96a6006
c_locale.cc (__convert_to_v(long&), [...]): Remove.
...
2003-12-08 Paolo Carlini <pcarlini@suse.de>
* config/locale/generic/c_locale.cc (__convert_to_v(long&),
__convert_to_v(unsigned long&), __convert_to_v(long long&),
__convert_to_v(unsigned long long&): Remove.
(__convert_to_v(float&), __convert_to_v(double&),
__convert_to_v(long double&)): Remove last unused parameter.
* config/locale/gnu/c_locale.cc: Likewise.
* include/bits/locale_facets.h: Likewise.
(num_get::_M_extract_int): Update declaration.
(class __num_base): Tweak _S_ie and _S_iE according to the
_S_atoms_in changes.
* include/bits/locale_facets.tcc (num_get::_M_extract_int):
Provide directly the final _ValueT, not a string: accumulate
the result checking for overflow at each digit.
(num_get::do_get(bool&), num_get::do_get(long&),
num_get::do_get(unsigned short&), num_get::do_get(unsigned int&),
num_get::do_get(unsigned long&), num_get::do_get(long long&),
num_get::do_get(unsigned long long&), num_get::do_get(void*&)):
Use the new _M_extract_int, simplify.
* src/locale-inst.cc (num_get::_M_extract_int(long&),
num_get::_M_extract_int(unsigned short&),
num_get::_M_extract_int(unsigned int&),
num_get::_M_extract_int(unsigned long&),
num_get::_M_extract_int(long long&),
num_get::_M_extract_int(unsigned long long&): Instantiate.
* src/locale_facets.cc (__num_base::_S_atoms_in): Reorder
the chars in the natural order: abcdefABCDEF.
From-SVN: r74423
2003-12-08 15:37:03 +00:00
David S. Miller
09755a8512
re PR libstdc++/12496 (wrong result for __atomic_add(&value, -1) when using -O0 -m64)
...
2003-12-08 David S. Miller <davem@redhat.com>
PR libstdc++/12496
* config/cpu/sparc/atomicity.h (__exchange_and_add, __atomic_add):
Extend increment to _Atomic_word before giving to assembler.
From-SVN: r74409
2003-12-08 02:01:01 -08:00
Benjamin Kosnik
e80213d249
re PR libstdc++/11691 (stdio_filebuf leaks FILE buffer when "no close" is requested)
...
2003-12-06 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/11691
* include/ext/stdio_filebuf.h (stdio_filebuf::stdio_filebuf):
Remove __del argument to file descriptor constructor.
* config/io/basic_file_stdio.h (__basic_file::sys_open): Remove
bool argument.
* config/io/basic_file_stdio.cc: Same.
From-SVN: r74379
2003-12-07 03:46:14 +00:00
Paolo Carlini
142b798be5
2003-12-02 Paolo Carlini <pcarlini@suse.de>
...
* config/locale/gnu/monetary_members.cc
(money_base::_S_construct_pattern): For case 3: and 4:
exchanging 'if (__precedes)' and 'if (__space)' allows
to factor out a few more assignments.
From-SVN: r74168
2003-12-02 09:16:30 +00:00
Paolo Carlini
1644f06da7
codecvt_members.cc (codecvt::do_in, [...]): More minor tweaks.
...
2003-11-30 Paolo Carlini <pcarlini@suse.de>
* config/locale/gnu/codecvt_members.cc (codecvt::do_in,
codecvt::do_length): More minor tweaks.
From-SVN: r74069
2003-11-30 19:10:50 +00:00
Paolo Carlini
11816ba280
codecvt_members.cc (codecvt::do_in): Minor stylistic tweak.
...
2003-11-30 Paolo Carlini <pcarlini@suse.de>
* config/locale/gnu/codecvt_members.cc (codecvt::do_in):
Minor stylistic tweak.
From-SVN: r74060
2003-11-30 15:18:27 +00:00
Paolo Carlini
5af91f0690
codecvt_members.cc (codecvt::do_length): Rewrite, using both mbsnrtowcs and mbrtowc in a loop...
...
2003-11-25 Paolo Carlini <pcarlini@suse.de>
* config/locale/gnu/codecvt_members.cc (codecvt::do_length):
Rewrite, using both mbsnrtowcs and mbrtowc in a loop: the
former is very fast, but stops if encounters a NUL.
(codecvt::do_out): Tweaks.
(codecvt::do_in): Tweaks, improve the code dealing with errors.
* testsuite/performance/wchar_t_length.cc: New.
From-SVN: r73934
2003-11-25 21:41:28 +00:00
Paolo Carlini
3c8797ae81
codecvt_members.cc (codecvt::do_in): Rewrite, using both mbsnrtowcs and mbrtowc in a loop...
...
2003-11-24 Paolo Carlini <pcarlini@suse.de>
* config/locale/gnu/codecvt_members.cc (codecvt::do_in):
Rewrite, using both mbsnrtowcs and mbrtowc in a loop: the
former is very fast, but stops if encounters a NUL.
(codecvt::do_out): Tweak.
* testsuite/performance/wchar_t_in.cc: New.
2003-11-24 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.h
(__numpunct_cache<>::_M_cache): Set _M_allocated at the beginning
in order to avoid memory leaks; simplify a bit.
From-SVN: r73893
2003-11-24 21:13:38 +00:00
Paolo Carlini
cc0c2f7986
2003-11-22 Paolo Carlini <pcarlini@suse.de>
...
* config/locale/gnu/monetary_members.cc
(money_base::_S_construct_pattern): Factor out two assignments.
From-SVN: r73844
2003-11-22 18:47:13 +00:00
Paolo Carlini
f7ba331c2a
2003-11-21 Paolo Carlini <pcarlini@suse.de>
...
* config/locale/gnu/monetary_members.cc
(money_base::_S_construct_pattern): Factor out an assignment.
From-SVN: r73816
2003-11-21 20:55:49 +00:00
Paolo Carlini
0fd1870171
re PR libstdc++/11602 (codecvt<wchar_t, char, mbstate_t> is slow.)
...
2003-11-20 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/11602
* config/locale/gnu/codecvt_members.cc (codecvt::do_out):
Rewrite, using both wcsnrtombs and wcrtomb in a loop: the
former is very fast, but stops if encounters a NUL.
* testsuite/performance/wchar_t_out.cc: New, from the PR.
From-SVN: r73769
2003-11-20 19:24:03 +00:00
Paolo Carlini
1f33554abb
codecvt_members.cc (do_out): If we can upper bound the total number of external chars to something smaller...
...
2003-11-19 Paolo Carlini <pcarlini@suse.de>
* config/locale/gnu/codecvt_members.cc (do_out): If
we can upper bound the total number of external chars
to something smaller than __to_end - __to, avoid the
temporary buffer, the memcopy and simplify the loop.
* config/locale/generic/codecvt_members.cc (do_out):
Likewise.
From-SVN: r73733
2003-11-19 11:38:40 +00:00
Benjamin Kosnik
285b36d6a5
[multiple changes]
...
2003-11-11 Doug Gregor <gregod@cs.rpi.edu>
* docs/html/debug.html: Document libstdc++ debug mode.
* docs/html/debug_mode.html: Document libstdc++ debug mode design.
* docs/html/test.html: Document how to test under debug mode.
* docs/html/17_intro/howto.html: Document debug-mode macros.
* include/Makefile.am: Install debug-mode headers.
* src/Makefile.am: Include debug.cc.
* include/bits/basic_string.tcc:
(basic_string::_S_construct): Fix NULL pointer check.
(__is_null_pointer): New.
Add precondition annotations.
* include/bits/stream_iterator.h (istream_iterator,
ostream_iterator): Added precondition annotations.
* include/bits/streambuf_iterator.h (istreambuf_iterator): Ditto.
* include/bits/stl_queue.h (queue, priority_queue): Ditto.
* include/bits/stl_stack.h (stack): Ditto.
* include/bits/basic_string.h (basic_string): Ditto.
* include/bits/basic_string.tcc (basic_string): Ditto.
* include/std/std_memory.h (auto_ptr): Ditto.
* include/std/std_valarray.h (valarray): Ditto.
* include/bits/stl_algo.h: Added algorithm precondition
annotations.
* include/bits/stl_algobase.h: Added algorithm precondition
annotations.
* include/bits/stl_numeric.h: Ditto.
* include/ext/algorithm: Added algorithm precondition
annotations.
(__is_heap): Moved away from here.
* include/bits/stl_heap.h: Added algorithm precondition
annotations.
(__is_heap): Moved to the top of this file.
(__is_heap): Added iterator range overloads.
* testsuite/20_util/auto_ptr_neg.cc: Fix line numbers to match up
with changes in std_memory.h.
* testsuite/23_containers/list/operators/4.cc: Don't verify
performance guarantees when in debug mode.
* testsuite/23_containers/bitset/invalidation/1.cc: New.
* testsuite/23_containers/deque/invalidation/1.cc: New.
* testsuite/23_containers/deque/invalidation/2.cc: New.
* testsuite/23_containers/deque/invalidation/3.cc: New.
* testsuite/23_containers/deque/invalidation/4.cc: New.
* testsuite/23_containers/list/invalidation/1.cc: New.
* testsuite/23_containers/list/invalidation/2.cc: New.
* testsuite/23_containers/list/invalidation/3.cc: New.
* testsuite/23_containers/list/invalidation/4.cc: New.
* testsuite/23_containers/map/invalidation/1.cc: New.
* testsuite/23_containers/map/invalidation/2.cc: New.
* testsuite/23_containers/multimap/invalidation/1.cc: New.
* testsuite/23_containers/multimap/invalidation/2.cc: New.
* testsuite/23_containers/multiset/invalidation/1.cc: New.
* testsuite/23_containers/multiset/invalidation/2.cc: New.
* testsuite/23_containers/set/invalidation/1.cc: New.
* testsuite/23_containers/set/invalidation/2.cc: New.
* testsuite/23_containers/vector/invalidation/1.cc: New.
* testsuite/23_containers/vector/invalidation/2.cc: New.
* testsuite/23_containers/vector/invalidation/3.cc: New.
* testsuite/23_containers/vector/invalidation/4.cc: New.
* testsuite/25_algorithms/heap.cc: Don't verify
performance guarantees when in debug mode.
* include/debug/bitset: New.
* include/debug/debug.h: New.
* include/debug/deque: New.
* include/debug/formatter.h: New.
* include/debug/hash_map: New.
* include/debug/hash_map.h: New.
* include/debug/hash_multimap.h: New.
* include/debug/hash_set: New.
* include/debug/hash_set.h: New.
* include/debug/hash_multiset.h: New.
* include/debug/list: New.
* include/debug/map: New.
* include/debug/map.h: New.
* include/debug/multimap.h: New.
* include/debug/multiset.h: New.
* include/debug/safe_base.h: New.
* include/debug/safe_iterator.h: New.
* include/debug/safe_iterator.tcc: New.
* include/debug/safe_sequence.h: New.
* include/debug/set: New.
* include/debug/set.h: New.
* include/debug/string: New.
* include/debug/vector: New.
* src/debug.cc: New.
* config/linker-map.gnu: Add debug mode symbols.
2003-11-11 Benjamin Kosnik <bkoz@redhat.com>
* src/string-inst.cc: Tweak namespaces.
* src/misc-inst.cc: Same.
* docs/html/debug.html: Edits.
* config/link-map.gnu: Remove cruft.
* include/bits/c++config: Add in namespace associations.
* include/std/std_bitset.h: Adjust namespace to __gnu_norm,
comment tweaks.
* include/bits/deque.tcc: Same.
* include/bits/list.tcc: Same.
* include/bits/stl_bvector.h: Same.
* include/bits/stl_deque.h: Same.
* include/bits/stl_list.h: Same.
* include/bits/stl_map.h: Same.
* include/bits/stl_multimap.h: Same.
* include/bits/stl_multiset.h: Same.
* include/bits/stl_set.h: Same.
* include/bits/stl_vector.h: Same.
* include/bits/vector.tcc: Same.
* include/std/std_algorithm.h: Remove markup comments.
* include/std/std_functional.h: Same.
* include/std/std_iterator.h: Same.
* include/std/std_numeric.h: Same.
* include/std/std_utility.h: Same.
* include/bits/stl_queue.h: Formatting tweaks.
* include/bits/stl_stack.h: Same.
* include/std/std_deque.h: Include debugging version in debug mode.
* include/std/std_list.h: Same.
* include/std/std_map.h: Same.
* include/std/std_set.h: Same.
* include/std/std_vector.h: Same.
* include/std/std_queue.h: Use deque, vector.
* include/std/std_stack.h: Same.
From-SVN: r73459
2003-11-11 20:09:16 +00:00
Paolo Carlini
4f36323260
c_locale.cc: Add back <cmath> and <cstdlib>.
...
2003-10-29 Paolo Carlini <pcarlini@suse.de>
* config/locale/generic/c_locale.cc: Add back <cmath>
and <cstdlib>.
* include/bits/locale_facets.tcc
(num_get::_M_extract_float): Clean up.
From-SVN: r73036
2003-10-29 13:34:04 +00:00
Paolo Carlini
c9cca2c22c
locale_facets.tcc: Remove some unnecessary includes.
...
2003-10-29 Paolo Carlini <pcarlini@suse.de>
* include/bits/locale_facets.tcc: Remove some unnecessary
includes.
* config/locale/generic/c_locale.cc: Include <cerrno> here.
* config/locale/gnu/c_locale.cc: Likewise.
From-SVN: r73030
2003-10-29 10:08:05 +00:00
Phil Edwards
861f9573d0
ctype_noninline.h: Adjust ctor to match 2003-10-21 change.
...
2003-10-23 Phil Edwards <phil@codesourcery.com>
* config/os/vxworks/ctype_noninline.h: Adjust ctor to match
2003-10-21 change.
From-SVN: r72835
2003-10-23 05:33:49 +00:00
Benjamin Kosnik
bf5fe4734c
locale_facets.h: Correct byname facets for "C" locale.
...
2003-10-22 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/locale_facets.h: Correct byname facets for "C"
locale.
* config/locale/generic/ctype_members.cc: Same.
* config/locale/generic/messages_members.h: Same.
* config/locale/gnu/ctype_members.cc: Same.
* config/locale/gnu/messages_members.h: Same.
* include/bits/codecvt.h: Same.
* src/ctype.cc: Same.
* testsuite/22_locale/codecvt_byname/1.cc: New.
* testsuite/22_locale/collate/1.cc: Edit.
* testsuite/22_locale/collate_byname/1.cc: Derivation tests, move to...
* testsuite/22_locale/collate_byname/named_equivalence.cc: ...here.
* testsuite/22_locale/ctype/1.cc: Derivation tests.
* testsuite/22_locale/ctype/11844.cc: Move...
* testsuite/22_locale/ctype_base/11844.cc: ...here.
* testsuite/22_locale/ctype_base/1.cc: Move mask bits here.
* testsuite/22_locale/ctype_byname/1.cc: Name.
* testsuite/22_locale/messages_byname/1.cc: New.
* testsuite/22_locale/messages_byname/named_equivalence.cc: New.
* testsuite/22_locale/moneypunct_byname/1.cc: Derivation test.
* testsuite/22_locale/moneypunct_byname/named_equivalence.cc: New.
* testsuite/22_locale/numpunct/1.cc: Edit.
* testsuite/22_locale/numpunct_byname/2.cc: Move...
* testsuite/22_locale/numpunct/members/char/3.cc: ...here.
* testsuite/22_locale/numpunct_byname/1.cc: Derivation tests.
* testsuite/22_locale/numpunct_byname/named_equivalence.cc: New.
From-SVN: r72814
2003-10-22 18:58:35 +00:00
Paolo Carlini
3d05b34592
re PR libstdc++/8610 (large file support in libstdc++-v3 (std::streamoff type is 32-bit in GCC 3.2 whereas it was 64-bit in GCC 2.96))
...
2003-10-22 Paolo Carlini <pcarlini@suse.de>
PR libstdc++/8610
* acinclude.m4 (GLIBCXX_CHECK_INT64_T): New macro,
checking for the availability of int64_t.
(GLIBCXX_CHECK_LFS): New macro, checking for LFS support.
* configure.ac: Call here.
* acconfig.h: Add undef for the corresponding symbols.
* config/io/basic_file_stdio.cc (__basic_file<char>::open):
Depending on _GLIBCXX_USE_LFS, call fopen64 or fopen.
(__basic_file<char>::seekoff): Likewise, call lseek64 when
available, otherwise lseek, checking the __off parameter.
* include/bits/postypes.h: Typedef __streamoff_base_type
to int64_t if available, otherwise long long.
* aclocal.m4: Regenerate.
* config.h.in: Likewise.
* configure: Likewise.
* acinclude.m4 (GLIBCXX_CHECK_POLL, GLIBCXX_CHECK_WRITEV):
Use AC_TRY_LINK instead of AC_TRY_COMPILE.
From-SVN: r72806
2003-10-22 15:51:55 +00:00
Benjamin Kosnik
82c2e3d44a
re PR libstdc++/9858 (Extra virtual functions in ctype<char>)
...
2003-10-21 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/9858
* include/bits/locale_facets.h (ctype<char>): Remove
__ctype_abstract_base.
(ctype<char>::do_is): Remove.
(ctype<char>::do_scan_is): Remove.
* src/ctype.cc: Same. Inline the rest.
* testsuite/22_locale/ctype/is/char/9858.cc: New.
* config/os/aix/ctype_noninline.h: Adjust ctor.
* config/os/bsd/freebsd/ctype_noninline.h: Same.
* config/os/bsd/netbsd/ctype_noninline.h: Same.
* config/os/djgpp/ctype_noninline.h: Same.
* config/os/generic/ctype_noninline.h: Same.
* config/os/gnu-linux/ctype_noninline.h: Same.
* config/os/hpux/ctype_noninline.h: Same.
* config/os/irix/irix5.2/ctype_noninline.h: Same.
* config/os/irix/irix6.5/ctype_noninline.h: Same.
* config/os/mingw32/ctype_noninline.h: Same.
* config/os/newlib/ctype_noninline.h: Same.
* config/os/qnx/qnx6.1/ctype_noninline.h: Same.
* config/os/solaris/solaris2.5/ctype_noninline.h: Same.
* config/os/solaris/solaris2.6/ctype_noninline.h: Same.
* config/os/solaris/solaris2.7/ctype_noninline.h: Same.
* config/os/windiss/ctype_noninline.h: Same.
From-SVN: r72753
2003-10-21 14:22:43 +00:00
Rainer Orth
27d54b2a6c
ffi.c: Use _ABIN32, _ABIO32 instead of external _MIPS_SIM_NABI32, _MIPS_SIM_ABI32.
...
libffi:
* src/mips/ffi.c: Use _ABIN32, _ABIO32 instead of external
_MIPS_SIM_NABI32, _MIPS_SIM_ABI32.
libstdc++-v3:
* config/cpu/mips/atomicity.h (__atomic_add): Use _ABIO32 instead
of external _MIPS_SIM_ABI32.
boehm-gc:
* mips_sgi_mach_dep.s: Use _ABIO32 instead of external
_MIPS_SIM_ABI32.
gcc:
* config/mips/linux.h (TARGET_OS_CPP_BUILTINS): Define _ABIO32.
Use it in _MIPS_SIM definition.
* config/mips/mips.h (CRT_CALL_STATIC_FUNCTION): Likewise.
From-SVN: r72713
2003-10-20 18:37:22 +00:00
Phil Edwards
65fc9769d5
configure.ac: Fix comment typo.
...
2003-10-20 Phil Edwards <phil@codesourcery.com>
* configure.ac: Fix comment typo.
* configure.host: Add vxworks to host_os switch.
* crossconfig.m4: Remove old commented os_include_dir variables
left over from autotools transition.
(*-vxworks): New stanza.
(*-windiss): Add missing symbols.
* configure: Regenerate.
* config/os/vxworks/ctype_base.h, config/os/vxworks/ctype_inline.h,
config/os/vxworks/ctype_noninline.h, config/os/vxworks/os_defines.h:
New files.
* config/os/windiss/os_defines.h: Define __C9X__.
From-SVN: r72710
2003-10-20 18:27:17 +00:00
Benjamin Kosnik
4c4809c175
[multiple changes]
...
2003-10-16 Petur Runolfsson <peturr02@ru.is>
PR libstdc++/8610
PR libstdc++/11450
PR libstdc++/11543
PR libstdc++/12065
* config/io/basic_file_stdio.cc (__basic_file::seekoff):
Change return value from streampos to streamoff.
(__basic_file::seekpos): Delete.
* config/io/basic_file_stdio.h: Same.
* config/io/c_io_stdio.h: Remove streamoff and wstreamsize typedefs.
* include/Makefile.am (bits_headers): Add bits/postypes.h.
* include/bits/char_traits.h: Include bits/postypes.h instead of
bits/fpos.h.
* include/bits/fstream.tcc (basic_filebuf::open,
basic_filebuf::pbackfail): Don't use < or >= to compare pos_type
values, use == and != instead.
(basic_filebuf::_M_seek): Use explicit conversion from streamoff
to pos_type.
(basic_filebuf::imbue): Don't use ! on pos_type values, use
== instead. Don't use __check_facet(_M_codecvt) unless is_open().
* include/bits/postypes.h: New file.
Add __streamoff_base_type typedef, streamsize.
(streamoff, streampos, wstreampos): Define typedefs, with
streamoff defined as...
(streamoff): New class. Document implementation defined
aspects.
(fpos): New implementation. Document implementation defined
aspects.
* include/bits/sstream.tcc (basic_stringbuf::seekpos): Use
explicit conversion from pos_type to off_type.
* include/std/std_iosfwd.h: Include bits/postypes.h instead
of bits/fpos.h.
* testsuite/27_io/basic_filebuf/seekoff/char/11543.cc: New test.
* testsuite/27_io/basic_filebuf/seekoff/wchar_t/11543.cc: New test.
* testsuite/27_io/fpos/11450.cc: New test.
* testsuite/27_io/fpos/mbstate_t/12065.cc: New test.
* testsuite/27_io/fpos/mbstate_t/4_neg.cc: New test.
* testsuite/27_io/types/3.cc: New test.
2003-10-16 Benjamin Kosnik <bkoz@redhat.com>
* configure.host: Remove fpos_include_dir.
* configure.ac: Remove FPOS_INC_SRCDIR.
* configure: Regenerate.
* acinclude.m4 (GLIBCXX_ENABLE_CSTDIO): Remove FPOS_H.
* aclocal.m4: Regenerate.
* include/Makefile.am (host_headers): Remove fpos.h.
(bits_headers): Add postypes.h.
* include/Makefile.in: Regenerate.
* config/os/gnu-linux/fposh: Remove.
* config/os/generic/fpos.h: Remove.
* testsuite/27_io/basic_filebuf/seekoff/char/1-in.cc: Fixup.
* testsuite/27_io/basic_filebuf/seekoff/char/1-io.cc: Same.
* testsuite/27_io/basic_filebuf/seekoff/char/1-out.cc: Same.
* testsuite/27_io/basic_filebuf/seekoff/char/2-in.cc: Same.
* testsuite/27_io/basic_filebuf/seekoff/char/2-io.cc: Same.
* testsuite/27_io/basic_filebuf/seekoff/char/2-out.cc: Same.
* testsuite/27_io/basic_filebuf/seekpos/char/1-in.cc: Same.
* testsuite/27_io/basic_filebuf/seekpos/char/1-io.cc: Same.
* testsuite/27_io/basic_filebuf/seekpos/char/1-out.cc: Same.
* testsuite/27_io/basic_filebuf/seekpos/char/2-in.cc: Same.
* testsuite/27_io/basic_filebuf/seekpos/char/2-io.cc: Same.
* testsuite/27_io/basic_filebuf/seekpos/char/2-out.cc: Same.
* testsuite/27_io/basic_istream/seekg/char/2.cc: Same.
* testsuite/27_io/basic_stringbuf/seekoff/char/1.cc: Same.
* testsuite/27_io/basic_stringbuf/seekpos/char/1.cc: Same.
* testsuite/27_io/fpos/mbstate_t/3.cc: Same.
* testsuite/27_io/objects/char/10.cc: Same.
From-SVN: r72582
2003-10-16 22:37:53 +00:00
Bernardo Innocenti
068c84e3b5
atomicity.h (__exchange_and_add): Use TAS on __mcf5400__.
...
* config/cpu/m68k/atomicity.h (__exchange_and_add): Use TAS on
__mcf5400__. Don't rely on __mc68000__ to detect a bare 68000.
Document SMP safeness of asm macros.
From-SVN: r72570
2003-10-16 21:47:45 +02:00