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