Jason Merrill
20f2653ef0
PR c++/38796, Core issue 906
...
PR c++/38796, Core issue 906
gcc/cp
* cp-tree.h (DECL_DEFAULTED_OUTSIDE_CLASS_P): New.
(DECL_DEFAULTED_IN_CLASS_P): New.
* class.c (user_provided_p): Non-static.
(check_methods): Use it.
(check_bases_and_members): Check defaulted fns.
(defaultable_fn_p): Move and rename to...
* method.c (defaultable_fn_check): ...this.
(defaulted_late_check): New.
* pt.c (tsubst_decl): Call it.
* decl2.c (grokfield): Adjust.
* decl.c (cp_finish_decl): Adjust.
(grok_special_member_properties): Use user_provided_p.
libstdc++-v3
* include/std/future (~Future_result_base): Default outside class
body.
* include/std/system_error (error_category()): Likewise.
* libsupc++/nested_exception.h (nested_exception): Remove
exception specifications from defaulted methods.
From-SVN: r153565
2009-10-26 15:07:14 -04:00
Benjamin Kosnik
4cdc876153
[multiple changes]
...
2009-10-05 Benjamin Kosnik <bkoz@redhat.com>
Edward Smith-Rowland <3dw4rd@verizon.net>
* include/decimal/decimal: Warn if decimal floating point types
are not available.
* acinclude.m4 (GLIBCXX_ENABLE_DECIMAL_FLOAT): New.
* configure.ac: Use it.
* configure: Regenerate.
* config.h.in: Regenerate.
2009-10-05 Benjamin Kosnik <bkoz@redhat.com>
* include/Makefile.am: Remove stray line break.
* include/decimal/decimal: Brief class doxygen markup.
* libsupc++/exception: Whitespace cleanup.
* testsuite/libstdc++-dg/conformance.exp: Add testsuite directory
decimal.
* scripts/create_testsuite_files (dlist): Same.
* doc/xml/manual/using.xml: One column in table. Move after TR1.
* testsuite/decimal/bad-cast.cc: Move to...
* testsuite/decimal/cast_neg.cc: ...here.
* testsuite/decimal/bad-mixed-mode.cc: Move to...
* testsuite/decimal/mixed-mode_neg.cc: ...here.
* testsuite/decimal/bad-operator.cc: Move to...
* testsuite/decimal/operator_neg.cc: ...here.
* doc/doxygen/user.cfg.in (INPUT): Add decimal/decimal.
2009-10-05 Janis Johnson <janis187@us.ibm.com>
* doc/Makefile.am: Process new file.
* doc/xml/manual/intro.xml: Ditto.
* doc/xml/manual/using.xml: Document new header.
* doc/xml/manual/status_cxxdecimal.xml: New file.
* include/Makefile.am: Process new headers.
* include/decimal/decimal: New file.
* include/decimal/decimal.h: New file.
2009-10-05 Janis Johnson <janis187@us.ibm.com>
* testsuite/decimal: New directory.
* testsuite/decimal/bad-cast.cc: New test.
* testsuite/decimal/bad-mixed-mode.cc: New test.
* testsuite/decimal/bad-operator.cc: New test.
* testsuite/decimal/binary-arith.cc: New test.
* testsuite/decimal/comparison.cc: New test.
* testsuite/decimal/compound-assignment.cc: New test.
* testsuite/decimal/compound-assignment-memfunc.cc: New test.
* testsuite/decimal/conversion-from-float.cc: New test.
* testsuite/decimal/conversion-from-integral.cc: New test.
* testsuite/decimal/conversion-to-generic-float.cc: New test.
* testsuite/decimal/conversion-to-integral.cc: New test.
* testsuite/decimal/ctor.cc: New test.
* testsuite/decimal/incdec.cc: New test.
* testsuite/decimal/incdec-memfunc.cc: New test.
* testsuite/decimal/make-decimal.cc: New test.
* testsuite/decimal/unary-arith.cc: New test.
From-SVN: r152457
2009-10-05 17:42:00 +00:00
Benjamin Kosnik
bbcfe54a2d
eh_terminate.cc: Fixes for -fno-exceptions.
...
2009-09-28 Benjamin Kosnik <bkoz@redhat.com>
* libsupc++/eh_terminate.cc: Fixes for -fno-exceptions.
* libsupc++/vec.cc: Same.
* libsupc++/vterminate.cc: Same.
* libsupc++/new_opnt.cc: Same.
From-SVN: r152258
2009-09-29 00:15:30 +00:00
Ralf Wildenhues
98791cfdb3
Fix placement of LIBTOOLFLAGS variable in v3 makefile.am.
...
libstdc++-v3/:
* libsupc++/Makefile.am (LTCOMPILE): Expand $(LIBTOOLFLAGS)
before --mode argument.
* libsupc++/Makefile.in: Regenerate.
From-SVN: r151027
2009-08-23 07:28:35 +00:00
Ralf Wildenhues
5213506e24
Regenerate tree using Autoconf 2.64 and Automake 1.11.
...
config/:
* override.m4 (_GCC_AUTOCONF_VERSION): Bump to 2.64.
:
* configure: Regenerate.
intl/:
* aclocal.m4: Regenerate.
* configure: Regenerate.
* config.h.in: Regenerate.
libiberty/:
* config.in: Regenerate.
* configure: Regenerate.
boehm-gc/:
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
* configure: Regenerate.
* include/Makefile.in: Regenerate.
* include/gc_config.h.in: Regenerate.
fixincludes/:
* aclocal.m4: Regenerate.
* configure: Regenerate.
* config.h.in: Regenerate.
gcc/:
* aclocal.m4: Regenerate.
* config.in: Regenerate.
* configure: Regenerate.
libgcc/:
* configure: Regenerate.
gnattools/:
* configure: Regenerate.
libada/:
* configure: Regenerate.
libcpp/:
* aclocal.m4: Regenerate.
* config.in: Regenerate.
* configure: Regenerate.
libdecnumber/:
* aclocal.m4: Regenerate.
* configure: Regenerate.
* config.in: Regenerate.
libffi/:
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
* configure: Regenerate.
* fficonfig.h.in: Regenerate.
* include/Makefile.in: Regenerate.
* man/Makefile.in: Regenerate.
* testsuite/Makefile.in: Regenerate.
libgfortran/:
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
* config.h.in: Regenerate.
* configure: Regenerate.
libgomp/:
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
* config.h.in: Regenerate.
* configure: Regenerate.
* testsuite/Makefile.in: Regenerate.
libjava/classpath/:
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
* configure: Regenerate.
* doc/Makefile.in: Regenerate.
* doc/api/Makefile.in: Regenerate.
* examples/Makefile.in: Regenerate.
* external/Makefile.in: Regenerate.
* external/jsr166/Makefile.in: Regenerate.
* external/relaxngDatatype/Makefile.in: Regenerate.
* external/sax/Makefile.in: Regenerate.
* external/w3c_dom/Makefile.in: Regenerate.
* include/Makefile.in: Regenerate.
* include/config.h.in: Regenerate.
* lib/Makefile.in: Regenerate.
* native/Makefile.in: Regenerate.
* native/fdlibm/Makefile.in: Regenerate.
* native/jawt/Makefile.in: Regenerate.
* native/jni/Makefile.in: Regenerate.
* native/jni/classpath/Makefile.in: Regenerate.
* native/jni/gconf-peer/Makefile.in: Regenerate.
* native/jni/gstreamer-peer/Makefile.in: Regenerate.
* native/jni/gtk-peer/Makefile.in: Regenerate.
* native/jni/java-io/Makefile.in: Regenerate.
* native/jni/java-lang/Makefile.in: Regenerate.
* native/jni/java-math/Makefile.in: Regenerate.
* native/jni/java-net/Makefile.in: Regenerate.
* native/jni/java-nio/Makefile.in: Regenerate.
* native/jni/java-util/Makefile.in: Regenerate.
* native/jni/midi-alsa/Makefile.in: Regenerate.
* native/jni/midi-dssi/Makefile.in: Regenerate.
* native/jni/native-lib/Makefile.in: Regenerate.
* native/jni/qt-peer/Makefile.in: Regenerate.
* native/jni/xmlj/Makefile.in: Regenerate.
* native/plugin/Makefile.in: Regenerate.
* resource/Makefile.in: Regenerate.
* scripts/Makefile.in: Regenerate.
* tools/Makefile.in: Regenerate.
libjava/:
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
* configure: Regenerate.
* gcj/Makefile.in: Regenerate.
* include/Makefile.in: Regenerate.
* include/config.h.in: Regenerate.
* testsuite/Makefile.in: Regenerate.
libjava/libltdl/:
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
* config-h.in: Regenerate.
* configure: Regenerate.
libmudflap/:
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
* config.h.in: Regenerate.
* configure: Regenerate.
* testsuite/Makefile.in: Regenerate.
libobjc/:
* aclocal.m4: Regenerate.
* configure: Regenerate.
* config.h.in: Regenerate.
libssp/:
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
* config.h.in: Regenerate.
* configure: Regenerate.
libstdc++-v3/:
* Makefile.in: Regenerate.
* acinclude.m4: Regenerate.
* aclocal.m4: Regenerate.
* config.h.in: Regenerate.
* configure: Regenerate.
* doc/Makefile.in: Regenerate.
* include/Makefile.in: Regenerate.
* libsupc++/Makefile.in: Regenerate.
* po/Makefile.in: Regenerate.
* python/Makefile.in: Regenerate.
* src/Makefile.in: Regenerate.
* testsuite/Makefile.in: Regenerate.
zlib/:
* Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
* configure: Regenerate.
From-SVN: r151014
2009-08-22 13:22:20 +00:00
Ralf Wildenhues
84fec8a537
LIBTOOLFLAGS, and *_LINK fixes for Automake 1.11
...
boehm-gc/:
* Makefile.am (LTCOMPILE, LTLINK): Add $(AM_LIBTOOLFLAGS)
and $(LIBTOOLFLAGS).
* Makefile.in: Regenerate.
libgfortran/:
* Makefile.am (libgfortran_la_LINK): Add $(libgfortran_la_LDFLAGS).
* Makefile.in: Regenerate.
libjava/:
* Makefile.am (libgcj_la_LINK, libgcj_tools_la_LINK)
(lib_gnu_awt_xlib_la_LINK, libgcj_bc_la_LINK, jv_convert_LINK)
(gcj_dbtool_LINK, gc_analyze_LINK, gij_LINK, ecjx_LINK)
(gappletviewer_LINK, gjarsigner_LINK, gkeytool_LINK)
(gjar_LINK, gjavah_LINK, gcjh_LINK, gnative2ascii_LINK)
(gorbd_LINK, grmid_LINK, gserialver_LINK, gtnameserv_LINK)
(grmic_LINK, grmiregistry_LINK, gjdoc_LINK): Add $(gjdoc_LDFLAGS).
(GCJLINK, LIBLINK, CXXLINK): Add $(LIBTOOLFLAGS).
* Makefile.in: Regenerate.
libstdc++-v3/:
* libsupc++/Makefile.am (LTCOMPILE, LTCXXCOMPILE, CXXLINK): Add
$(LIBTOOLFLAGS).
* libsupc++/Makefile.in: Regenerate.
* src/Makefile.am (LTCXXCOMPILE, CXXLINK): Add $(AM_LIBTOOLFLAGS)
and $(LIBTOOLFLAGS).
* src/Makefile.in: Regenerate.
libgomp/:
* Makefile.am (LINK): Add $(AM_LIBTOOLFLAGS) and $(LIBTOOLFLAGS).
* Makefile.in: Regenerate.
libobjc/:
* Makefile.in (LIBTOOL): Add $(LIBTOOLFLAGS).
From-SVN: r151013
2009-08-22 12:43:24 +00:00
Benjamin Kosnik
8d1b99e26a
future: Fixes for -fno-exceptions.
...
2009-08-10 Benjamin Kosnik <bkoz@redhat.com>
* include/std/future: Fixes for -fno-exceptions.
* include/bits/functexcept.h: Same.
* libsupc++/exception_ptr.h: Same.
* src/pool_allocator.cc: Same.
* src/future.cc: Same.
* src/functexcept.cc: Same.
* config/abi/pre/gnu.ver: New exports.
* testsuite/30_threads/packaged_task/cons/assign_neg.cc: Adjust.
* testsuite/30_threads/packaged_task/cons/copy_neg.cc: Same.
* testsuite/30_threads/unique_future/cons/assign_neg.cc: Same.
* testsuite/30_threads/unique_future/cons/copy_neg.cc: Same.
* testsuite/30_threads/shared_future/cons/assign_neg.cc: Same.
* testsuite/30_threads/promise/cons/assign_neg.cc: Same.
* testsuite/30_threads/promise/cons/copy_neg.cc: Same.
* testsuite/23_containers/deque/operators/1.cc: Separate in two...
* testsuite/23_containers/deque/operators/2.cc: New.
From-SVN: r150633
2009-08-10 18:24:47 +00:00
Jason Merrill
67a6e81679
Core issue 901
...
Core issue 901
* libsupc++/vec.cc (__cxa_vec_new2, __cxa_vec_new3): Handle NULL
dealloc.
* call.c (build_op_delete_call): If this is for a new-expression
and the op delete is deleted, do nothing.
From-SVN: r150073
2009-07-24 23:57:20 -04:00
Jason Merrill
61e6d522e0
mangle.c (mangle_type_string_for_rtti): Rename to be clearer.
...
* mangle.c (mangle_type_string_for_rtti): Rename to be clearer.
(needs_fake_anon): New.
(write_name): Check it.
(write_nested_name): Add a fake anonymous namespace scope if true.
* name-lookup.c (get_anonymous_namespace_name): No longer static.
* rtti.c, cp-tree.h: Adjust.
* libsupc++/typeinfo (__GXX_MERGED_TYPEINFO_NAMES): Default to 0.
From-SVN: r149964
2009-07-22 19:03:22 -04:00
Jason Merrill
62c99ce475
vmi_class_type_info.cc (__do_dyncast): Use src2dst hint to defer searching bases that don't overlap the desired address.
...
* libsupc++/vmi_class_type_info.cc (__do_dyncast): Use src2dst hint
to defer searching bases that don't overlap the desired address.
From-SVN: r149297
2009-07-06 18:13:51 -04:00
Jonathan Wakely
9fdcbf4031
exception_ptr.h (exception_ptr::swap(exception_ptr&&)): Remove.
...
2009-06-16 Jonathan Wakely <jwakely.gcc@gmail.com>
* libsupc++/exception_ptr.h (exception_ptr::swap(exception_ptr&&)):
Remove.
(exception_ptr::operator=(exception_ptr&&)): Cast source to
rvalue-reference so that move constructor is called.
* testsuite/18_support/exception_ptr/move.cc: New.
From-SVN: r148555
2009-06-16 22:24:41 +01:00
Paolo Carlini
110a123aae
re PR libstdc++/40296 ([C++0x] std::exception_ptr comparisons)
...
2009-06-03 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/40296
* libsupc++/exception_ptr.h (exception_ptr::operator!,
exception_ptr::operator __safe_bool): Only declare when
_GLIBCXX_EH_PTR_COMPAT is undefined.
* libsupc++/eh_ptr.cc: Define _GLIBCXX_EH_PTR_COMPAT before including
exception_ptr.
* testsuite/18_support/exception_ptr/40296.cc: New.
* testsuite/18_support/nested_exception/throw_with_nested.cc: Adjust.
* testsuite/18_support/nested_exception/cons.cc: Likewise.
* testsuite/18_support/nested_exception/nested_ptr.cc: Likewise.
* testsuite/18_support/exception_ptr/current_exception.cc: Likewise.
From-SVN: r148122
2009-06-03 10:37:20 +00:00
Benjamin Kosnik
eaf4cf4fdc
initializer_list: Format.
...
2009-05-27 Benjamin Kosnik <bkoz@redhat.com>
* libsupc++/initializer_list: Format.
* testsuite/18_support/initializer_list/requirements/typedefs.cc: New.
* testsuite/18_support/initializer_list/requirements/
explicit_instantiation.cc: New.
From-SVN: r147931
2009-05-27 21:17:49 +00:00
Eelis van der Weegen
ffa52e113d
initializer_list (initializer_list): Add missing typedefs.
...
2009-05-24 Eelis van der Weegen <eelis@eelis.net>
* libsupc++/initializer_list (initializer_list): Add missing typedefs.
From-SVN: r147828
2009-05-24 04:44:50 +00:00
Jonathan Wakely
182da14a62
exception: Include nested_exception.h in C++0x mode.
...
2009-05-12 Jonathan Wakely <jwakely.gcc@gmail.com>
* libsupc++/exception: Include nested_exception.h in C++0x mode.
* libsupc++/nested_exception.h: New.
* libsupc++/Makefile.am: Add new header.
* libsupc++/Makefile.in: Regenerate.
* testsuite/18_support/nested_exception/rethrow_nested.cc: New.
* testsuite/18_support/nested_exception/throw_with_nested.cc: New.
* testsuite/18_support/nested_exception/cons.cc: New.
* testsuite/18_support/nested_exception/nested_ptr.cc: New.
* testsuite/18_support/nested_exception/rethrow_if_nested.cc: New.
* doc/xml/manual/status_cxx200x.xml: Adjust.
From-SVN: r147446
2009-05-12 22:08:00 +01:00
Jan Hubicka
b91cc3b9dc
settings.h (get): Mark const.
...
* include/parallel/settings.h (get): Mark const.
* libsupc++/unwind-cxx.h (__cxa_call_terminate): Mark throw ().
* libsupc++/eh_call.cc (__cxa_call_terminate): Mark throw ().
* config/io/basic_file_stdio.cc (sys_open, is_open, fd, seekoff): Mark
throw ().
* config/io/basic_file_stdio.h (__basic_file, sys_open): Mark throw ().
(is_open, fd): Mark pure and throw ().
(seekoff): Mark throw ().
From-SVN: r147077
2009-05-03 16:51:50 +00:00
Jan Hubicka
5cf217fff1
* eh_type.cc (__cxa_current_exception_type) Mark throw().
...
* unwind-cxx.h (__cxa_get_globals, __cxa_get_globals_fast): Mark const.
(__cxa_get_exception_ptr): Mark pure.
(__cxa_bad_cast, __cxa_bad_typeid): Mark noreturn
(__terminate): Makr throw ().
* exception (terminate): Mark throw().
(uncaught_exception): Mark pure.
* eh_ptr.cc (_M_safe_bool_dummy): Mark throw().
* guard.cc (__cxa_guard_abort, __cxa_guard_release): Mark throw().
* eh_terminate.cc (__terminate, terminate): Mark throw().
* vec.cc (__cxa_vec_cleanup): Mark throw().
* cxxabi.h (__cxa_vec_cleanup, __cxa_guard_release, __cxa_guard_abort): Mark throw ().
(__cxa_pure_virtual): Mark noreturn.
(__cxa_current_exception_type): Mark throw and pure.
* exception_ptr.h (operator ==, !=, _M_get, !, ==,
__cxa_exception_type): Mark pure.
(_M_safe_bool_dummy): Mark pure and const.
From-SVN: r146331
2009-04-18 22:18:21 +00:00
Jakub Jelinek
748086b7b2
Licensing changes to GPLv3 resp. GPLv3 with GCC Runtime Exception.
...
From-SVN: r145841
2009-04-09 17:00:19 +02:00
Jason Merrill
a70f5987c4
re PR c++/34691 (Default argument checking not performed after overload resolution with C linkage)
...
PR c++/34691
* name-lookup.c (pushdecl_maybe_friend): Diagnose mismatched
extern C declarations.
* libsupc++/unwind-cxx.h: Correct __cxa_call_terminate prototype.
From-SVN: r145386
2009-03-31 23:34:30 -04:00
Benjamin Kosnik
5b9daa7e60
user.cfg.in: Tweaks.
...
2009-02-20 Benjamin Kosnik <bkoz@redhat.com>
* doc/doxygen/user.cfg.in: Tweaks.
* doc/doxygen/doxygroups.cc: Prefer markup that can be elsewhere,
be elsewhere.
* include/tr1_impl/unordered_map: Just use most specialized
container module.
* include/tr1_impl/unordered_set: Same.
* include/tr1_impl/array: Same.
* include/bits/stl_list.h: Same.
* include/bits/stl_map.h: Same.
* include/bits/stl_queue.h: Same.
* include/bits/stl_set.h: Same.
* include/bits/stl_stack.h: Same.
* include/bits/forward_list.h: Same.
* include/bits/basic_string.h: Same.
* include/bits/stl_multimap.h: Same.
* include/bits/stl_vector.h: Same.
* include/bits/stl_deque.h: Same.
* include/bits/stl_multiset.h: Same.
* include/bits/stl_bvector.h: Same.
* include/backward/binders.h: Change binder module to binders.
* include/std/complex: Add complex_numers module.
* include/tr1_impl/complex: Same.
* include/std/valarray: Add numeric_arrays module.
* include/bits/gslice_array.h: Same.
* include/bits/gslice.h: Same.
* include/bits/mask_array.h: Same.
* include/bits/slice_array.h: Same.
* include/bits/indirect_array.h: Same.
* include/bits/allocator.h: Add allocators module.
* include/ext/throw_allocator.h
* include/ext/pool_allocator.h
* include/ext/bitmap_allocator.h
* include/ext/new_allocator.h
* include/ext/malloc_allocator.h
* include/ext/array_allocator.h
* include/ext/mt_allocator.h
* include/ext/debug_allocator.h
* include/ext/extptr_allocator.h
* include/tr1_impl/functional: Move namespace markup here.
* include/tr1_impl/regex: Same.
* include/tr1_impl/type_traits: Add metaprogramming module.
* include/std/type_traits: Same.
* include/std/memory: Add memory module.
* include/std/ratio: Add ratio module.
* include/std/chrono: Move namespace markup here, add time module.
* include/std/thread: Move namespace markup here, add concurrency
module.
* include/std/mutex: Use concurrency module.
* include/std/condition_variable: Same.
* include/bits/ios_base.h: Refine io module.
* include/bits/basic_ios.h: Same.
* include/std/fstream: Same.
* include/std/istream: Same.
* include/std/ostream: Same.
* include/std/sstream: Same.
* include/ext/vstring.h: Correct parameter markup.
* include/bits/shared_ptr.h: Add pointer_abstractions module.
* include/bits/unique_ptr.h: Same.
* include/bits/algorithmfwd.h: Add mutating_algorithms,
non_mutating_algorithms, sorting_algorithms. Adjust nesting.
* include/bits/stl_heap.h: Add markup for new groupings.
* include/bits/stl_algobase.h: Same.
* include/bits/stl_algo.h: Same.
* include/c_compatibility/stdatomic.h: Add atomics module.
* include/c_global/cstdatomic: Same.
* libsupc++/exception: Add exceptions module.
* libsupc++/typeinfo: Same.
* libsupc++/new: Same.
* libsupc++/exception_ptr.h: Same.
* include/std/system_error: Same.
* include/std/stdexcept: Same.
* libsupc++/cxxabi.h: Move doxygroups.cc markup here.
* libsupc++/cxxabi-forced.h: Same.
* testsuite/27_io/ios_base/cons/assign_neg.cc: Fix up line numbers.
* testsuite/27_io/ios_base/cons/copy_neg.cc: Same.
* testsuite/30_threads/condition_variable_any/cons/assign_neg.cc: Same.
* testsuite/30_threads/condition_variable_any/cons/copy_neg.cc: Same.
* testsuite/30_threads/mutex/cons/assign_neg.cc: Same.
* testsuite/30_threads/mutex/cons/copy_neg.cc: Same.
* testsuite/30_threads/timed_mutex/cons/assign_neg.cc: Same.
* testsuite/30_threads/timed_mutex/cons/copy_neg.cc: Same.
* testsuite/30_threads/thread/cons/assign_neg.cc: Same.
* testsuite/30_threads/thread/cons/copy_neg.cc: Same.
* testsuite/30_threads/recursive_mutex/cons/assign_neg.cc: Same.
* testsuite/30_threads/recursive_mutex/cons/copy_neg.cc: Same.
* testsuite/30_threads/condition_variable/cons/assign_neg.cc: Same.
* testsuite/30_threads/condition_variable/cons/copy_neg.cc: Same.
* testsuite/30_threads/recursive_timed_mutex/cons/assign_neg.cc: Same.
* testsuite/30_threads/recursive_timed_mutex/cons/copy_neg.cc: Same.
* testsuite/29_atomics/atomic/cons/assign_neg.cc: Same.
* testsuite/29_atomics/atomic/cons/copy_neg.cc: Same.
* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc: Same.
* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Same.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Same.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Same.
* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Same.
* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Same.
* testsuite/23_containers/deque/requirements/dr438/
constructor_1_neg.cc: Same.
* testsuite/23_containers/deque/requirements/dr438/
constructor_2_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/
constructor_1_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/
constructor_2_neg.cc: Same.
* testsuite/20_util/duration/cons/1_neg.cc: Same.
* testsuite/20_util/duration/requirements/typedefs_neg1.cc: Same.
* testsuite/20_util/duration/requirements/typedefs_neg2.cc: Same.
* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Same.
* testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Same.
* testsuite/20_util/unique_ptr/assign/assign.cc: Same.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc: Same.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc: Same.
* testsuite/20_util/ratio/cons/cons_overflow.cc: Same.
* testsuite/20_util/ratio/operations/ops_overflow.cc: Same.
From-SVN: r144343
2009-02-21 00:45:21 +00:00
Paolo Carlini
bc2631e0c6
re PR libstdc++/25191 (exception_defines.h #defines try/catch)
...
2009-02-03 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/25191
* libsupc++/exception_defines.h: Depending on __EXCEPTIONS,
deal consistently with __try and __catch too.
* src/localename.cc: Replace try -> __try, catch -> __catch.
* src/ios.cc: Likewise.
* src/locale.cc: Likewise.
* src/istream.cc: Likewise.
* src/thread.cc: Likewise.
* src/compatibility.cc: Likewise.
* src/bitmap_allocator.cc: Likewise.
* src/ios_init.cc: Likewise.
* include/debug/deque: Likewise.
* include/debug/list: Likewise.
* include/tr1_impl/hashtable: Likewise.
* include/std/bitset: Likewise.
* include/ext/pb_ds/detail/resize_policy/
hash_load_check_resize_trigger_imp.hpp: Likewise.
* include/ext/pb_ds/detail/resize_policy/
hash_standard_resize_policy_imp.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/
resize_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/cc_hash_table_map_/
constructor_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/
split_join_branch_bag.hpp: Likewise.
* include/ext/pb_ds/detail/pat_trie_/
constructors_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/bin_search_tree_/
constructors_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/gp_hash_table_map_/
resize_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/gp_hash_table_map_/
constructor_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/binary_heap_/
constructors_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/binary_heap_/
erase_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/binary_heap_/
split_join_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/left_child_next_sibling_heap_/
constructors_destructor_fn_imps.hpp: Likewise.
* include/ext/pb_ds/detail/debug_map_base.hpp: Likewise.
* include/ext/pb_ds/detail/list_update_map_/
constructor_destructor_fn_imps.hpp: Likewise.
* include/ext/slist: Likewise.
* include/ext/memory: Likewise.
* include/ext/rc_string_base.h: Likewise.
* include/ext/ropeimpl.h: Likewise.
* include/ext/vstring.tcc: Likewise.
* include/ext/rope: Likewise.
* include/ext/sso_string_base.h: Likewise.
* include/bits/shared_ptr.h: Likewise.
* include/bits/stl_list.h: Likewise.
* include/bits/locale_classes.tcc: Likewise.
* include/bits/locale_facets.tcc: Likewise.
* include/bits/locale_classes.h: Likewise.
* include/bits/forward_list.h: Likewise.
* include/bits/stl_vector.h: Likewise.
* include/bits/stl_deque.h: Likewise.
* include/bits/istream.tcc: Likewise.
* include/bits/stl_uninitialized.h: Likewise.
* include/bits/ostream.tcc: Likewise.
* include/bits/vector.tcc: Likewise.
* include/bits/stl_tempbuf.h: Likewise.
* include/bits/deque.tcc: Likewise.
* include/bits/basic_string.tcc: Likewise.
* include/bits/ostream_insert.h: Likewise.
* include/bits/locale_facets_nonio.tcc: Likewise.
* include/bits/stl_tree.h: Likewise.
* include/bits/fstream.tcc: Likewise.
* include/tr1/shared_ptr.h: Likewise.
* include/tr1/hypergeometric.tcc: Likewise.
* include/backward/hashtable.h: Likewise.
* libsupc++/exception_ptr.h: Likewise.
* libsupc++/eh_personality.cc: Likewise.
* libsupc++/eh_call.cc: Likewise.
* config/locale/gnu/monetary_members.cc: Likewise.
* config/locale/gnu/time_members.h: Likewise.
* config/locale/generic/time_members.h: Likewise.
From-SVN: r143913
2009-02-03 23:44:53 +00:00
Benjamin Kosnik
adc8a1e3e0
re PR libstdc++/32666 (FAIL: abi_check hppa)
...
2009-01-15 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/32666
* config/abi/post/hppa-linux-gnu/baseline_symbols.txt: Update.
2009-01-15 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/32666
* Makefile.am (hosted_source): Remove libmath directory.
* Makefile.in: Regenerate.
* linkage.m4 (GLIBCXX_CHECK_COMPLEX_MATH_SUPPORT): Remove.
(AC_REPLACE_MATHFUNCS): Remove.
(GLIBCXX_CHECK_MATH_SUPPORT): Remove copysign, copysignl checks as done
in GLIBCXX_CHECK_C99_TR1.
* acinclude.m4: Remove libmath, need_math.
* crossconfig.m4: Remove use of HAVE_COPYSIGN, HAVE_COPYSIGNL,
HAVE_COPYSIGNF, GLIBCXX_CHECK_COMPLEX_MATH_SUPPORT, need_libmath.
* configure.ac: Same.
* configure: Regenerate.
* fragment.am: Fix comment.
* config.h.in: Regenerate.
* src/Makefile.in: Regenerate.
* src/Makefile.am: Remove libmath references.
* doc/Makefile.in: Regenerate.
* po/Makefile.in: Regenerate.
* include/Makefile.in: Regenerate.
* libsupc++/Makefile.in: Regenerate.
* testsuite/Makefile.in: Regenerate.
* src/compatibility.cc: Also export long double versions of "C" math
library if hppa-linux.
* config/abi/pre/gnu.ver: Remove unused __signbit exports.
* doc/xml/manual/appendix_contributing.xml: Remove libmath reference.
* libmath: Remove.
* libmath/signbit.c: Same.
* libmath/stubs.c: Same.
* libmath/Makefile.in: Same.
* libmath/copysignf.c: Same.
* libmath/mathconf.h: Same.
* libmath/signbitf.c: Same.
* libmath/Makefile.am: Same.
* libmath/signbitl.c: Same.
From-SVN: r143406
2009-01-15 20:02:11 +00:00
Jakub Jelinek
c4bca01b27
re PR libstdc++/38732 (Openoffice.org segfaults with runtime libs built from GCC trunk)
...
PR libstdc++/38732
* libsupc++/unwind-cxx.h (__cxxabiv1::__cxa_exception): Remove
referenceCount field again.
(__cxxabiv1::__cxa_refcounted_exception): New struct.
(__cxxabiv1::__get_refcounted_exception_header_from_obj,
__cxxabiv1::__get_refcounted_exception_header_from_ue): New static
inline functions.
* libsupc++/eh_alloc.cc (__cxxabiv1::__cxa_allocate_exception,
__cxxabiv1::__cxa_free_exception): Use __cxa_refcounted_exception
instead of __cxa_exception.
* libsupc++/eh_throw.cc (__gxx_exception_cleanup,
__cxxabiv1::__cxa_throw): Likewise.
* libsupc++/eh_ptr.cc (std::rethrow_exception,
std::__exception_ptr::exception_ptr::_M_addref,
std::__exception_ptr::exception_ptr::_M_release,
__gxx_dependent_exception_cleanup): Likewise.
* testsuite/18_support/exception/38732.cc: New test.
From-SVN: r143170
2009-01-07 23:50:42 +01:00
Peter O'Gorman
25e5de9afd
configure: Regenerate for new libtool.
...
* configure: Regenerate for new libtool.
* aclocal.m4: Ditto.
* Makefile.in: Ditto.
* src/Makefile.in: Ditto.
* doc/Makefile.in: Ditto.
* po/Makefile.in: Ditto.
* libmath/Makefile.in: Ditto.
* include/Makefile.in: Ditto.
* libsupc++/Makefile.in: Ditto.
* testsuite/Makefile.in: Ditto.
Co-Authored-By: Steve Ellcey <sje@cup.hp.com>
From-SVN: r140702
2008-09-26 16:32:26 +00:00
Paolo Carlini
37383ef55e
gnu.ver: Also export __once_functor_lock...
...
2008-09-03 Paolo Carlini <paolo.carlini@oracle.com>
* config/abi/pre/gnu.ver: Also export __once_functor_lock; tighten
GLIBCXX_3.4 exports (necessary in case of undef _GLIBCXX_HAVE_TLS).
* Makefile.in: Regenerate.
* src/Makefile.in: Likewise.
* doc/Makefile.in: Likewise.
* po/Makefile.in: Likewise.
* libmath/Makefile.in: Likewise.
* include/Makefile.in: Likewise.
* libsupc++/Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.
From-SVN: r139968
2008-09-04 00:57:57 +00:00
Aaron W. LaFramboise
d89f0ad622
configure.ac (RPATH_ENVVAR): Use PATH on Windows.
...
2008-08-31 Aaron W. LaFramboise <aaronavay62@aaronwl.com>
<toplevel>
* configure.ac (RPATH_ENVVAR): Use PATH on Windows.
(GCC_SHLIB_SUBDIR): New.
* Makefile.tpl (HOST_LIB_PATH_gcc): Use GCC_SHLIB_SUBDIR.
* configure: Regenerate.
* Makefile.in: Regenerate.
<gcc>
* mkmap-flat.awk: Add option pe_dll.
* config/i386/t-cygming (SHLIB_LINK): Support building libgcc_s.
* gcc/config/i386/t-cygwin (SHLIB_LC): Add.
* gcc/config/i386/t-mingw32 (SHLIB_LC): Add.
* config/i386/mingw32.h (SHARED_LIBGCC_UNDEFS_SPEC): New.
(SUBTARGET_EXTRA_SPECS): Use SHARED_LIBGCC_UNDEFS_SPEC.
(LINK_SPEC): Support libgcc_s.
(LIBGCC_SPEC): Support libgcc_s.
(LIBGCC_SONAME): New.
<libstdc++-v3>
* acinclude.m4 <enable_symvers>: Don't use symvers on Windows.
* configure: Regenerated.
* Makefile.in: Regenerated.
* src/Makefile.in: Regenerated.
* doc/makefile.in: Regenerated.
* po/Makefile.in: Regenerated.
* libmath/Makefile.in: Regenerated.
* include/Makefile.in: Regenerated.
* libsupc++/Makefile.in: Regenerated.
* testsuite/makefile.in: Regenerated.
From-SVN: r139837
2008-08-31 12:14:25 -06:00
Paul Brook
c5e46192bf
eh_call.cc (__cxa_call_unexpected): Fix name of __get_object_from_ambiguous_exception.
...
2008-08-27 Paul Brook <paul@codesourcery.com>
* libsupc++/eh_call.cc (__cxa_call_unexpected): Fix name of
__get_object_from_ambiguous_exception.
From-SVN: r139626
2008-08-27 16:10:19 +00:00
Paolo Carlini
30a333ceeb
[multiple changes]
...
2008-08-23 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/lib/libstdc++.exp (check_v3_target_atomic_builtins): Add.
* testsuite/lib/dg-options.exp (dg-require-atomic-builtins): Likewise.
* testsuite/18_support/exception_ptr/current_exception.cc: Use it.
* testsuite/18_support/exception_ptr/rethrow_exception.cc: Likewise.
* testsuite/18_support/exception_ptr/lifespan.cc: Likewise.
2008-08-23 Sebastian Redl <sebastian.redl@getdesigned.at>
Add (again) exception propagation support as per N2179. Feature is
available only when _GLIBCXX_ATOMIC_BUILTINS_4 is defined.
* libsupc++/exception_ptr.h (exception_ptr, current_exception,
copy_exception, rethrow_exception): New file, implement exception
propagation.
* libsupc++/eh_ptr.cc (exception_ptr, current_exception,
rethrow_exception, __gxx_dependent_exception_cleanup): Likewise.
* libsupc++/unwind-cxx.h (__cxa_exception): Add reference count.
(__cxa_dependent_exception, __cxa_allocate_dependent_exception,
__cxa_free_dependent_exception, __get_dependent_exception_from_ue,
__GXX_INIT_DEPENDENT_EXCEPTION_CLASS, __is_dependent_exception,
__gxx_dependent_exception_class, __get_object_from_ue,
__get_object_from_ambiguous_exception): Add.
(__GXX_INIT_EXCEPTION_CLASS, __gxx_exception_class): Rename.
(__is_gxx_exception_class): Handle dependent exceptions.
* libsupc++/eh_arm.cc (__cxa_type_match): Likewise.
* libsupc++/eh_call.cc (__cxa_call_unexpected): Likewise.
* libsupc++/eh_personality.cc (__gxx_personality_*): Likewise.
* libsupc++/eh_type.cc (__cxa_current_exception_type): Likewise.
* libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception,
__cxa_free_dependent_exception): Add.
* libsupc++/eh_throw.cc (__gxx_exception_cleanup): Handle reference
counting.
* libsupc++/exception: Conditionally include exception_ptr.h.
* libsupc++/Makefile.am: Register new files.
* libsupc++/Makefile.in: Regenerate.
* config/abi/pre/gnu.ver: Add new symbols.
* testsuite/18_support/exception_ptr/current_exception.cc: Test the
core functionality of current_exception().
* testsuite/18_support/exception_ptr/rethrow_exception.cc: Test the
core functionality of rethrow_exception().
* testsuite/18_support/exception_ptr/lifespan.cc: Test the life span of
exception objects during exception propagation.
From-SVN: r139509
2008-08-23 11:28:30 +00:00
Paolo Carlini
9b410dd0ec
2008-08-22 Paolo Carlini <paolo.carlini@oracle.com>
...
Revert again the N2179 patch.
From-SVN: r139497
2008-08-22 18:59:41 +00:00
Sebastian Redl
eb5712c966
eh_ptr.cc (__gxx_dependent_exception_cleanup): Call __cxa_free_dependent_exception.
...
2008-08-21 Sebastian Redl <sebastian.redl@getdesigned.at>
* libsupc++/eh_ptr.cc (__gxx_dependent_exception_cleanup): Call
__cxa_free_dependent_exception.
From-SVN: r139402
2008-08-21 17:37:23 +00:00
Paolo Carlini
6d419a6ef3
Re-instate last patch...
...
2008-08-13 Paolo Carlini <paolo.carlini@oracle.com>
Re-instate last patch, amended to use __exchange_and_add_dispatch
and __atomic_add_dispatch in eh_ptr.cc and eh_throw.cc.
From-SVN: r139091
2008-08-14 01:17:09 +00:00
Paolo Carlini
8d019b6593
2008-08-13 Paolo Carlini <paolo.carlini@oracle.com>
...
Revert the last patch.
From-SVN: r139075
2008-08-13 20:10:42 +00:00
Paolo Carlini
ec001bc928
2008-08-13 Paolo Carlini <paolo.carlini@oracle.com>
...
Revert the last patch.
From-SVN: r139074
2008-08-13 20:08:55 +00:00
Sebastian Redl
0292e6d2bb
Add exception propagation support as per N2179.
...
2008-08-13 Sebastian Redl <sebastian.redl@getdesigned.at>
Add exception propagation support as per N2179.
* libsupc++/exception_ptr.h (exception_ptr, current_exception,
copy_exception, rethrow_exception): New file, implement exception
propagation.
* libsupc++/eh_ptr.cc (exception_ptr, current_exception,
rethrow_exception, __gxx_dependent_exception_cleanup): Likewise.
* libsupc++/unwind-cxx.h (__cxa_exception): Add reference count.
(__cxa_dependent_exception, __cxa_allocate_dependent_exception,
__cxa_free_dependent_exception, __get_dependent_exception_from_ue,
__GXX_INIT_DEPENDENT_EXCEPTION_CLASS, __is_dependent_exception,
__gxx_dependent_exception_class, __get_object_from_ue,
__get_object_from_ambiguous_exception): Add.
(__GXX_INIT_EXCEPTION_CLASS, __gxx_exception_class): Rename.
(__is_gxx_exception_class): Handle dependent exceptions.
* libsupc++/eh_arm.cc (__cxa_type_match): Likewise.
* libsupc++/eh_call.cc (__cxa_call_unexpected): Likewise.
* libsupc++/eh_personality.cc (__gxx_personality_*): Likewise.
* libsupc++/eh_type.cc (__cxa_current_exception_type): Likewise.
* libsupc++/eh_alloc.cc (__cxa_allocate_dependent_exception,
__cxa_free_dependent_exception): Add.
* libsupc++/eh_throw.cc (__gxx_exception_cleanup): Handle reference
counting.
* libsupc++/exception: Conditionally include exception_ptr.h.
* libsupc++/Makefile.am: Register new files.
* libsupc++/Makefile.in: Regenerate.
* config/abi/pre/gnu.ver: Add new symbols.
* testsuite/18_support/exception_ptr/current_exception.cc: Test the
core functionality of current_exception().
* testsuite/18_support/exception_ptr/rethrow_exception.cc: Test the
core functionality of rethrow_exception().
* testsuite/18_support/exception_ptr/lifespan.cc: Test the life span of
exception objects during exception propagation.
From-SVN: r139064
2008-08-13 18:14:51 +00:00
Paolo Bonzini
ec6fa56a8d
acinclude.m4 ([GLIBCXX_CHECK_CLOCK_GETTIME]): Reinstate clock_gettime search, but only in libposix4, never link librt.
...
2008-08-01 Paolo Bonzini <bonzini@gnu.org>
Chris Fairles <chris.fairles@gmail.com>
* acinclude.m4 ([GLIBCXX_CHECK_CLOCK_GETTIME]): Reinstate clock_gettime
search, but only in libposix4, never link librt.
* src/Makefile.am: Reinstate previous change to add GLIBCXX_LIBS.
* configure: Regenerate.
* configure.in: Likewise.
* Makefile.in: Likewise.
* src/Makefile.in: Likewise.
* libsup++/Makefile.in: Likewise.
* po/Makefile.in: Likewise.
* doc/Makefile.in: Likewise.
Co-Authored-By: Chris Fairles <chris.fairles@gmail.com>
From-SVN: r138519
2008-08-01 14:06:38 +00:00
Paolo Carlini
8cbb6b0003
re PR libstdc++/36924 (mt_allocator/deallocate_local_thread-5.cc and ext/mt_allocator/deallocate_local_thread-7.cc fail sometimes)
...
2008-07-24 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/36924
Revert:
2008-07-23 Chris Fairles <chris.fairles@gmail.com>
* acinclude.m4 ([GLIBCXX_CHECK_CLOCK_GETTIME]): Define GLIBCXX_LIBS.
Holds the lib that defines clock_gettime (-lrt or -lposix4).
* src/Makefile.am: Use it.
* configure: Regenerate.
* configure.in: Likewise.
* Makefile.in: Likewise.
* src/Makefile.in: Likewise.
* libsup++/Makefile.in: Likewise.
* po/Makefile.in: Likewise.
* doc/Makefile.in: Likewise.
From-SVN: r138127
2008-07-24 22:47:26 +00:00
Chris Fairles
554cd17b8d
acinclude.m4 ([GLIBCXX_CHECK_CLOCK_GETTIME]): Define GLIBCXX_LIBS.
...
2008-07-23 Chris Fairles <chris.fairles@gmail.com>
* acinclude.m4 ([GLIBCXX_CHECK_CLOCK_GETTIME]): Define GLIBCXX_LIBS.
Holds the lib that defines clock_gettime (-lrt or -lposix4).
* src/Makefile.am: Use it.
* configure: Regenerate.
* configure.in: Likewise.
* Makefile.in: Likewise.
* src/Makefile.in: Likewise.
* libsup++/Makefile.in: Likewise.
* po/Makefile.in: Likewise.
* doc/Makefile.in: Likewise.
From-SVN: r138087
2008-07-23 14:49:00 +00:00
Benjamin Kosnik
ad68e9fce0
user.cfg.in: Add complex, ratio, intializer_list.
...
2008-07-15 Benjamin Kosnik <bkoz@redhat.com>
* doc/doxygen/user.cfg.in: Add complex, ratio,
intializer_list.
(PREDEFINED): Add _GLIBCXX_USE_C99_STDINT_TR1.
* doc/doxygen/doxygroups.cc: Add std::chrono.
* include/bits/unique_ptr.h (default_delete, unique_ptr): Add markup.
* libsupc++/initializer_list (initializer_list): Same.
* include/std/ratio: Same.
* include/std/chrono: Same.
* include/std/complex: Disambiguate file markup.
From-SVN: r137868
2008-07-16 07:01:23 +00:00
Joseph Myers
e32717fc89
unwind-cxx.h (__is_gxx_forced_unwind_class, [...]): Define for ARM EABI unwinder.
...
* libsupc++/unwind-cxx.h (__is_gxx_forced_unwind_class,
__GXX_INIT_FORCED_UNWIND_CLASS): Define for ARM EABI unwinder.
* libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Call
__GXX_INIT_FORCED_UNWIND_CLASS for forced unwind with ARM EABI
unwinder.
* libsupc++/eh_arm.cc (__cxa_type_match): Use
__is_gxx_forced_unwind_class to check for forced unwind.
From-SVN: r137683
2008-07-10 01:57:16 +01:00
Paolo Carlini
d07660ccf3
Makefile.am: Add initializer_list to the headers.
...
2008-07-03 Paolo Carlini <paolo.carlini@oracle.com>
* libsupc++/Makefile.am: Add initializer_list to the headers.
* libsupc++/Makefile.in: Regenerate.
* libsupc++/initializer_list: Minor cosmetic changes.
From-SVN: r137409
2008-07-03 09:42:30 +00:00
Jason Merrill
6010fae752
tree.c (ctor_to_list): Use FOR_EACH_CONSTRUCTOR_ELT.
...
* gcc/tree.c (ctor_to_list): Use FOR_EACH_CONSTRUCTOR_ELT.
* gcc/cp/Make-lang.in (cp/typeck2.o): Add dependency.
* libstdc++-v3/libsupc++/initializer_list: Uglify and wrap in
__GXX_EXPERIMENTAL_CXX0X__.
* libstdc++-v3/include/bits/stl_map.h (insert(initializer_list)): Wrap.
From-SVN: r137406
2008-07-03 00:32:25 -04:00
Jason Merrill
0935784671
Implement WG21 N2672, Initializer List proposed wording
...
gcc/cp/ChangeLog:
2008-07-02 Jason Merrill <jason@redhat.com>
Implement WG21 N2672, Initializer List proposed wording
* cp-tree.h (enum cp_tree_index): Add CPTI_INIT_LIST_TYPE.
(struct lang_type_class): Add has_list_ctor bitfield.
(TYPE_HAS_LIST_CTOR): New macro.
(BRACE_ENCLOSED_INITIALIZER_P): Expect init_list_type_node.
(CONSTRUCTOR_IS_DIRECT_INIT): New macro.
(LOOKUP_NO_NARROWING): New macro.
(LOOKUP_NO_COPY_CTOR_CONVERSION): New macro.
* parser.c (cp_parse_braced_list): Split out from...
(cp_parser_initializer_clause): ...here.
(cp_parser_postfix_expression): Build up CONSTRUCTOR for compound
literal here.
(cp_lexer_next_token_is_not_keyword): New fn.
(cp_parser_parenthesized_expression_list): Handle { }.
(cp_parser_new_expression, cp_parser_new_initializer): Likewise.
(cp_parser_assignment_expression, cp_parser_condition): Likewise.
(cp_parser_jump_statement, cp_parser_simple_declaration): Likewise.
(cp_parser_mem_initializer, cp_parser_init_declarator): Likewise.
(cp_parser_initializer, cp_parser_functional_cast): Likewise.
(cp_parser_omp_for_loop, cp_parser_cache_group): Likewise.
(cp_parser_save_member_function_body): Likewise.
* call.c (conversion_kind): Add ck_list, ck_aggr.
(struct conversion): Add check_narrowing bitfield, conversion list.
(build_list_conv): New fn.
(build_aggr_conv): New fn.
(implicit_conversion): Call them.
(standard_conversion): Set check_narrowing if appropriate.
(add_function_candidate): Handle LOOKUP_NO_COPY_CTOR_CONVERSION.
(build_user_type_conversion_1): When converting from an init list,
we allow additional conversions except when calling a copy ctor.
(convert_like_real): Calling an explicit ctor for an init list is
ill-formed. Handle ck_list and ck_addr. Check narrowing.
(build_new_method_call): If CONSTRUCTOR_IS_DIRECT_INIT is set and
class doesn't have a list ctor, break the {} into a TREE_LIST.
(compare_ics): ck_list is better than other UDCs.
(set_up_extended_ref_temp): Split out from initialize_reference.
(is_std_init_list): New fn.
(is_list_ctor): New fn.
* decl.c (cxx_init_decl_processing): Create init_list_type_node.
(reshape_init_array_1): Pass it to build_constructor.
(reshape_init_class): Ditto.
(initialize_artificial_var): Pass the appropriate type.
(build_aggr_init_full_exprs): Split out from...
(check_initializer): ...here. Handle new semantics.
(build_init_list_var_init): New subroutine of check_initializer.
(grokdeclarator): Converting constructors can have more than one parm.
(grok_special_member_properties): Set TYPE_HAS_LIST_CTOR.
* init.c (expand_default_init): Only do digest_init for aggregates.
* rtti.c (tinfo_base_init): Pass init_list_type_node to
build_constructor_from_list.
(generic_initializer, ptr_initializer): Ditto.
(ptm_initializer, class_initializer): Ditto.
(get_pseudo_ti_init): Ditto.
* error.c (dump_type): Handle init_list_type_node.
(maybe_warn_cpp0x): New fn.
(maybe_varn_variadic_templates): Call it.
* cvt.c (ocp_convert): Handle conversion from { }.
* tree.c (build_array_of_n_type): New fn.
* typeck2.c (store_init_value): Use init_list_type_node.
(digest_init): Likewise.
(check_narrowing): New fn.
* semantics.c: (finish_compound_literal): Take CONSTRUCTOR instead
of vector of constructor elts. Handle non-aggregate types. Make
constant literals static.
* pt.c: (tsubst_copy_and_build): Adjust.
(unify): Handle { }.
* name-lookup.c (arg_assoc_type): Handle init_list_type_node.
gcc/ChangeLog:
2008-07-02 Jason Merrill <jason@redhat.com>
* tree.c (ctor_to_list): New fn.
* tree.h: Declare it.
(CONSTRUCTOR_ELT): New macro.
(CONSTRUCTOR_NELTS): New macro.
libstdc++-v3/ChangeLog:
2008-07-02 Jason Merrill <jason@redhat.com>
* libsupc++/initializer_list: New file.
* include/bits/stl_map.h (insert(initializer_list)): New method.
From-SVN: r137361
2008-07-02 11:38:50 -04:00
Mark Mitchell
b8df34454c
vec.cc (__aeabi_vec_dtor_cookie): Handle NULL array address.
...
2008-06-27 Mark Mitchell <mark@codesourcery.com>
* libsupc++/vec.cc (__aeabi_vec_dtor_cookie): Handle NULL array
address.
(__aeabi_vec_delete): Likewise.
(__aeabi_vec_delete3): Likewise.
(__aeabi_vec_delete3_nodtor): Likewise.
2008-06-27 Mark Mitchell <mark@codesourcery.com>
* g++.dg/abi/arm_cxa_vec2.C: New test.
From-SVN: r137207
2008-06-27 23:02:06 +00:00
Benjamin Kosnik
35648b4572
acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Check for set of all used __sync builtins, in two sizes.
...
2008-04-24 Benjamin Kosnik <bkoz@redhat.com>
* acinclude.m4 (GLIBCXX_ENABLE_ATOMIC_BUILTINS): Check for set of
all used __sync builtins, in two sizes.
* config.h.in: Regenerate.
* configure: Regenerate.
* src/atomic.cc: Use _GLIBCXX_ATOMIC_BUILTINS_1.
* include/ext/atomicity.h: Use _GLIBCXX_ATOMIC_BUILTINS_4.
* libsupc++/guard.cc: Use _GLIBCXX_ATOMIC_BUILTINS_4.
* doc/xml/manual/concurrency.xm: Update docs.
From-SVN: r134629
2008-04-24 14:40:29 +00:00
Ralf Wildenhues
ef5f59f639
Makefile.am: Fix most stamp rules to regenerate the links for all sources newer than the...
...
libstdc++-v3/
* include/Makefile.am: Fix most stamp rules to regenerate
the links for all sources newer than the stamp file.
* include/Makefile.in: Regenerate.
* Makefile.in: Likewise.
* src/Makefile.in: Likewise.
* doc/Makefile.in: Likewise.
* po/Makefile.in: Likewise.
* libmath/Makefile.in: Likewise.
* libsupc++/Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.
From-SVN: r134492
2008-04-20 21:10:38 +00:00
Andreas Tobler
ed0840baf2
re PR libstdc++/35915 (atomic.cc:31:20: error: stdint.h: No such file)
...
2008-04-16 Andreas Tobler <a.tobler@schweiz.org>
PR libstdc++/35915
* configure.ac: Use GCC_HEADER_STDINT.
* src/atomic.cc: Include gstdint.h
* configure: Regenerate.
* Makefile.in: Likewise.
* doc/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.
* aclocal.m4: Likewise.
From-SVN: r134368
2008-04-16 23:30:11 +02:00
Benjamin Kosnik
d466a7e21c
[multiple changes]
...
2008-04-10 Benjamin Kosnik <bkoz@redhat.com>
* include/c_global/cstdatomic: C++ types only, format, doxygen markup.
* include/c_compatibility/stdatomic.h: "C" only, format, doxygen markup.
* src/atomic.c: Format, doxygen markup, edits.
* include/Makefile.am (cstdatomic, stdatomic.h): Add.
* src/Makefile.am (atomic.c): Add.
* acinclude.m4 (GLIBCXX_CHECK_STANDARD_LAYOUT): New.
* configure.ac: Call it.
* include/Makefile.in: Regenerate.
* src/Makefile.in: Same.
* Makefile.in: Same.
* doc/Makefile.in: Same.
* po/Makefile.in: Same.
* libmath/Makefile.in: Same.
* include/Makefile.in: Same.
* testsuite/Makefile.in: Same.
* libsupc++/Makefile.in: Same.
* config.h.in: Same.
* configure: Same.
* config/abi/pre/gnu.ver: Add atomics exports.
* include/ext/typelist.h (apply_generator): New.
* include/bits/c++config (_GLIBCXX_BEGIN_EXTERN_C): New.
(_GLIBCXX_END_EXTERN_C): New.
Deal with _GLIBCXX_BEGIN_NAMESPACE, _GLIBCXX_END_NAMESPACE when
compiling as C.
* testsuite/lib/libstdc++.exp (v3_target_compile_as_c): Add -L
flag for libstdc++.
* testsuite/util/testsuite_common_types.h (integral_types): New
typelist.
(atomics, atomics_tl): Same.
(assignable, default_constructible, copy_constructible,
explicit_value_constructible): New.
* testsuite/17_intro/headers/c++200x/all.cc: Test new headers.
* testsuite/29_atomics: New.
* testsuite/29_atomics/atomic_address: Same.
* testsuite/29_atomics/atomic_address/cons: Same.
* testsuite/29_atomics/atomic_address/cons/explicit_value.cc: Same.
* testsuite/29_atomics/atomic_address/cons/assign_neg.cc: Same.
* testsuite/29_atomics/atomic_address/cons/copy_neg.cc: Same.
* testsuite/29_atomics/atomic_address/cons/default.cc: Same.
* testsuite/29_atomics/atomic_address/cons/aggregate.cc: Same.
* testsuite/29_atomics/atomic_flag: Same.
* testsuite/29_atomics/atomic_flag/cons: Same.
* testsuite/29_atomics/atomic_flag/cons/assign_neg.cc: Same.
* testsuite/29_atomics/atomic_flag/cons/copy_neg.cc: Same.
* testsuite/29_atomics/atomic_flag/cons/default.cc: Same.
* testsuite/29_atomics/atomic_flag/cons/aggregate.cc: Same.
* testsuite/29_atomics/atomic_flag/requirements: Same.
* testsuite/29_atomics/atomic_flag/requirements/standard_layout.cc:
Same.
* testsuite/29_atomics/atomic_flag/
atomic_global_fence_compatibility.cc: Same.
* testsuite/29_atomics/atomic_flag/test_and_set: Same.
* testsuite/29_atomics/atomic_flag/test_and_set/explicit.c: Same.
* testsuite/29_atomics/atomic_flag/test_and_set/explicit.cc: Same.
* testsuite/29_atomics/atomic_flag/test_and_set/implicit.c: Same.
* testsuite/29_atomics/atomic_flag/test_and_set/implicit.cc: Same.
* testsuite/29_atomics/headers: Same.
* testsuite/29_atomics/headers/cstdatomic: Same.
* testsuite/29_atomics/headers/cstdatomic/types_std_c++0x.cc: Same.
* testsuite/29_atomics/headers/cstdatomic/functions_std_c++0x.cc: Same.
* testsuite/29_atomics/headers/cstdatomic/std_c++0x_neg.cc: Same.
* testsuite/29_atomics/headers/cstdatomic/macros.cc: Same.
* testsuite/29_atomics/headers/stdatomic.h: Same.
* testsuite/29_atomics/headers/stdatomic.h/macros.c: Same.
* testsuite/29_atomics/headers/stdatomic.h/types.c: Same.
* testsuite/29_atomics/headers/stdatomic.h/functions.c: Same.
* testsuite/29_atomics/atomic: Same.
* testsuite/29_atomics/atomic/cons: Same.
* testsuite/29_atomics/atomic/cons/explicit_value.cc: Same.
* testsuite/29_atomics/atomic/cons/assign_neg.cc: Same.
* testsuite/29_atomics/atomic/cons/copy_neg.cc: Same.
* testsuite/29_atomics/atomic/cons/default.cc: Same.
* testsuite/29_atomics/atomic/requirements: Same.
* testsuite/29_atomics/atomic/requirements/explicit_instantiation: Same.
* testsuite/29_atomics/atomic/requirements/explicit_instantiation/
1.cc: Same.
2008-04-10 Lawrence Crowl <crowl@google.com>
* include/c_global/cstdatomic: New.
* include/c_compatibility/stdatomic.h: New.
* src/atomic.c: New.
From-SVN: r134174
2008-04-10 20:26:45 +00:00
Benjamin Kosnik
074c006515
configure.ac (libtool_VERSION): To 6:11:0.
...
2008-03-18 Benjamin Kosnik <bkoz@redhat.com>
* configure.ac (libtool_VERSION): To 6:11:0.
* configure: Regenerate.
* aclocal.m4: Regenerate.
From-SVN: r133317
2008-03-18 17:22:52 +00:00
Ralf Wildenhues
38d24731e9
configure.ac: m4_include config/proginstall.m4.
...
2008-03-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* configure.ac: m4_include config/proginstall.m4.
* configure: Regenerate.
config/
2008-03-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* proginstall.m4: New file, with fixed AC_PROG_INSTALL.
libjava/
2008-03-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* Makefile.am (install-data-local): Rewrite to be more efficient,
using awk, and `install' with multiple files at once. Do not gather
more than 50 files in one go to avoid hitting command line limits.
(install_data_local_split): New variable.
* aclocal.m4: Regenerate.
* configure: Likewise.
* Makefile.in: Likewise.
* gcj/Makefile.in: Likewise.
* include/Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.
boehm-gc/
2008-03-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* aclocal.m4: Regenerate.
* configure: Likewise.
* Makefile.in: Likewise.
* include/Makefile.in: Likewise.
libffi/
2008-03-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* aclocal.m4: Regenerate.
* configure: Likewise.
* Makefile.in: Likewise.
* include/Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.
libgfortran/
2008-03-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* aclocal.m4: Regenerate.
* configure: Likewise.
* Makefile.in: Likewise.
libgomp/
2008-03-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* aclocal.m4: Regenerate.
* configure: Likewise.
* Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.
libmudflap/
2008-03-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* aclocal.m4: Regenerate.
* configure: Likewise.
* Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.
libssp/
2008-03-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* aclocal.m4: Regenerate.
* configure: Likewise.
* Makefile.in: Likewise.
libssp/
2008-03-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* aclocal.m4: Regenerate.
* configure: Likewise.
* Makefile.in: Likewise.
libstdc++-v3/
2008-03-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* aclocal.m4: Regenerate.
* configure: Likewise.
* Makefile.in: Likewise.
* doc/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.
zlib/
2008-03-16 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* aclocal.m4: Regenerate.
* configure: Likewise.
* Makefile.in: Likewise.
From-SVN: r133269
2008-03-16 08:19:08 +00:00
Paolo Carlini
7eed349eb9
configure: Regenerate with documented autoconf and automake versions (i.e., 2.59 and 1.9.6).
...
2008-02-11 Paolo Carlini <pcarlini@suse.de>
* configure: Regenerate with documented autoconf and automake
versions (i.e., 2.59 and 1.9.6).
* Makefile.in: Likewise.
* src/Makefile.in: Likewise.
* doc/Makefile.in: Likewise.
* po/Makefile.in: Likewise.
* libmath/Makefile.in: Likewise.
* include/Makefile.in: Likewise.
* libsupc++/Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.
* aclocal.m4: Likewise.
From-SVN: r132238
2008-02-11 10:05:33 +00:00
Benjamin Kosnik
8a165db0c0
Convert documentation to DocBook.
...
2008-02-10 Benjamin Kosnik <bkoz@redhat.com>
Convert documentation to DocBook.
* doc/Makefile.am (doc-doxygen-html): Changed to doc-html-doxygen.
(doc-doxygen-man): Changed to doc-man-doxygen.
(doc-performance): Changed to doc-html-performance.
(doc-xml-doxygen): New.
(doc-xml-single): New.
(doc-xml-validate): New.
(doc-html): New.
(doc-html-single): New.
(doc-fo): New.
(doc-pdf): New.
(doc-pdf-fop-xml): New.
(doc-pdf-fop-fo): New.
(doc-pdf-xmlto): New.
(doc-pdf-xmlroff): New.
(doc-pdf-prince): New.
* doc/xml: New directory.
* doc/xml/authors.xml: New.
* doc/xml/images: New directory.
* doc/xml/images/confdeps.png: Add.
* doc/xml/images/confdeps.dot: Add.
* doc/xml/faq.xml: New.
* doc/xml/api.xml: New.
* doc/xml/gnu: New directory.
* doc/xml/gnu/gpl-3.0.xml: New.
* doc/xml/gnu/fdl-1.2.xml: New.
* doc/xml/gnu/gpl-2.0.xml: New.
* doc/xml/manual: New directory.
* doc/xml/manual/mt_allocator.xml: New.
* doc/xml/manual/allocator.xml: New.
* doc/xml/manual/ctype.xml: New.
* doc/xml/manual/numerics.xml: New.
* doc/xml/manual/codecvt.xml: New.
* doc/xml/manual/concurrency.xml: New.
* doc/xml/manual/backwards_compatibility.xml: New.
* doc/xml/manual/intro.xml: New.
* doc/xml/manual/shared_ptr.xml: New.
* doc/xml/manual/abi.xml: New.
* doc/xml/manual/status_cxxtr1.xml: New.
* doc/xml/manual/auto_ptr.xml: New.
* doc/xml/manual/build.xml: New.
* doc/xml/manual/internals.xml: New.
* doc/xml/manual/parallel_mode.xml: New.
* doc/xml/manual/status_cxx1998.xml: New.
* doc/xml/manual/containers.xml: New.
* doc/xml/manual/io.xml: New.
* doc/xml/manual/appendix_porting.xml: New.
* doc/xml/manual/utilities.xml: New.
* doc/xml/manual/bitmap_allocator.xml: New.
* doc/xml/manual/support.xml: New.
* doc/xml/manual/configure.xml: New.
* doc/xml/manual/build_hacking.xml: New.
* doc/xml/manual/evolution.xml: New.
* doc/xml/manual/using.xml: New.
* doc/xml/manual/debug.xml: New.
* doc/xml/manual/localization.xml: New.
* doc/xml/manual/strings.xml: New.
* doc/xml/manual/debug_mode.xml: New.
* doc/xml/manual/locale.xml: New.
* doc/xml/manual/extensions.xml: New.
* doc/xml/manual/appendix_contributing.xml: New.
* doc/xml/manual/messages.xml: New.
* doc/xml/manual/diagnostics.xml: New.
* doc/xml/manual/appendix_free.xml: New.
* doc/xml/manual/algorithms.xml: New.
* doc/xml/manual/iterators.xml: New.
* doc/xml/manual/spine.xml: New.
* doc/xml/manual/test.xml: New.
* doc/xml/manual/status_cxx200x.xml: New.
* doc/xml/spine.xml: New.
* doc/xml/book.txml: New. Template file.
* doc/xml/chapter.txml: Same.
* doc/xml/class.txml: Same.
* doc/doxygen/guide.html: Removed, integrated into other docs.
* doc/doxygen/user.cfg.in: Clean up XML generation.
* doc/doxygen/run_doxygen: Move to..
* scripts/run_doxygen: ...here.
* configure: Regenerate.
* Makefile.in: Regenerate.
* src/Makefile.in: Regenerate.
* doc/Makefile.in: Regenerate.
* po/Makefile.in: Regenerate.
* libmath/Makefile.in: Regenerate.
* include/Makefile.in: Regenerate.
* libsupc++/Makefile.in: Regenerate.
* testsuite/Makefile.in: Regenerate.
* aclocal.m4: Regenerate.
From-SVN: r132226
2008-02-11 00:01:33 +00:00
Paolo Carlini
e08c673e05
configure: Regenerate.
...
2008-01-19 Paolo Carlini <pcarlini@suse.de>
* configure: Regenerate.
* Makefile.in: Likewise.
* src/Makefile.in: Likewise.
* doc/Makefile.in: Likewise.
* po/Makefile.in: Likewise.
* libmath/Makefile.in: Likewise.
* include/Makefile.in: Likewise.
* libsupc++/Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.
* aclocal.m4: Likewise.
From-SVN: r131671
2008-01-20 01:48:44 +00:00
Benjamin Kosnik
4312e020f1
[multiple changes]
...
2008-01-18 Benjamin Kosnik <bkoz@redhat.com>
* docs/*: To...
* doc/*: ...here.
* testsuite/Makefile.am: Move doc-performance to...
* Makefile.am: Add doc to SUBDIRS, move doxygen-* rules to...
* doc/Makefile.am: Consolidate documentation creation here.
(doc-doxygen-html): New.
(doc-doxygen-man): New.
(doc-performance): New.
* doc/Makefile.in: New.
* acinclude.m4 (glibcxx_SUBDIRS): Add doc directory.
* doc/doxygen/guide.html: Edit for unified html configuration.
* doc/doxygen/mainpage.html: Same.
* doc/doxygen/run_doxygen: Same, more namespace fixups for man
generation.
* doc/doxygen/user.cfg.in: Update for doxygen 1.5.4.
* include/tr1_impl/random: Remove maint from doxygen markup.
* include/tr1_impl/functional: Same.
* include/std/tuple: Same.
* include/std/streambuf: Same.
* include/std/bitset: Same.
* include/std/limits: Same.
* include/std/fstream: Same.
* include/std/istream: Same.
* include/std/sstream: Same.
* include/ext/pool_allocator.h: Same.
* include/ext/rc_string_base.h: Same.
* include/bits/basic_ios.h: Same.
* include/bits/stl_list.h: Same.
* include/bits/stl_map.h: Same.
* include/bits/locale_classes.h: Same.
* include/bits/stl_set.h: Same.
* include/bits/stl_iterator_base_types.h: Same.
* include/bits/basic_string.h: Same.
* include/bits/stl_multimap.h: Same.
* include/bits/stl_vector.h: Same.
* include/bits/ios_base.h: Same.
* include/bits/stl_deque.h: Same.
* include/bits/postypes.h: Same.
* include/bits/stl_multiset.h: Same.
* include/bits/stl_algo.h: Same.
* include/bits/stl_iterator.h: Same.
* include/bits/stl_tempbuf.h: Same.
* include/bits/stl_construct.h: Same.
* include/bits/stl_relops.h: Same.
* include/tr1/tuple: Same.
* include/backward/auto_ptr.h: Same.
* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
Fixups for line number changes.
* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc: Same.
* testsuite/23_containers/vector/requirements/dr438/
constructor_1_neg.cc: Same.
* testsuite/23_containers/vector/requirements/dr438/
constructor_2_neg.cc: Same.
* testsuite/23_containers/deque/requirements/dr438/assign_neg.cc: Same.
* testsuite/23_containers/deque/requirements/dr438/insert_neg.cc: Same.
* testsuite/23_containers/deque/requirements/dr438/
constructor_1_neg.cc: Same.
* testsuite/23_containers/deque/requirements/dr438/
constructor_2_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/
constructor_1_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/
constructor_2_neg.cc: Same.
* testsuite/20_util/auto_ptr/assign_neg.cc: Same.
* aclocal.m4: Regenerate.
* config.h.in: Regenerate.
* configure: Regenerate.
* Makefile.in: Regenerate.
* src/Makefile.in: Regenerate.
* po/Makefile.in: Regenerate.
* libmath/Makefile.in: Regenerate.
* include/Makefile.in: Regenerate.
* libsupc++/Makefile.in: Regenerate.
* testsuite/Makefile.in: Regenerate.
* scripts/make_graphs.py: Correct paths for new layout.
2008-01-17 Benjamin Kosnik <bkoz@redhat.com>
* acinclude.m4 (AC_LC_MESSAGES): Remove serial.
* linkage.m4 (AC_REPLACE_MATHFUNCS): Same.
* configure: Regenerate.
* aclocal.m4: Regenerate.
From-SVN: r131625
2008-01-18 08:16:51 +00:00
Paolo Carlini
eeb77d993d
tree.h: Remove.
...
2008-01-14 Paolo Carlini <pcarlini@suse.de>
* include/parallel/tree.h: Remove.
* include/Makefile.am: Update.
* include/Makefile.in: Rebuild.
* src/Makefile.am: Remove spurious trailing backslash.
* src/Makefile.in: Rebuild.
* po/Makefile.in: Likewise.
* libmath/Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.
* libsupc++/Makefile.in: Likewise.
* aclocal.m4: Likewise.
* Makefile.in: Likewise.
* configure: Likewise.
From-SVN: r131529
2008-01-14 18:08:39 +00:00
Jakub Jelinek
0f3e711eef
configure.ac (--enable-linux-futex): Add new configure option.
...
libstdc++-v3/
* configure.ac (--enable-linux-futex): Add new configure option.
(HAVE_LINUX_FUTEX): New AC_DEFINE.
* Makefile.in: Rebuilt.
* aclocal.m4: Rebuilt.
* configure: Rebuilt.
* config.h.in: Rebuilt.
* config/cpu/generic/cxxabi_tweaks.h (_GLIBCXX_GUARD_BIT,
_GLIBCXX_GUARD_PENDING_BIT, _GLIBCXX_GUARD_WAITING_BIT): Define.
* config/cpu/arm/cxxabi_tweaks.h (_GLIBCXX_GUARD_BIT,
_GLIBCXX_GUARD_PENDING_BIT, _GLIBCXX_GUARD_WAITING_BIT): Define.
* libsupc++/guard.cc: Include climits and syscall.h.
(_GLIBCXX_USE_FUTEX): Define if futex syscall and atomic builtins
are supported.
(_GLIBCXX_FUTEX_WAIT, _GLIBCXX_FUTEX_WAKE): Likewise.
(__guard_test_bit): New static inline.
(__cxa_guard_acquire, __cxa_guard_release, __cxa_guard_abort): Use
atomic builtins and futex syscall if _GLIBCXX_USE_FUTEX.
config/
* futex.m4: New file.
libgomp/
* configure.ac: Move futex checking into ../config/futex.m4.
* configure: Rebuilt.
* aclocal.m4: Rebuilt.
* Makefile.in: Rebuilt.
* configure.tgt: Rename have_tls to gcc_cv_have_tls to match
2007-10-15 ../config/tls.m4 change.
From-SVN: r131399
2008-01-08 17:14:49 +01:00
Ted Phelps
dfd503426c
re PR c++/34152 (Erratic behaviour: Exception translation (throw from signal handlers))
...
PR c++/34152
* libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Check
_GLIBCXX_HAVE_GETIPINFO instead of HAVE_GETIPINFO.
From-SVN: r131361
2008-01-06 21:25:57 +01:00
Jason Merrill
b0bb87a862
guard.cc (struct mutex_wrapper): Move into anonymous namespace.
...
* libsupc++/guard.cc (struct mutex_wrapper): Move into
anonymous namespace.
From-SVN: r129218
2007-10-10 19:06:08 -04:00
Zhou Drangon
3c8b6c602e
re PR libstdc++/33682 (libstdc++ broken for !__GTHREAD_HAS_COND hosts)
...
2007-10-09 Zhou Drangon <drangon.mail@gmail.com>
PR libstdc++/33682
* libsupc++/guard.cc: Make single conditional variable
implementation dependent to __GTHREAD_HAS_COND.
From-SVN: r129181
2007-10-09 21:24:31 +00:00
Benjamin Kosnik
049d24222d
re PR libstdc++/33678 (__do_catch, __do_upcast ABI change)
...
2007-10-06 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/33678
* libsupc++/typeinfo (typeinfo): Revert ordering of virtual components.
From-SVN: r129058
2007-10-06 23:40:32 +00:00
Doug Kwan
afd82ef5ab
gthr-posix.h (__gthread_cond_broadcast, [...]): Add to extend interface for POSIX conditional variables.
...
2007-09-13 Doug Kwan <dougkwan@google.com>
* gcc/gthr-posix.h (__gthread_cond_broadcast, __gthread_cond_wait,
__gthread_cond_wait_recursive): Add to extend interface for POSIX
conditional variables. (__GTHREAD_HAS_COND): Macro defined to signify
support of conditional variables.
* gcc/gthr-posix95.h (__gthread_cond_broadcast, __gthread_cond_wait,
__gthread_cond_wait_recursive): Add to extend interface for POSIX
conditional variables. (__GTHREAD_HAS_COND): Macro defined to signify
support of conditional variables.
* gcc/gthr-single.h (__gthread_cond_broadcast, __gthread_cond_wait,
__gthread_cond_wait_recursive): Add to extend interface for POSIX
conditional variables.
* gcc/gthr.h: Update comments to document new interface.
* libstdc++-v3/include/ext/concurrent.h (class __mutex,
class __recursive_mutex): Add new method gthread_mutex to access
inner gthread mutex.
[__GTHREAD_HAS_COND] (class __concurrence_broadcast_error,
class __concurrence_wait_error, class __cond): Add.
* guard.cc (recursive_push, recursive_pop): Delete.
(init_in_progress_flag, set_init_in_progress_flag): Add to
replace recursive_push and recursive_pop.
(throw_recursive_init_exception): Add.
(acquire, __cxa_guard_acquire, __cxa_guard_abort and
__cxa_guard_release): [__GTHREAD_HAS_COND] Use a conditional
for synchronization of static variable initialization.
The global mutex is only held briefly when guards are
accessed. [!__GTHREAD_HAS_COND] Fall back to the old code,
which deadlocks.
* testsuite/thread/guard.cc: Add new test. It deadlocks with the
old locking code in libstdc++-v3/libsup++/guard.cc.
From-SVN: r129030
2007-10-05 01:35:46 -04:00
Johannes Singler
c2ba97097b
Add parallel mode.
...
2007-09-11 Johannes Singler <singler@ira.uka.de>
Leonor Frias Moya <lfrias@lsi.upc.edu>
Felix Putze <kontakt@felix-putze.de>
Marius Elvert <marius.elvert@ira.uka.de>
Felix Bondarenko <f.bondarenko@web.de>
Robert Geisberger <robert.geisberger@stud.uni-karlsruhe.de>
Robin Dapp <r.dapp@freenet.de>
Benjamin Kosnik <bkoz@redhat.com>
Add parallel mode.
* include/parallel: New.
* include/parallel/iterator.h: New.
* include/parallel/multiway_merge.h: New.
* include/parallel/parallel.h: New.
* include/parallel/algorithm
* include/parallel/find_selectors.h: New.
* include/parallel/losertree.h: New.
* include/parallel/list_partition.h: New.
* include/parallel/types.h: New.
* include/parallel/for_each.h: New.
* include/parallel/multiseq_selection.h: New.
* include/parallel/workstealing.h: New.
* include/parallel/base.h: New.
* include/parallel/par_loop.h: New.
* include/parallel/numeric
* include/parallel/features.h: New.
* include/parallel/quicksort.h: New.
* include/parallel/algorithmfwd.h: New.
* include/parallel/equally_split.h: New.
* include/parallel/compiletime_settings.h: New.
* include/parallel/for_each_selectors.h: New.
* include/parallel/basic_iterator.h: New.
* include/parallel/omp_loop_static.h: New.
* include/parallel/random_shuffle.h: New.
* include/parallel/balanced_quicksort.h: New.
* include/parallel/set_operations.h: New.
* include/parallel/tags.h: New.
* include/parallel/merge.h: New.
* include/parallel/tree.h: New.
* include/parallel/settings.h: New.
* include/parallel/unique_copy.h: New.
* include/parallel/multiway_mergesort.h: New.
* include/parallel/numericfwd.h: New.
* include/parallel/search.h: New.
* include/parallel/partition.h: New.
* include/parallel/compatibility.h: New.
* include/parallel/algobase.h: New.
* include/parallel/find.h: New.
* include/parallel/partial_sum.h: New.
* include/parallel/algo.h: New.
* include/parallel/omp_loop.h: New.
* include/parallel/queue.h: New.
* include/parallel/timing.h: New.
* include/parallel/sort.h: New.
* include/parallel/checkers.h: New.
* include/parallel/random_number.h: New.
* include/bits/algorithmfwd.h: New.
* acinclude.m4 (GLIBCXX_ENABLE_PARALLEL): New.
* configure.host: Add atomic_flags.
* configure.ac: Export ATOMIC_FLAGS, call GLIBCXX_ENABLE_PARALLEL.
* src/Makefile.am: Add parallel_list rules.
* include/Makefile.am: Add parallel files.
* testsuite/Makefile.am (check-parallel): Add.
(check-performance-parallel): Add.
* config.h.in: Regenerate.
* configure: Same.
* libsupc++/Makefile.in: Same.
* testsuite/Makefile.in: Same.
* Makefile.in: Same.
* libmath/Makefile.in: Same.
* include/Makefile.in: Same.
* src/Makefile.in: Same.
* po/Makefile.in: Same.
* config/abi/pre/gnu.ver: Export parallel list bits.
* docs/html/parallel_mode.html: New.
* docs/html/documentation.html: Add link.
* docs/doxygen/user.cfg.in: Adjust for new files and directory.
* docs/doxygen/doxygroups.cc: Adjust namespace markup.
* include/debug/set.h: Adjust for _GLIBCXX_STD_D or _P change.
* include/debug/bitset: Same.
* include/debug/multiset.h: Same.
* include/debug/vector: Same.
* include/debug/map.h: Same.
* include/debug/deque: Same.
* include/debug/list: Same.
* include/debug/debug.h: Same.
* include/debug/multimap.h: Same.
* include/std/algorithm: Same.
* include/std/numeric: Same.
* include/std/bitset: Same.
* include/std/string: Same.
* include/ext/hash_map: Same.
* include/ext/hash_set: Same.
* include/bits/stl_list.h: Same.
* include/bits/stl_map.h: Same.
* include/bits/stl_algobase.h: Same.
* include/bits/stl_set.h: Same.
* include/bits/stl_multimap.h: Same.
* include/bits/stl_vector.h: Same.
* include/bits/stl_numeric.h: Same.
* include/bits/stl_deque.h: Same.
* include/bits/stl_multiset.h: Same.
* include/bits/char_traits.h: Same.
* include/bits/stl_algo.h: Same.
* include/bits/c++config: Same.
* include/bits/vector.tcc: Same.
* include/bits/deque.tcc: Same.
* include/bits/stl_bvector.h: Same.
* include/bits/list.tcc: Same.
* src/list.cc: Same.
* src/parallel_list.cc: New.
* testsuite/lib/libstdc++.exp (check_v3_target_parallel_mode): New.
* testsuite/lib/dg-options.exp (dg-require-parallel-mode): New.
* scripts/testsuite_flags.in (--cxxparallelflags): New.
* scripts/check_performance: Adjust.
* testsuite/25_algorithms/headers/parallel_algorithm.cc: New.
* testsuite/25_algorithms/headers/algorithm_parallel_mode.cc: New.
* testsuite/25_algorithms/headers/parallel_algorithm_mixed1.cc: New.
* testsuite/25_algorithms/headers/parallel_algorithm_mixed2.cc: New.
* testsuite/26_numerics/headers/numeric/parallel_numeric.cc: New.
* testsuite/26_numerics/headers/numeric/numeric_parallel_mode.cc: New.
* testsuite/26_numerics/headers/numeric/
parallel_numeric_mixed1.cc: New.
* testsuite/26_numerics/headers/numeric/
parallel_numeric_mixed2.cc: New.
Co-Authored-By: Benjamin Kosnik <bkoz@redhat.com>
Co-Authored-By: Felix Bondarenko <f.bondarenko@web.de>
Co-Authored-By: Felix Putze <kontakt@felix-putze.de>
Co-Authored-By: Leonor Frias Moya <lfrias@lsi.upc.edu>
Co-Authored-By: Marius Elvert <marius.elvert@ira.uka.de>
Co-Authored-By: Robert Geisberger <robert.geisberger@stud.uni-karlsruhe.de>
Co-Authored-By: Robin Dapp <r.dapp@freenet.de>
From-SVN: r128395
2007-09-11 22:32:51 +00:00
Benjamin Kosnik
9adfc73cd3
functional_hash.h: Add ext/numeric_traits.h.
...
2007-09-08 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/functional_hash.h: Add ext/numeric_traits.h.
* include/tr1/functional_hash.h Same.
* include/tr1/functional: Remove string, ext/type_traits.h includes.
* include/tr1_impl/functional_hash.h: Move string, wstring
definitions for std::<hash>::operator into separate file.
* include/std/functional
* src/hash.cc: New, move definitions here.
* src/hash_c++0x.cc: Same.
* src/Makefile.am: Add new source files.
* configure: Regenerate.
* Makefile.in: Same.
* src/Makefile.in: Same.
* po/Makefile.in: Same.
* libmath/Makefile.in: Same.
* libsupc++/Makefile.in: Same.
* testsuite/Makefile.in: Same.
* config/abi/pre/gnu.ver: Add symbols.
* config/abi/pre/gnu-versioned-namespace.ver: Same, fix.
From-SVN: r128278
2007-09-09 00:05:13 +00:00
Benjamin Kosnik
949d9ae181
throw_allocator.h: Fixes for -fno-exceptions.
...
2007-06-26 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/throw_allocator.h: Fixes for -fno-exceptions.
* testsuite/util/testsuite_shared.cc: Same.
* testsuite/util/io/illegal_input_error.hpp: Same.
* testsuite/util/io/verified_cmd_line_input.cc: Same.
* libsupc++/typeinfo (type_info): Correct comment formatting,
clarify member access and public interface.
* libsupc++/exception: Less compressed comments.
* libsupc++/new: Same.
From-SVN: r126016
2007-06-26 11:01:15 +00:00
Richard Earnshaw
ddb4f387ee
eh_arm.cc (__cxa_type_match): Handle foreign exceptions.
...
* libsupc++/eh_arm.cc (__cxa_type_match): Handle foreign
exceptions.
* libsubpc++/eh_personality.cc: Don't try to set up foreign or
forced unwind types here when using the ARM EABI unwinder.
From-SVN: r125683
2007-06-13 19:31:58 +00:00
Steve Ellcey
1cf3d07da6
ltmain.sh: Update from ToT Libtool.
...
* ltmain.sh: Update from ToT Libtool.
* libtool.m4: Update from ToT Libtool.
* ltsugar.m4: New. Update from ToT Libtool.
* ltversion.m4: New. Update from ToT Libtool.
* ltoptions.m4: New. Update from ToT Libtool.
* ltconfig: Remove.
* ltcf-c.sh: Remove.
* ltcf-cxx.sh: Remove.
* ltcf-gcj.sh: Remove.
* Regenerate all subdirs
From-SVN: r125032
2007-05-24 16:37:27 +00:00
Mark Mitchell
357480cec5
cxxabi.h (_GLIBCXX_NOTHROW): New macro.
...
* libstdc++-v3/libsupc++/cxxabi.h (_GLIBCXX_NOTHROW): New macro.
(__cxa_atexit): Use it.
* testsuite/lib/libstdc++.exp (v3_target_compile_as_c): For
installed-tree testing, search more include directories.
From-SVN: r124565
2007-05-09 05:21:36 +00:00
Jason Merrill
fba10f59ff
cxxabi-internal.h: Remove, to be replaced by...
...
* libsupc++/cxxabi-internal.h: Remove, to be replaced by...
* libsupc++/cxxabi-forced.h: ...this new file.
* include/ext/vstring.tcc: Include cxxabi-forced.h instead.
* include/bits/istream.tcc: Likewise.
* include/bits/ostream.tcc: Likewise.
* include/bits/basic_string.tcc: Likewise.
* include/bits/ostream_insert.h: Likewise.
* include/bits/fstream.tcc: Likewise.
* include/std/bitset: Likewise.
* libsupc++/cxxabi.h: Restore previous contents.
* Makefile.am (headers): Add cxxabi-forced.h.
* Makefile.in: Regenerate.
From-SVN: r124539
2007-05-08 02:50:32 -04:00
Benjamin Kosnik
9b4fc32c63
testsuite_abi.cc: Add CXXABI_1.3.2.
...
2007-05-08 Benjamin Kosnik <bkoz@redhat.com>
* testsuite/util/testsuite_abi.cc: Add CXXABI_1.3.2.
* libsupc++/cxxabi-internal.h (__foreign_exception::__pure): To
__pure_virtual.
From-SVN: r124537
2007-05-08 06:04:52 +00:00
Jason Merrill
d05f74f16e
re PR other/28145 (C++ (throw() and catch(...) {/* fall through */ } ) and pthread cancellation are incompatible (at least with NPTL))
...
PR c++/28145
* libsupc++/cxxabi.h (__forced_unwind, __foreign_exception):
New classes.
* libsupc++/eh_exception.cc: Define their destructors.
* config/abi/pre/gnu.ver: Export their type_infos.
* config/abi/pre/gnu-versioned-namespace.ver: Likewise.
* libsupc++/eh_personality.cc: A handler for abi::__forced_unwind
matches a forced unwind, and a handler for abi::__foreign_exception
matches a foreign exception.
* include/bits/istream.tcc: Rethrow forced unwind.
* include/bits/ostream.tcc: Likewise.
* include/bits/ostream_insert.h: Likewise.
* include/bits/basic_string.tcc (operator>>, getline): Likewise.
* include/bits/fstream.tcc (basic_filebuf::close): Likewise.
* include/ext/vstring.cc (operator>>, getline): Likewise.
* src/istream.cc: Likewise.
* src/compatibility.cc (basic_istream::ignore): Likewise.
* include/std/bitset (operator>>): Likewise.
* include/std/fstream (basic_filebuf::close): Remove throw() spec.
* libsupc++/cxxabi-internal.h: Split out from...
* libsupc++/cxxabi.h: ...here.
From-SVN: r124517
2007-05-07 17:27:54 -04:00
Mark Mitchell
88e6c94714
cxxabi.h (__cxa_atexit): Conditionalize exception specification on #ifdef __cplusplus.
...
* libsupc++/cxxabi.h (__cxa_atexit): Conditionalize exception
specification on #ifdef __cplusplus.
From-SVN: r124456
2007-05-05 00:39:45 +00:00
Mark Mitchell
aa2bd2db03
atexit_arm.cc: New file.
...
* libsupc++/atexit_arm.cc: New file.
* libsupc++/vec.cc (__aeabi_atexit): Remove.
* libsupc++/cxxabi.h (__cxa_atexit): Add exception specification.
* libsupc++/Makefile.am: Add atexit_arm.cc.
* libsupc++/Makefile.in: Regenerated.
From-SVN: r124436
2007-05-04 17:42:49 +00:00
Benjamin Kosnik
113008b54b
cc_hash_max_collision_check_resize_trigger_imp.hpp: Qualify namespace std members.
...
2007-04-10 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/pb_ds/detail/resize_policy/
cc_hash_max_collision_check_resize_trigger_imp.hpp: Qualify
namespace std members.
* include/ext/pb_ds/detail/list_update_policy/
counter_lu_metadata.hpp: Same.
* include/ext/throw_allocator.h: Same.
* include/ext/pod_char_traits.h: Same.
* include/ext/malloc_allocator.h: Same.
* libsupc++/del_op.cc: Same, simplify.
* include/bits/c++config: Adjust macro name.
* include/c_global/cstring: Alphabetize.
* include/c_global/cwctype: Same.
From-SVN: r123710
2007-04-11 01:11:56 +00:00
Mark Mitchell
bd994a48f6
array_type_info.cc: Likewise.
...
* libsupc++/array_type_info.cc: Likewise.
* libsupc++/bad_cast.cc: Likewise.
* libsupc++/bad_typeid.cc: Likewise.
* libsupc++/class_type_info.cc: Likewise.
* libsupc++/dyncast.cc: Likewise.
* libsupc++/enum_type_info.cc: Likewise.
* libsupc++/function_type_info.cc: Likewise.
* libsupc++/fundamental_type_info.cc: Likewise.
* libsupc++/pbase_type_info.cc: Likewise.
* libsupc++/pmem_type_info.cc: Likewise.
* libsupc++/pointer_type_info.cc: Likewise.
* libsupc++/si_class_type_info.cc: Likewise.
* libsupc++/vmi_class_type_info.cc: Likewise.
* libsupc++/tinfo.h: Move inline type_info functions here.
* libsupc++/tinfo.cc: Separate type_info classes into their own
files.
* libsupc++/tinfo2.cc: Likewise.
* Makefile.am (sources): Mention new files.
* Makefile.in: Regenerated.
From-SVN: r123042
2007-03-18 22:35:39 +00:00
Benjamin Kosnik
af13a7a6ec
acinclude.m4 (GLIBCXX_ENABLE_CHEADERS): Add c_global.
...
2007-03-04 Benjamin Kosnik <bkoz@redhat.com>
* acinclude.m4 (GLIBCXX_ENABLE_CHEADERS): Add c_global.
* configure.host (c_model): Set default to c_global.
* configure: Regenerate.
* include/Makefile.am (c_compatibility_headers_extra): Make
conditional on GLIBCXX_C_HEADERS_COMPATIBILITY.
(c_base_headers_extra): Make conditional on GLIBCXX_C_HEADERS_EXTRA.
(c_compatibility_headers): Make conditional on c/c_std/c_global.
* include/Makefile.in: Regenerate.
* docs/html/configopts.html: Add c_global information to
--enable-cheaders. Eventually, "c_std" should mean "C" includes
that are in namespace std, with optional C++ "C" compatibility
includes to inject into global scope. And "c_global" should mean
"C" includes that are in the global namespace, with C++ includes
injecting into namespace std and no C++ "C" compatibility
includes.
2007-03-04 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/c++config: Add _GLIBCXX_NAMEPACE_C.
Add _GLIBCXX_NAMESPACE_ASSOCIATION_CXX200x.
Add _GLIBCXX_TR1 as namespace macro.
Add namespace associations for std::__cxx200x conditionally.
* include/c_compatibility/assert.h: Correct doxygen markup,
conditionalize the global injections on _GLIBCXX_NAMESPACE_C.
* include/c_compatibility/ctype.h: Same.
* include/c_compatibility/errno.h: Same.
* include/c_compatibility/float.h: Same.
* include/c_compatibility/iso646.h: Same.
* include/c_compatibility/limits.h: Same.
* include/c_compatibility/locale.h: Same.
* include/c_compatibility/math.h: Same.
* include/c_compatibility/setjmp.h: Same.
* include/c_compatibility/signal.h: Same.
* include/c_compatibility/stdarg.h: Same.
* include/c_compatibility/stddef.h: Same.
* include/c_compatibility/stdio.h: Same.
* include/c_compatibility/stdlib.h: Same.
* include/c_compatibility/string.h: Same.
* include/c_compatibility/time.h: Same.
* include/c_compatibility/wchar.h: Same.
* include/c_compatibility/wctype.h: Same.
* include/c_compatibility/complex.h: Add.
* include/c_compatibility/fenv.h: Same.
* include/c_compatibility/inttypes.h: Same.
* include/c_compatibility/stdbool.h: Same.
* include/c_compatibility/stdint.h: Same.
* include/c_compatibility/tgmath.h: Same.
* include/c_global/cassert: Add, use include_next, use C++0x features
if -std=c++0x.
* include/c_global/cctype: Same.
* include/c_global/cerrno: Same.
* include/c_global/cfloat: Same.
* include/c_global/ciso646: Same.
* include/c_global/climits: Same.
* include/c_global/clocale: Same.
* include/c_global/cmath: Same.
* include/c_global/cmath.tcc: Same.
* include/c_global/csetjmp: Same.
* include/c_global/csignal: Same.
* include/c_global/cstdarg: Same.
* include/c_global/cstddef: Same.
* include/c_global/cstdio: Same.
* include/c_global/cstdlib: Same.
* include/c_global/cstring: Same.
* include/c_global/ctime: Same.
* include/c_global/cwchar: Same.
* include/c_global/cwctype: Same.
* include/c_global/ccomplex: Add.
* include/c_global/cfenv: Add.
* include/c_global/cinttypes: Add.
* include/c_global/cstdbool: Add.
* include/c_global/cstdint: Add.
* include/c_global/ctgmath: Add.
* include/std/algorithm: Use C++0x features if -std=c++0x.
* include/std/bitset: Same.
* include/std/complex: Same.
* include/std/deque: Same.
* include/std/fstream: Same.
* include/std/functional: Same.
* include/std/iomanip: Same.
* include/std/ios: Same.
* include/std/iosfwd: Same.
* include/std/iostream: Same.
* include/std/istream: Same.
* include/std/iterator: Same.
* include/std/limits: Same.
* include/std/list: Same.
* include/std/locale: Same.
* include/std/map: Same.
* include/std/memory: Same.
* include/std/numeric: Same.
* include/std/ostream: Same.
* include/std/queue: Same.
* include/std/set: Same.
* include/std/sstream: Same.
* include/std/stack: Same.
* include/std/stdexcept: Same.
* include/std/streambuf: Same.
* include/std/string: Same.
* include/std/utility: Same.
* include/std/valarray: Same.
* include/std/vector: Same.
* include/std/array: Add.
* include/std/random: Add.
* include/std/regex: Add.
* include/std/tuple: Add.
* include/std/type_traits: Add.
* include/std/unordered_map: Add.
* include/std/unordered_set: Add.
* include/std/c++0x_warning.h: Add.
* include/tr1/array: Switch namespaces based on _GLIBCXX_TR1.
* include/tr1/boost_shared_ptr.h: Same.
* include/tr1/cctype: Same.
* include/tr1/cfenv: Same.
* include/tr1/cinttypes: Same.
* include/tr1/cmath: Same.
* include/tr1/common.h: Same.
* include/tr1/complex: Same.
* include/tr1/cstdint: Same.
* include/tr1/cstdio: Same.
* include/tr1/cstdlib: Same.
* include/tr1/cwchar: Same.
* include/tr1/cwctype: Same.
* include/tr1/functional: Same.
* include/tr1/functional_hash.h: Same.
* include/tr1/functional_iterate.h: Same.
* include/tr1/hashtable: Same.
* include/tr1/hashtable_policy.h: Same.
* include/tr1/math.h: Same.
* include/tr1/memory: Same.
* include/tr1/random: Same.
* include/tr1/random.tcc: Same.
* include/tr1/ref_fwd.h: Same.
* include/tr1/repeat.h: Same.
* include/tr1/stdlib.h: Same.
* include/tr1/tuple: Same.
* include/tr1/tuple_iterate.h: Same.
* include/tr1/type_traits: Same.
* include/tr1/type_traits_fwd.h: Same.
* include/tr1/unordered_map: Same.
* include/tr1/unordered_set: Same.
* include/tr1/utility: Same.
* include/tr1/ccomplex: Add.
* include/tr1/complex.h: Add.
* include/tr1/regex: Add.
* include/Makefile.am: Add C++0x headers, "C" compatibility headers.
* include/Makefile.in: Regenerate.
* testsuite/tr1/headers.cc: Add in regex/complex.
* testsuite/17_intro/headers/c++200x/all.cc: New.
* testsuite/17_intro/headers/c++200x/all_multiple_inclusion.cc: Same.
* testsuite/17_intro/using_namespace_std_tr1_neg.cc: Same.
* testsuite/18_support/headers/cstdbool/std_c++0x_neg.cc: Same.
* testsuite/18_support/headers/cstdint/std_c++0x_neg.cc: Same.
* testsuite/18_support/headers/cstdint/types_std_c++0x.cc: Same.
* testsuite/20_util/enable_shared_from_this/requirements/
explicit_instantiation.cc: Same.
* testsuite/20_util/headers/functional/types_std_c++0x.cc: Same.
* testsuite/20_util/headers/functional/
using_namespace_std_placeholders.cc: Same.
* testsuite/20_util/headers/memory/types_std_c++0x.cc: Same.
* testsuite/20_util/headers/type_traits/std_c++0x_neg.cc: Same.
* testsuite/20_util/headers/type_traits/types_std_c++0x.cc: Same.
* testsuite/20_util/shared_ptr/requirements/
explicit_instantiation.cc: Same.
* testsuite/20_util/weak_ptr/requirements/
explicit_instantiation.cc: Same.
* testsuite/23_containers/array/requirements/
explicit_instantiation.cc: Same.
* testsuite/23_containers/hash/requirements/
explicit_instantiation.cc: Same.
* testsuite/23_containers/headers/array/std_c++0x_neg.cc: Same.
* testsuite/23_containers/headers/tuple/std_c++0x_neg.cc: Same.
* testsuite/23_containers/headers/tuple/types_std_c++0x.cc: Same.
* testsuite/23_containers/headers/unordered_map/std_c++0x_neg.cc: Same.
* testsuite/23_containers/headers/unordered_set/std_c++0x_neg.cc: Same.
* testsuite/23_containers/tuple/requirements/
explicit_instantiation.cc: Same.
* testsuite/23_containers/unordered_map/requirements/
explicit_instantiation.cc: Same.
* testsuite/23_containers/unordered_multimap/requirements/
explicit_instantiation.cc: Same.
* testsuite/23_containers/unordered_multiset/requirements/
explicit_instantiation.cc: Same.
* testsuite/23_containers/unordered_set/requirements/
explicit_instantiation.cc: Same.
* testsuite/26_numerics/headers/ccomplex/std_c++0x_neg.cc: Same.
* testsuite/26_numerics/headers/cfenv/std_c++0x_neg.cc: Same.
* testsuite/26_numerics/headers/cfenv/types_std_c++0x.cc: Same.
* testsuite/26_numerics/headers/cmath/types_std_c++0x.cc: Same.
* testsuite/26_numerics/headers/cstdlib/types_std_c++0x.cc: Same.
* testsuite/26_numerics/headers/ctgmath/std_c++0x_neg.cc: Same.
* testsuite/26_numerics/headers/random/std_c++0x_neg.cc: Same.
* testsuite/26_numerics/headers/random/types_std_c++0x.cc: Same.
* testsuite/27_io/headers/cinttypes/std_c++0x_neg.cc: Same.
* testsuite/27_io/headers/cinttypes/types_std_c++0x.cc: Same.
* testsuite/28_regex/headers/regex/std_c++0x_neg.cc: Same.
* testsuite/tr1/8_c_compatibility/cfenv/types.cc: Rename ...
* testsuite/tr1/8_c_compatibility/cinttypes/types.cc: Same.
* testsuite/tr1/8_c_compatibility/cmath/types.cc: Same.
* testsuite/tr1/8_c_compatibility/cstdint/types.cc: Same.
* testsuite/tr1/8_c_compatibility/cstdlib/types.cc: Same.
* testsuite/tr1/8_c_compatibility/cfenv/types_std_tr1.cc: ...to this.
* testsuite/tr1/8_c_compatibility/cinttypes/types_std_tr1.cc: Same.
* testsuite/tr1/8_c_compatibility/cmath/types_std_tr1.cc: Same.
* testsuite/tr1/8_c_compatibility/cstdint/types_std_tr1.cc: Same.
* testsuite/tr1/8_c_compatibility/cstdlib/types_std_tr1.cc: Same.
From-SVN: r122533
2007-03-04 22:59:49 +00:00
Paolo Carlini
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
Ben Elliston
20fdc40c5a
eh_alloc.cc (__cxa_free_exception): Don't refer to the emergency_buffer using &array[0][0]' notation, use
array'.
...
* libsupc++/eh_alloc.cc (__cxa_free_exception): Don't refer to the
emergency_buffer using `&array[0][0]' notation, use `array'.
From-SVN: r121456
2007-02-01 15:04:34 +11:00
Benjamin Kosnik
4ffe6e87dc
enc_filebuf.h: Resurrect, update.
...
2007-01-29 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/enc_filebuf.h: Resurrect, update.
* include/ext/codecvt_specializations.h: Remove
_GLIBCXX_USE_ICONV, _GLIBCXX_USE_ENCODING_STATE.
* include/bits/localefwd.h: Remove declaration for __enc_traits.
* docs/html/22_locale/codecvt.html: Change __enc_traits to
encoding_state.
* scripts/testsuite_flags.in: Remove ICONV.
* configure.ac: Remove GLIBCXX_CHECK_ICONV_SUPPORT.
* acinclude.m4 (GLIBCXX_CHECK_ICONV_SUPPORT): Remove.
* crossconfig.m4: Remove use of GLIBCXX_CHECK_ICONV_SUPPORT.
* config.h.in: Remove HAVE_ICONV_CLOSE, HAVE_ICONV_OPEN,
HAVE_NL_LANGINFO, _GLIBCXX_USE_ICONV.
* include/Makefile.am: Uglify ICONV_CONST.
* configure: Regenerate.
* aclocal.m4: Regenerate.
* Makefile.in: Regenerate.
* src/Makefile.in: Regenerate.
* po/Makefile.in: Regenerate.
* libmath/Makefile.in: Regenerate.
* include/Makefile.in: Regenerate.
* libsupc++/Makefile.in: Regenerate.
* testsuite/Makefile.in: Regenerate.
* testsuite/ext/enc_filebuf/wchar_t/13189.cc: Use
dg-require-iconv, fix up for encoding_state changes.
* testsuite/ext/enc_filebuf/char/13189.cc: Same.
* testsuite/ext/enc_filebuf/char/13598.cc: Same.
* testsuite/22_locale/codecvt/unicode: Move...
* testsuite/22_locale/codecvt/unicode/char.cc: Move...
* testsuite/22_locale/codecvt/unicode/1.cc: Move...
* testsuite/22_locale/codecvt/unicode/wchar_t.cc: Move...
* testsuite/ext/codecvt: New.
* testsuite/ext/codecvt/char-1.cc: ...here. Also, use dg-require-iconv.
* testsuite/ext/codecvt/char-2.cc: ...here. Same.
* testsuite/ext/codecvt/1.cc: ...here. Same.
* testsuite/ext/codecvt/wchar_t.cc: ...here. Same.
* testsuite/22_locale/locale/cons/unicode: Delete directory.
* testsuite/22_locale/locale/cons/unicode/1.cc: Move...
* testsuite/22_locale/locale/cons/unicode.cc: ...here.
From-SVN: r121297
2007-01-29 18:22:37 +00:00
Andrew Pinski
ca32e64edd
eh_personality.cc (PERSONALITY_FUNCTION): Replace _Unwind_Word with _uleb128_t in the SJLJ context.
...
2007-01-24 Andrew Pinski <andrew_pinski@playstation.sony.com>
* libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Replace
_Unwind_Word with _uleb128_t in the SJLJ context.
From-SVN: r121145
2007-01-24 14:45:20 -08:00
Andreas Krebbel
f767122b2e
unwind-dw2-fde.c (get_cie_encoding): Replaced _Unwind_Word with _uleb128_t and _Unwind_SWord with _sleb128_t.
...
2007-01-24 Andreas Krebbel <krebbel1@de.ibm.com>
* unwind-dw2-fde.c (get_cie_encoding): Replaced _Unwind_Word with
_uleb128_t and _Unwind_SWord with _sleb128_t.
* unwind-dw2.c (extract_cie_info, execute_stack_op, execute_cfa_program,
uw_frame_state_for, uw_update_context_1): Likewise.
* unwind-c.c (parse_lsda_header, PERSONALITY_FUNCTION): Likewise.
* unwind-pe.h (read_uleb128, read_sleb128,
read_encoded_value_with_base): Likewise.
* unwind-generic.h: Define _sleb128_t and _uleb128_t types.
2007-01-24 Andreas Krebbel <krebbel1@de.ibm.com>
* libsupc++/eh_personality.cc (parse_lsda_header, check_exception_spec,
get_ttype_entry, empty_exception_spec, PERSONALITY_FUNCTION): Replaced
_Unwind_Word with _uleb128_t and _Unwind_SWord with _sleb128_t.
2007-01-24 Andreas Krebbel <krebbel1@de.ibm.com>
* exception.cc (parse_lsda_header, PERSONALITY_FUNCTION): Replaced
_Unwind_Word with _uleb128_t and _Unwind_SWord with _sleb128_t.
From-SVN: r121116
2007-01-24 14:46:47 +00:00
Ian Lance Taylor
2a67bec24f
re PR c++/19564 (-Wparentheses does not work with the C++ front-end)
...
PR c++/19564
PR c++/19756
gcc/:
* c-typeck.c (parser_build_binary_op): Move parentheses warnings
to warn_about_parentheses in c-common.c.
* c-common.c (warn_about_parentheses): New function.
* c-common.h (warn_about_parentheses): Declare.
* doc/invoke.texi (Warning Options): Update -Wparentheses
description.
gcc/cp/:
* parser.c (cp_parser_expression_stack_entry): Add field
lhs_type.
(cp_parser_binary_expression): Track tree code of left hand side
of expression. Use it when calling build_x_binary_op.
(cp_parser_selection_statement): Add if_p parameter. Change all
callers. Warn about ambiguous else.
(cp_parser_statement): Add if_p parameter. Change all callers.
(cp_parser_implicitly_scoped_statement): Likewise.
* typeck.c (build_x_binary_op): Add parameters arg1_code and
arg2_code. Change all callers. Call warn_about_parentheses.
* cp-tree.h (build_x_binary_op): Update declaration.
gcc/testsuite/:
* g++.dg/warn/Wparentheses-5.C: New test.
* g++.dg/warn/Wparentheses-6.C: New test.
* g++.dg/warn/Wparentheses-7.C: New test.
* g++.dg/warn/Wparentheses-8.C: New test.
* g++.dg/warn/Wparentheses-9.C: New test.
* g++.dg/warn/Wparentheses-10.C: New test.
* g++.dg/warn/Wparentheses-11.C: New test.
* g++.dg/warn/Wparentheses-12.C: New test.
* g++.dg/warn/Wparentheses-13.C: New test.
* g++.dg/warn/Wparentheses-14.C: New test.
* g++.dg/warn/Wparentheses-15.C: New test.
* g++.dg/warn/Wparentheses-16.C: New test.
* g++.dg/warn/Wparentheses-17.C: New test.
* g++.dg/warn/Wparentheses-18.C: New test.
* g++.dg/warn/Wparentheses-19.C: New test.
* g++.dg/warn/Wparentheses-20.C: New test.
* g++.dg/warn/Wparentheses-21.C: New test.
libstdc++-v3/:
* include/bits/locale_facets.tcc (num_get<>::_M_extract_float):
Add parentheses around && within || to avoid warning.
(num_get<>::_M_extract_int): Likewise.
(money_get<>::_M_extract): Likewise.
(num_get<>::do_get(iter_type, iter_type, ios_base&,
ios_base::iostate&, void*&)): Add parentheses around & within | to
avoid warning.
(num_put<>::do_put(iter_type, ios_base&, char_type, const void*)):
Likewise.
* include/bits/streambuf_iterator.h (istreambuf_iterator::equal):
Add parentheses around && within || to avoid warning.
* libsupc++/tinfo.cc (__do_dyncast): Likewise.
* src/locale.cc (locale::_S_normalize_category): Likewise.
* include/bits/stl_tree.h (_Rb_tree<>::_M_insert_unique): Add
braces to avoid ambiguous else warning.
* src/strstream.cc (strstreambuf::_M_free): Likewise.
* src/tree.cc (_Rb_tree_rebalance_for_erase): Likewise.
From-SVN: r119855
2006-12-14 05:49:06 +00:00
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
Joseph Myers
46fb6400ee
eh_globals.cc (__cxxabiv1::__cxa_get_globals): Initialize propagatingExceptions if __ARM_EABI_UNWINDER__.
...
* libsupc++/eh_globals.cc (__cxxabiv1::__cxa_get_globals):
Initialize propagatingExceptions if __ARM_EABI_UNWINDER__.
* libsupc++/eh_personality.cc (empty_exception_spec): Define
separately in __ARM_EABI_UNWINDER__ case.
From-SVN: r118757
2006-11-13 13:28:28 +00:00
Joseph Myers
b54c93b7b8
bpapi.h (TARGET_BPABI_CPP_BUILTINS): Define __GXX_TYPEINFO_EQUALITY_INLINE but not __GXX_MERGED_TYPEINFO_NAMES.
...
gcc:
* config/arm/bpapi.h (TARGET_BPABI_CPP_BUILTINS): Define
__GXX_TYPEINFO_EQUALITY_INLINE but not
__GXX_MERGED_TYPEINFO_NAMES.
* config/arm/symbian.h (TARGET_OS_CPP_BUILTINS): Define
__GXX_MERGED_TYPEINFO_NAMES.
* config/i386/cygming.h (TARGET_OS_CPP_BUILTINS): Define
__GXX_TYPEINFO_EQUALITY_INLINE.
libstdc++-v3:
* libsupc++/typeinfo (__GXX_TYPEINFO_EQUALITY_INLINE): Define.
Use instead of __GXX_MERGED_TYPEINFO_NAMES to condition inline
definitions.
* libsupc++/tinfo.cc (operator==): Condition on
__GXX_TYPEINFO_EQUALITY_INLINE; check __GXX_MERGED_TYPEINFO_NAMES
to determine algorithm.
* libsupc++/tinfo2.cc (type_info::before): Likewise.
From-SVN: r118755
2006-11-13 13:10:17 +00:00
Douglas Gregor
499c96f56b
Makefile.am (tr1_headers): Add new tuple_defs.h.
...
2006-10-16 Douglas Gregor <doug.gregor@gmail.com>
* include/Makefile.am (tr1_headers): Add new tuple_defs.h.
* include/Makefile.in (tr1_headers): Regenerate.
* include/tr1/tuple (tuple): Move declaration to tuple_defs.h.
(get): Ditto.
(operator==): Ditto.
(operator<): Ditto.
(operator!=): Ditto.
(operator>): Ditto.
(operator<=): Ditto.
(operator>=): Ditto.
(__stripped_tuple_type): Ditto.
Include tuple.defs.h
* include/tr1/tuple_iterate.h (tuple): Use
_GLIBCXX_TUPLE_ALL_TEMPLATE_PARAMS_UNNAMED macro instead of 10
"typename"s.
(tuple_element): Use _GLIBCXX_TUPLE_ALL_TEMPLATE_PARAMS and
_GLIBCXX_TYPLE_ALL_TEMPLATE_ARGS instead of 10
parameters/arguments.
* include/tr1/tuple_defs.h: New header, contains declarations and
definitions for the tuple template with all arguments.
* include/tr1/repeat.h (_GLIBCXX_TUPLE_ALL_TEMPLATE_PARAMS): New.
(_GLIBCXX_TUPLE_ALL_TEMPLATE_PARAMS_UNNAMED): New.
(_GLIBCXX_TUPLE_ALL_TEMPLATE_ARGS): New.
(_GLIBCXX_TEMPLATE_PARAMS_NULL_CLASS): New.
(_GLIBCXX_TEMPLATE_ARGS_STRIPPED): New.
* scripts/gen_includers.pl: Update.
* scripts/gen_includers2.pl: New.
From-SVN: r117790
2006-10-16 19:08:22 +00:00
Benjamin Kosnik
e64690af46
re PR libstdc++/29426 (static __recursive_mutex init vs __GTHREAD_RECURSIVE_MUTEX_INIT_FUNCTION)
...
2006-10-11 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/29426
* libsupc++/guard.cc (get_static_mutex): New.
(mutex_wrapper::mutex_wrapper): Use it to get properly initialized
recursive mutex without ordering issues.
* src/locale_init.cc (__get_locale_mutex): No need to
uglify. Change to get_locale_mutex.
From-SVN: r117643
2006-10-11 20:18:36 +00:00
Benjamin Kosnik
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
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
Steve Ellcey
2e5757965d
re PR target/26792 (need to use autoconf when using newly-added libgcc functions)
...
PR target/26792
* configure.ac: Use GCC_CHECK_UNWIND_GETIPINFO to
define HAVE_GETIPINFO.
* aclocal.m4: Add include of ../config/unwind_ipinfo.m4.
* config.h.in: Regenerate.
* configure: Regenerate.
* Makefile.in: Regenerate.
* libmath/Makefile.in: Regenerate.
* include/Makefile.in: Regenerate.
* src/Makefile.in: Regenerate.
* libsupc++/Makefile.in: Regenerate.
* testsuite/Makefile.in: Regenerate.
* po/Makefile.in: Regenerate.
* libsupc++/eh_personality.cc: Check HAVE_GETIPINFO.
From-SVN: r115654
2006-07-21 21:11:46 +00:00
Jason Merrill
f325272c07
eh_personality.cc: Wrap extern C function definitions in namespace __cxxabiv1.
...
* libsupc++/eh_personality.cc: Wrap extern C function
definitions in namespace __cxxabiv1.
From-SVN: r115652
2006-07-21 17:06:19 -04:00
Benjamin Kosnik
98e615b485
PR libstdc++/19664 round 1
...
2006-07-20 Benjamin Kosnik <bkoz@redhat.com>
Jakub Jelinek <jakub@redhat.com>
PR libstdc++/19664 round 1
* acinclude.m4 (GLIBCXX_ENABLE_VISIBILITY): Check it.
* configure.ac: Use it.
* configure: Regenerate.
* docs/html/configopts.html: Document it.
* include/Makefile.am: Slip in to c++config.
* include/Makefile.in: Regenerate.
* include/bits/c++config (_GLIBCXX_VISIBILITY): New.
(_GLIBCXX_BEGIN_NAMESPACE): Use it.
(_GLIBCXX_END_NAMESPACE): Use it.
(_GLIBCXX_BEGIN_NESTED_NAMESPACE): Use it.
(_GLIBCXX_END_NESTED_NAMESPACE): Use it.
* src/debug.cc: Mark __gnu_internal namespace with hidden
visibility attribute.
* src/ext-inst.cc: Same.
* src/globals_io.cc: Same.
* src/globals_locale.cc: Same.
* src/ios_init.cc: Same.
* src/locale.cc: Same.
* src/mt_allocator.cc: Same.
* src/pool_allocator.cc: Same.
Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r115632
2006-07-20 23:37:27 +00:00
Mike Stump
ff642329cf
* libsupc++/eh_globals.cc (~__eh_globals_init): Unset _M_init.
...
From-SVN: r115318
2006-07-10 21:50:34 +00:00
Vladimir Prus
c82f61c591
eh_arm.cc (__cxa_begin_cleanup): Always return 'true'.
...
2006-06-20 Vladimir Prus <vladimir@codesourcery.com>
libstdc++/
* libsupc++/eh_arm.cc (__cxa_begin_cleanup): Always return 'true'.
From-SVN: r114812
2006-06-20 14:08:31 +00:00
Danny Smith
e94ee02798
cxxabi.h (class __vmi_class_type_info): Correct typo in comment.
...
* libsupc++/cxxabi.h (class __vmi_class_type_info): Correct typo in comment.
* docs/doxygen/doxygroups.cc (__cxa_demangle): Correct typo in comment.
From-SVN: r113884
2006-05-18 08:12:40 +00:00
Marc Glisse
05a79eb6bc
pool_allocator.h: Add missing std:: qualifications.
...
2006-05-10 Marc Glisse <marc.glisse@normalesup.org>
* include/ext/pool_allocator.h: Add missing std:: qualifications.
* include/ext/mt_allocator.h: Likewise.
* include/ext/pb_assoc/detail/resize_policy/
hash_load_check_resize_trigger_imp.hpp: Likewise.
* include/ext/pb_assoc/detail/resize_policy/
hash_standard_resize_policy_imp.hpp: Likewise.
* include/ext/pb_assoc/detail/lu_policy/
counter_lu_metadata_imp.hpp: Likewise.
* include/ext/pb_assoc/detail/map_debug_base.hpp: Likewise.
* libsupc++/eh_alloc.cc: Typo: memcpy -> memset.
From-SVN: r113673
2006-05-10 15:43:20 +00:00
Jakub Jelinek
754e45a867
re PR other/26208 (Serious problem with unwinding through signal frames)
...
PR other/26208
* unwind-dw2.c (struct _Unwind_Context): Add signal_frame field.
(extract_cie_info): Handle S flag in augmentation string.
(execute_cfa_program): If context->signal_frame, execute also
fs->pc == context->ra instructions.
(uw_frame_state_for): If context->signal_frame, don't subtract one
from context->ra to find FDE.
(uw_update_context_1): Set context->signal_frame to
fs->signal_frame.
(_Unwind_GetIPInfo): New function.
* unwind-dw2.h (_Unwind_FrameState): Add signal_frame field.
* unwind-c.c (PERSONALITY_FUNCTION): Use _Unwind_GetIPInfo instead
of _Unwind_GetIP.
* unwind-sjlj.c (_Unwind_GetIPInfo): New function.
* unwind-generic.h (_Unwind_GetIPInfo): New prototype.
* unwind-compat.c (_Unwind_GetIPInfo): New function.
* libgcc-std.ver (_Unwind_GetIPInfo): Export @@GCC_4.2.0.
* config/ia64/unwind-ia64.c (_Unwind_GetIPInfo): New function.
* config/arm/unwind-arm.h (_Unwind_GetIPInfo): Define.
* config/i386/linux-unwind.h (x86_fallback_frame_state,
x86_64_fallback_frame_state): Set fs->signal_frame.
* config/rs6000/linux-unwind.h (ppc_fallback_frame_state): Likewise.
(MD_FROB_UPDATE_CONTEXT): Define unconditionally.
(frob_update_context): Likewise. Workaround missing S flag in
Linux 2.6.12 - 2.6.16 kernel vDSOs.
* config/s390/linux-unwind.h (s390_fallback_frame_state): Likewise.
Remove the psw_addr + 1 hack.
libjava/
* exception.cc (PERSONALITY_FUNCTION): Use _Unwind_GetIPInfo instead
of _Unwind_GetIP.
* include/i386-signal.h (MAKE_THROW_FRAME): Change into empty macro.
(HANDLE_DIVIDE_OVERFLOW): Don't adjust _res->eip if falling through
to throw.
* include/x86_64-signal.h (MAKE_THROW_FRAME): Change into empty
macro.
* include/powerpc-signal.h (MAKE_THROW_FRAME): Change into empty
macro.
libstdc++-v3/
* libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Use
_Unwind_GetIPInfo instead of _Unwind_GetIP.
From-SVN: r111488
2006-02-27 18:26:26 +01: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
Benjamin Kosnik
a1c88e064f
configopts.html: Tweak docs.
...
2006-01-25 Benjamin Kosnik <bkoz@redhat.com>
* docs/html/configopts.html: Tweak docs.
* libsupc++/eh_personality.cc: Fix typos.
From-SVN: r110218
2006-01-25 18:22:34 +00:00
Paul Brook
ddfd0d910b
eh_personality.cc (PERSONALITY_FUNCTION): Use std::abort.
...
2006-01-18 Paul Brook <paul@codesourcery.com>
* libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Use std::abort.
From-SVN: r109896
2006-01-18 16:31:00 +00:00
Paolo Carlini
656032b8c1
[multiple changes]
...
2006-01-18 Perry Smith <pedz@easesoftware.net>
PR libstdc++/25823
PR libstdc++/25824
* libsupc++/eh_alloc.cc: Fix return type of memset declaration.
* libsupc++/eh_globals.cc: If !_GLIBCXX_HOSTED declare malloc and free.
2006-01-18 Paolo Carlini <pcarlini@suse.de>
* include/ext/pb_assoc/detail/value_type_adapter/
value_type_adapter.hpp: Include <tr1/type_traits>.
* include/ext/pb_assoc/detail/value_type_adapter/
it_value_type_traits.hpp (it_value_type_traits_<>::value_type_holder):
Use tr1::aligned_storage and tr1::alignment_of.
(it_value_type_traits_<>::buf_t): Remove.
(it_value_type_traits_<>::make_valid, recast): Adjust.
From-SVN: r109883
2006-01-18 11:22:10 +00:00
Mark Mitchell
d79e6356aa
libtool-ldflags: New script.
...
* libtool-ldflags: New script.
* src/Makefile.am (LTLDFLAGS): New variable.
(CXXLINK): Use LTLDFLAGS.
* src/Makefile.in: Regenerated.
* libsupc++/Makefile.am (LTLDFLAGS): New variable.
(CXXLINK): Use LTLDFLAGS.
* libsupc++/Makefile.in: Regenerated.
From-SVN: r109256
2006-01-03 00:30:27 +00:00
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
Benjamin Kosnik
cddfb1c7ac
re PR libstdc++/23591 (exceptions in plugins in threads cause segmentation violation by leaving bad exit handler for the pthread)
...
2005-11-21 Benjamin Kosnik <bkoz@redhat.com>
Ulrich Drepper <drepper@redhat.com>
PR libstdc++/23591
* scripts/create_testsuite_files: Support for "C" test files.
* testsuite/lib/libstdc++.exp: Same.
* testsuite/libstdc++-dg/normal.exp: Same.
* testsuite/ext/mt_allocator/22309_thread.cc: Update names.
* testsuite/19_diagnostics/23591_thread-1.c: New.
* testsuite/testsuite_shared.cc: Add tests, rename existing functions.
* libsupc++/eh_globals.cc: Make global thread local if possible.
* configure.ac: Use GCC_CHECK_TLS.
* acinclude.m4: Include tls.m4.
* configure: Regenerate.
* config.h.in: Same.
Co-Authored-By: Ulrich Drepper <drepper@redhat.com>
From-SVN: r107350
2005-11-22 06:54:08 +00:00
Benjamin Kosnik
b967bf2560
del_op.cc: Include c++config.h first.
...
2005-11-21 Benjamin Kosnik <bkoz@redhat.com>
* libsupc++/del_op.cc: Include c++config.h first.
* libsupc++/eh_alloc.cc: Same.
* libsupc++/new_opv.cc: Same.
* libsupc++/eh_throw.cc: Same.
* libsupc++/new_op.cc: Same.
* libsupc++/del_opv.cc: Same.
* libsupc++/eh_catch.cc: Same.
* libsupc++/guard.cc: Same.
* libsupc++/del_opnt.cc: Same.
* libsupc++/eh_exception.cc: Same.
* libsupc++/new_opvnt.cc: Same.
* libsupc++/eh_term_handler.cc: Same.
* libsupc++/eh_personality.cc: Same.
* libsupc++/eh_call.cc: Same.
* libsupc++/new_opnt.cc: Same.
* libsupc++/del_opvnt.cc: Same.
2005-11-21 Benjamin Kosnik <bkoz@redhat.com>
* src/Makefile.am (LTCXXCOMPILE): CXXFLAGS last.
* libsupc++/Makefile.am: Same.
* src/Makefile.in: Regenerate.
* libsupc++/Makefile.in: Same.
From-SVN: r107343
2005-11-22 00:19:07 +00:00
Nathan Sidwell
1dcca6f361
unwind-arm.h: Reorder interface function declarations.
...
2005-11-16 Nathan Sidwell <nathan@codesourcery.com>
gcc/
* config/arm/unwind-arm.h: Reorder interface function declarations.
(_URC_END_OF_STACK): New enumeration value.
(_US_UNWIND_ACTION_MASK, _US_FORCE_UNWIND, _US_END_OF_STACK): Likewise.
(struct _Unwind_Control_Block): Document reserved field use.
(_Unwind_Stop_Fn): New typedef.
(_Unwind_ForcedUnwind): Declare.
(_Unwind_Resume_or_Rethrow): Declare.
* config/arm/libunwind.S (UNWIND_WRAPER): Add nargs
argument. Adjust.
(_Unwind_Resume_or_Rethrow, _Unwind_ForcedUnwind): New.
* config/arm/unwind-arm.c (UCB_FORCED_STOP_FN)
(UCB_FORCED_STOP_ARG): New.
(search_EIT_table): Update boundary condition checks.
(get_eit_entry): Return _URC_END_OF_STACK when cannot unwind.
(unwind_phase2): Replace for with do..while.
(unwind_phase2_forced): New.
(__gnu_Unwind_RaiseException): Replace for with do..while.
(__gnu_Unwind_ForcedUnwind): New.
(__gnu_Unwind_Resume): Set FORCE_UNWIND flag, if forced unwinding.
Use appropriate phase2 unwinder.
(__gnu_Unwind_Resume_or_Rethrow): New.
(__gnu_unwind_pr_common): Cope with forced unwinding.
gcc/testsuite/
* g++.dg/eh/forced1.C: Adjust to cope with ARM EABI
structures.
* g++.dg/eh/forced2.C: Likewise.
* g++.dg/eh/forced3.C: Likewise.
* g++.dg/eh/forced4.C: Likewise.
libstdc++-v3/
* libsupc++/eh_arm.cc (__cxa_begin_cleanup): Remember a
foreign exception too.
(__gnu_end_cleanup): Recover a foreign exception too.
* libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Cope
with forced unwinding.
* libsupc++/eh_throw.cc (__cxxabiv1::__cxa_rethrow): Use
_Unwind_Resume_or_Rethrow for ARM EABI.
From-SVN: r107089
2005-11-16 17:04:41 +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
Benjamin Kosnik
c35a51a54e
re PR libstdc++/22554 (pb_assoc header build and install overflows exec)
...
2005-09-12 Benjamin Kosnik <bkoz@redhat.com>
David Edelsohn <dje@gcc.gnu.org>
PR libstdc++/22554
PR libstdc++/23734
* include/Makefile.am (assoc_headers): Break into five sub values.
(install-headers): Use them.
(stamp-assoc): Same.
* include/Makefile.in: Regenerate.
From-SVN: r104196
2005-09-12 23:09:41 +00: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
H.J. Lu
216edb224f
re PR libstdc++/22284 (ia64 exception handling broken)
...
2005-07-29 H.J. Lu <hongjiu.lu@intel.com>
PR libstdc++/22284
* libsupc++/eh_personality.cc (PERSONALITY_FUNCTION): Revert
the change to info.ttype_base.
From-SVN: r102552
2005-07-29 06:35:59 -07:00
Geoffrey Keating
a9fdd4720c
Index: gcc/ChangeLog
...
2005-07-25 Geoffrey Keating <geoffk@apple.com>
* doc/install.texi (Prerequisites): Mention that perl is needed
to do export control in libstdc++ targetting Darwin.
Index: libstdc++-v3/ChangeLog
2005-07-25 Geoffrey Keating <geoffk@apple.com>
* acinclude.m4 (GLIBCXX_ENABLE_SYMVERS): Handle darwin-export,
and make it the default for Darwin.
* scripts/make-exports.pl: New.
* src/Makefile.am: Update for changes to GLIBCXX_ENABLE_SYMVERS.
Handle darwin-export.
* configure: Regenerate.
* include/Makefile.in: Regenerate.
* libmath/Makefile.in: Regenerate.
* libsupc++/Makefile.in: Regenerate.
* po/Makefile.in: Regenerate.
* src/Makefile.in: Regenerate.
* testsuite/Makefile.in: Regenerate.
From-SVN: r102435
2005-07-27 18:28:32 +00:00
Paolo Carlini
872d8fea40
Add class __versa_string, a versatile "basic_string-type" class...
...
2005-07-05 Paolo Carlini <pcarlini@suse.de>
Add class __versa_string, a versatile "basic_string-type" class:
an additional, non-standard, template parameter allows to specify
the preferred base class. Two are provided: __rc_string_base,
which implements a behavior very similar to our standard string,
and __sso_string_base, not reference-counted and optimized for
short strings.
* include/ext/rc_string_base.h: New.
* include/ext/sso_string_base.h: Likewise.
* include/ext/vstring.h: Likewise.
* include/ext/vstring.tcc: Likewise.
* include/ext/vstring_fwd.h: Likewise.
* include/ext/vstring_util.h: Likewise.
* include/Makefile.am: Add.
* include/Makefile.in: Regenerate.
* testsuite/ext/vstring/explicit_instantiation/1.cc: New.
* testsuite/ext/vstring/explicit_instantiation/2.cc: Likewise.
* testsuite/ext/vstring/explicit_instantiation/char/1.cc: Likewise.
* testsuite/ext/vstring/explicit_instantiation/wchar_t/1.cc: Likewise.
* Makefile.in: Regenerate with autotools 1.9.3 (to date, the version
officially used by v3).
* aclocal.m4: Likewise.
* libmath/Makefile.in: Likewise.
* libsupc++/Makefile.in: Likewise.
* po/Makefile.in: Likewise.
* src/Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.
From-SVN: r101639
2005-07-05 23:07:18 +00:00
Paul Brook
2a75c0b6d2
Makefile.in: Set and use UNWIND_H.
...
2005-06-28 Paul Brook <paul@codesourcery.com>
gcc/
* Makefile.in: Set and use UNWIND_H. Install as unwind.h.
* c-decl.c (finish_decl): Call default_init_unwind_resume_libfunc.
* except.c (add_ehspec_entry): Generate arm eabi filter lists.
(assign_filter_values): Ditto.
(output_ttype): New function.
(output_function_exception_table): Use output_ttype. Generate arm
eabi filter lists.
(default_init_unwind_resume_libfunc): New function.
* except.h (default_init_unwind_resume_libfunc): Add prototype.
* optabs.c (init_optabs): Don't set unwind_resume_libfunc.
* opts.c (decode_options): Use targetm.unwind_tables_default.
* target-def.h (TARGET_ASM_TTYPE): Provide and use definition.
(TARGET_ARM_EABI_UNWINDER, TARGET_UNWIND_TABLES_DEFAULT): Ditto.
* target.h (struct gcc_target): Add asm.ttype, unwind_tables_default
and arm_eabi_unwinder.
* unwind-c.c: Support Arm EABI unwinder.
* unwind.h: Rename ...
* unwind-generic.h: ... To this.
* doc/tm.texi (TARGET_ASM_TTYPE, TARGET_ARM_EABI_UNWINDER): Document.
(TARGET_UNWID_TABLES_DEFAULT): Document.
* config/arm/arm-protos.h (arm_output_fn_unwind): Add prototype.
* config/arm/arm.c (arm_unwind_emit, arm_output_ttype): New functions.
(TARGET_UNWIND_EMIT, TARGET_ASM_TTYPE, TARGET_ARM_EABI_UNWINDER):
Define.
(thumb_pushpop, thumb_output_function_prologue): Output unwinding
directives.
(arm_unwind_emit_stm, arm_unwind_emit_set): New functions.
* config/arm/arm.h (MUST_USE_SJLJ_EXCEPTIONS): Only define when
!TARGET_UNWIND_INFO.
(ARM_OUTPUT_FN_UNWIND, ARM_EABI_UNWIND_TABLES): Define.
* config/arm/bpabi.h (TARGET_UNWIND_INFO): Define.
* config/arm/elf.h (ASM_DECLARE_FUNCTION_NAME,
ASM_DECLARE_FUNCTION_SIZE): Use ARM_OUTPUT_FN_UNWIND.
* config/arm/lib1funcs.asm: Include libunwind.S.
* config/arm/libgcc-bpabi.ver: Add unwinding routines.
* config/arm/libunwind.S: New file.
* config/arm/pr-support.c: New file.
* config/arm/t-bpabi (LIB1ASMFUNCS): Add _unwind.
(UNWIND_H, LIB2ADDEH, LIB2ADDEHDEP): Set.
* config/arm/t-symbian (UNWIND_H, LIB2ADDEH, LIB2ADDEHDEP): Set.
* config/arm/unwind-arm.c: New file.
* config/arm/unwind-arm.h: New file.
* config/i386/t-netware (USER_H): Remove unwind.h.
* config/ia64/ia64.h (TARGET_UNWIND_TABLES_DEFAULT): Define.
gcc/cp/
* Make-lang.in (cp/except.o): Depend on $(TARGET_H)
* except.c: Include target.h.
(init_exception_processing): Initialize unwind_resume_libfunc.
* doc/tm.texi: Document TARGET_ASM_TTYPE
gcc/ada/
* misc.c (gnat_init_gcc_eh): Call default_init_unwind_resume_libfunc.
gcc/java/
* decl.c (java_init_decl_processing): Call
default_init_unwind_resume_libfunc.
gcc/objc/
* objc-act.c (objc_init_exceptions): Call
default_init_unwind_resume_libfunc.
libstdc++/
* acinclude.m4 (GLIBCXX_ENABLE_SJLJ_EXCEPTIONS): Check for
__cxa_end_cleanup.
* libsupc++/Makefile.am (sources): Add eh_call.c and eh_arm.c.
* libsupc++/eh_arm.cc: New file.
* libsupc++/eh_call.cc: New file.
* libsupc++/eh_catch.cc (__cxa_get_exception_ptr): Use
__gxx_caught_object.
(__cxa_begin_catch): Ditto. Use __is_gxx_exception_class. Call
_Unwind_Complete when using the ARM EABI.
(__cxa_end_catch): Use __is_gxx_exception_class.
* libsupc++/eh_personality.cc: Define NO_SIZE_OF_ENCODED_VALUE when
using the ARM EABI.
(save_caught_exception, restore_caught_exception): New functions.
(_throw_typet): New typedef.
(get_ttype_entry, get_adjusted_ptr, check_exception_spec): Add ARM
EABI implementations.
(PERSONALITY_FUNCTION): Use new functions. Addd support for ARM EABI
unwinding libary.
(__cxa_unexpected): Disable when using the ARM EABI.
* libsupc++/eh_throw.cc (__cxa_throw): Use __GXX_INIT_EXCEPTION_CLASS.
(__cxa_rethrow): Use __is_gxx_exception_class. Call
_Unwind_RaiseException when using the ARM EABI.
* libsupc++/unwind-cxx.h (struct __cxa_exception): Add fields for ARM
EABI semantics.
(struct __cxa_eh_globals): Ditto.
(__cxa_call_terminate): Add prototype.
(__cxa_type_match, __cxa_begin_cleanup, __cxa_end_cleanup): Add
prototypes.
(__get_exception_header_from_obj, __get_exception_header_from_ue):
Move earlier in file.
(__is_gxx_exception_class, __GXX_INIT_EXCEPTION_CLASS,
__gxx_caught_object): New functions.
* aclocal.m4: Regenerate.
* configure: Regenerate.
* Makefile.in: Regenerate.
* include/Makefile.in: Regenerate.
* libmath/Makefile.in: Regenerate.
* libsupc++/Makefile.in: Regenerate.
* po/Makefile.in: Regenerate.
* src/Makefie.in: Regenerate.
* testsuite/makefile.in: Regenerate.
From-SVN: r101389
2005-06-28 20:06:39 +00:00
Paul Brook
617a1b7144
Makefile.in: Set and use UNWIND_H.
...
2005-06-28 Paul Brook <paul@codesourcery.com>
gcc/
* Makefile.in: Set and use UNWIND_H. Install as unwind.h.
* c-decl.c (finish_decl): Call default_init_unwind_resume_libfunc.
* except.c (add_ehspec_entry): Generate arm eabi filter lists.
(assign_filter_values): Ditto.
(output_ttype): New function.
(output_function_exception_table): Use output_ttype. Generate arm
eabi filter lists.
(default_init_unwind_resume_libfunc): New function.
* except.h (default_init_unwind_resume_libfunc): Add prototype.
* optabs.c (init_optabs): Don't set unwind_resume_libfunc.
* opts.c (decode_options): Use targetm.unwind_tables_default.
* target-def.h (TARGET_ASM_TTYPE): Provide and use definition.
(TARGET_ARM_EABI_UNWINDER, TARGET_UNWIND_TABLES_DEFAULT): Ditto.
* target.h (struct gcc_target): Add asm.ttype, unwind_tables_default
and arm_eabi_unwinder.
* unwind-c.c: Support Arm EABI unwinder.
* unwind.h: Rename ...
* unwind-generic.h: ... To this.
* doc/tm.texi (TARGET_ASM_TTYPE, TARGET_ARM_EABI_UNWINDER): Document.
(TARGET_UNWID_TABLES_DEFAULT): Document.
* config/arm/arm-protos.h (arm_output_fn_unwind): Add prototype.
* config/arm/arm.c (arm_unwind_emit, arm_output_ttype): New functions.
(TARGET_UNWIND_EMIT, TARGET_ASM_TTYPE, TARGET_ARM_EABI_UNWINDER):
Define.
(thumb_pushpop, thumb_output_function_prologue): Output unwinding
directives.
(arm_unwind_emit_stm, arm_unwind_emit_set): New functions.
* config/arm/arm.h (MUST_USE_SJLJ_EXCEPTIONS): Only define when
!TARGET_UNWIND_INFO.
(ARM_OUTPUT_FN_UNWIND, ARM_EABI_UNWIND_TABLES): Define.
* config/arm/bpabi.h (TARGET_UNWIND_INFO): Define.
* config/arm/elf.h (ASM_DECLARE_FUNCTION_NAME,
ASM_DECLARE_FUNCTION_SIZE): Use ARM_OUTPUT_FN_UNWIND.
* config/arm/lib1funcs.asm: Include libunwind.S.
* config/arm/libgcc-bpabi.ver: Add unwinding routines.
* config/arm/libunwind.S: New file.
* config/arm/pr-support.c: New file.
* config/arm/t-bpabi (LIB1ASMFUNCS): Add _unwind.
(UNWIND_H, LIB2ADDEH, LIB2ADDEHDEP): Set.
* config/arm/t-symbian (UNWIND_H, LIB2ADDEH, LIB2ADDEHDEP): Set.
* config/arm/unwind-arm.c: New file.
* config/arm/unwind-arm.h: New file.
* config/i386/t-netware (USER_H): Remove unwind.h.
* config/ia64/ia64.h (TARGET_UNWIND_TABLES_DEFAULT): Define.
gcc/cp/
* Make-lang.in (cp/except.o): Depend on $(TARGET_H)
* except.c: Include target.h.
(init_exception_processing): Initialize unwind_resume_libfunc.
* doc/tm.texi: Document TARGET_ASM_TTYPE
gcc/ada/
* misc.c (gnat_init_gcc_eh): Call default_init_unwind_resume_libfunc.
gcc/java/
* decl.c (java_init_decl_processing): Call
default_init_unwind_resume_libfunc.
gcc/objc/
* objc-act.c (objc_init_exceptions): Call
default_init_unwind_resume_libfunc.
libstdc++/
* acinclude.m4 (GLIBCXX_ENABLE_SJLJ_EXCEPTIONS): Check for
__cxa_end_cleanup.
* libsupc++/Makefile.am (sources): Add eh_call.c and eh_arm.c.
* libsupc++/eh_arm.cc: New file.
* libsupc++/eh_call.cc: New file.
* libsupc++/eh_catch.cc (__cxa_get_exception_ptr): Use
__gxx_caught_object.
(__cxa_begin_catch): Ditto. Use __is_gxx_exception_class. Call
_Unwind_Complete when using the ARM EABI.
(__cxa_end_catch): Use __is_gxx_exception_class.
* libsupc++/eh_personality.cc: Define NO_SIZE_OF_ENCODED_VALUE when
using the ARM EABI.
(save_caught_exception, restore_caught_exception): New functions.
(_throw_typet): New typedef.
(get_ttype_entry, get_adjusted_ptr, check_exception_spec): Add ARM
EABI implementations.
(PERSONALITY_FUNCTION): Use new functions. Addd support for ARM EABI
unwinding libary.
(__cxa_unexpected): Disable when using the ARM EABI.
* libsupc++/eh_throw.cc (__cxa_throw): Use __GXX_INIT_EXCEPTION_CLASS.
(__cxa_rethrow): Use __is_gxx_exception_class. Call
_Unwind_RaiseException when using the ARM EABI.
* libsupc++/unwind-cxx.h (struct __cxa_exception): Add fields for ARM
EABI semantics.
(struct __cxa_eh_globals): Ditto.
(__cxa_call_terminate): Add prototype.
(__cxa_type_match, __cxa_begin_cleanup, __cxa_end_cleanup): Add
prototypes.
(__get_exception_header_from_obj, __get_exception_header_from_ue):
Move earlier in file.
(__is_gxx_exception_class, __GXX_INIT_EXCEPTION_CLASS,
__gxx_caught_object): New functions.
* aclocal.m4: Regenerate.
* configure: Regenerate.
* Makefile.in: Regenerate.
* include/Makefile.in: Regenerate.
* libmath/Makefile.in: Regenerate.
* libsupc++/Makefile.in: Regenerate.
* po/Makefile.in: Regenerate.
* src/Makefie.in: Regenerate.
* testsuite/makefile.in: Regenerate.
From-SVN: r101385
2005-06-28 19:52:27 +00:00
Benjamin Kosnik
84946e72dc
re PR libstdc++/22111 (libstdc++ abi_check)
...
make
2005-06-19 Benjamin Kosnik <bkoz@redhat.com>
PR libstdc++/22111
* acinclude.m4 (GLIBCXX_CONFIGURE_TESTSUITE): Remove
GLIBCXX_TEST_ABI. Remove duplicate _GLIBCXX_ASM_SYMVER define.
Don't enable abi testing unless versioned.
* configure: Regenerate.
* testsuite/Makefile.am (check-abi): Remove conditional.
* testsuite/Makefile.in: Regenerate.
* testsuite/libstdc++-abi/abi.exp: Call build_support, then check
v3-symver before proceeding.
* testsuite/lib/libstdc++.exp (libstdc++-dg-test): Set v3-symvers
if _GLIBCXX_SYMVER.
From-SVN: r101204
2005-06-20 06:48:28 +00:00
Tom Tromey
cd11181329
re PR libgcj/19877 (sometimes reconfiguring leads to incorrect config.h)
...
config/:
PR libgcj/19877:
* no-executables.m4: Call real AC_FUNC_MMAP when cache variable
is set but not 'no'.
libstdc++-v3/:
PR libgcj/19877:
* configure, aclocal.m4: Rebuilt.
* Makefile.in, include/Makefile.in, libmath/Makefile.in,
libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in,
testsuite/Makefile.in: Likewise.
libjava/:
PR libgcj/19877:
* configure, aclocal.m4, Makefile.in: Rebuilt.
libgfortran/:
PR libgcj/19877:
* configure, aclocal.m4, Makefile.in: Rebuilt.
zlib/:
PR libgcj/19877:
* configure, aclocal.m4, Makefile.in: Rebuilt.
From-SVN: r100953
2005-06-14 20:05:59 +00:00
Richard Henderson
e73ee854b1
* libsupc++/unwind-cxx.h: Revert gcc_unreachable change.
...
From-SVN: r100002
2005-05-19 18:24:50 -07:00
Jan Beulich
7a774cac88
unwind-compat.c: Include tconfig.h and tsystem.h.
...
gcc/
2005-05-19 Jan Beulich <jbeulich@novell.com>
* unwind-compat.c: Include tconfig.h and tsystem.h.
* unwind-dw2-fde-compat.c: Likewise.
libstdc++-v3/
2005-05-19 Jan Beulich <jbeulich@novell.com>
* libsupc++/unwind-cxx.h: Include cstdlib.
(gcc_unreachable): #define.
* libsupc++/eh_personality.cc (gcc_unreachable): Remove #define.
From-SVN: r99952
2005-05-19 06:47:50 +00:00
Nathan Sidwell
79d0dfa314
unwind-dw2-fde-glibc.c (base_from_cb_data, [...]): Use gcc_assert and gcc_unreachable as appropriate.
...
* unwind-dw2-fde-glibc.c (base_from_cb_data,
_Unwind_IteratePhdrCallback): Use gcc_assert and gcc_unreachable as
appropriate.
* unwind-dw2-fde.c (__deregister_frame_info_bases,
base_from_object, fde_split, end_fde_sort): Likewise.
* unwind-dw2.c (_Unwind_GetGR, _Unwind_SetGR, execute_stack_op,
execute_cfa_program, _Unwind_SetSpColumn, uw_update_context_1,
uw_init_context_1): Likewise.
* unwind.inc (_Unwind_RaiseException_Phase2, _Unwind_Resume,
_Unwind_Resume_or_Rethrow): Likewise.
* unwind-pe.h (__gxx_abort): Do not define.
(size_of_encoded_value, base_of_encoded_value,
read_encoded_value_with_base): Use gcc_unreachable.
* unwind.h (_Unwind_GetTextRelBase): Likewise.
From-SVN: r99835
2005-05-17 15:37:47 +00:00
Benjamin Kosnik
a72c74a1de
acinclude.m4: Remove testsuite_wchar_t and testsuite_thread.
...
2005-05-04 Benjamin Kosnik <bkoz@redhat.com>
* acinclude.m4: Remove testsuite_wchar_t and testsuite_thread.
* testsuite/Makefile.am: Same.
* scripts/create_testsuite_files: Same.
* Makefile.in: Regenerate.
* configure: Same.
* include/Makefile.in: Same.
* libmath/Makefile.in: Same.
* libsupc++/Makefile.in: Same.
* po/Makefile.in: Same.
* src/Makefile.in: Same.
From-SVN: r99273
2005-05-05 16:12:28 +00:00
Kelley Cook
3a24bf5d16
configure.ac: Create template for PACKAGE and VERSION.
...
2005-04-08 Kelley Cook <kcook@gcc.gnu.org>
* configure.ac: Create template for PACKAGE and VERSION.
Update comment on how to regenerate file. Update minimum
automake version to 1.9.3.
* acconfig.h: Remove PACKAGE and VERSION.
* aclocal.m4, configure, Makefile.in, po/Makefile.in,
src/Makefile.in, include/Makefile.in, libmath/Makefile.in,
testsuite/Makefile.in, config.h.in: Regenerate.
From-SVN: r97815
2005-04-08 00:59:08 +00:00
Benjamin Kosnik
5305b1ae1b
test.html: Update.
...
2005-04-06 Benjamin Kosnik <bkoz@redhat.com>
* docs/html/test.html: Update.
* testsuite/printnow.c: Remove.
* scripts/check_survey.in: Remove.
* testsuite/abi_check.cc: To...
* testuite/testsuite_abi_check.cc: ...here.
* testsuite/libstdc++-abi/abi.exp: Change abi_check.cc to
testsuite_abi_check.cc.
* testsuite/testsuite_hooks.h: Move character related bits to...
* testsuite/testsuite_character.h: ...here.
* testsuite/testsuite_character.cc: ... and here.
* testsuite/21_strings/basic_string/inserters_extractors/pod/
10081-in.cc: Use testsuite_character.h.
* testsuite/21_strings/basic_string/inserters_extractors/pod/
10081-out.cc: Same.
* testsuite/22_locale/numpunct/members/pod/1.cc: Same.
* testsuite/22_locale/numpunct/members/pod/2.cc: Same.
* testsuite/27_io/basic_filebuf/2.cc: Same.
* testsuite/27_io/basic_fstream/2.cc: Same.
* testsuite/27_io/basic_istream/2.cc: Same.
* testsuite/27_io/basic_istream/extractors_arithmetic/pod/
3983-1.cc: Same.
* testsuite/27_io/basic_istream/extractors_character/char/
9826.cc: Same.
* testsuite/27_io/basic_istream/extractors_character/pod/
3983-2.cc: Same.
* testsuite/27_io/basic_istream/extractors_other/pod/3983-3.cc: Same.
* testsuite/27_io/basic_istream/sentry/pod/1.cc: Same.
* testsuite/27_io/basic_ostream/2.cc: Same.
* testsuite/27_io/basic_ostream/sentry/pod/1.cc: Same.
* testsuite/27_io/basic_streambuf/2.cc: Same.
* testsuite/27_io/basic_stringbuf/2.cc: Same.
* testsuite/27_io/basic_stringbuf/4.cc: Same.
* testsuite/27_io/basic_stringstream/2.cc: Same.
* testsuite/27_io/fpos/1.cc: Same.
* testsuite/ext/mt_allocator/tune-1.cc: Same.
* testsuite/ext/mt_allocator/tune-2.cc: Same.
* testsuite/ext/stdio_filebuf/char/1.cc: Same.
* testsuite/lib/libstdc++.exp (v3-build_support): Add
testsuite_character.cc.
* testsuite/Makefile.am (libv3test_a_SOURCES): Add
testsuite_character.cc.
* testsuite/Makefile.in: Regenerate.
* configure.ac: Remove use of check_survey.
* configure: Regenerate.
* testsuite/Makefile.am: Remove check-script and
check-script-install rules.
* testsuite/Makefile.in: Regenerate.
From-SVN: r97772
2005-04-07 04:16:26 +00:00
Kelley Cook
c41f82b270
Makefile.am (ACLOCAL_AMFLAGS): Define.
...
2005-04-05 Kelley Cook <kcook@gcc.gnu.org>
* Makefile.am (ACLOCAL_AMFLAGS): Define.
* crossconfig.m4: Wrap file into new GLIBCXX_CROSSCONFIG macro.
* configure.ac: Use it.
* acinclude.m4: Delete explicit m4_includes and sincludes.
* aclocal.m4, configure, Makefile.in, po/Makefile.in,
src/Makefile.in, include/Makefile.in, libmath/Makefile.in,
testsuite/Makefile.in: Regenerate.
From-SVN: r97677
2005-04-06 00:05:51 +00:00
Zack Weinberg
47194af45f
acinclude.m4 (GLIBCXX_CONFIGURE): Delete gcc_version logic.
...
* acinclude.m4 (GLIBCXX_CONFIGURE): Delete gcc_version logic.
(GLIBCXX_EXPORT_INSTALL_INFO): Adjust quotation so ${gcc_version}
is expanded by the Makefiles, not by configure.
* fragment.am: Set gcc_version.
* libmath/Makefile.am: Likewise.
* configure, Makefile.in, include/Makefile.in, libmath/Makefile.in
* libsupc++/Makefile.in, po/Makefile.in, src/Makefile.in
* testsuite/Makefile.in: Regenerate.
From-SVN: r96814
2005-03-21 17:40:24 +00:00
Richard Henderson
38f925677d
re PR libstdc++/20091 (18_support/14026.cc execution test fails)
...
PR libstdc++/20091
* libsupc++/eh_catch.cc (__cxa_begin_catch): Don't special case
decrement of uncaughtExceptions for rethrow.
From-SVN: r95419
2005-02-22 15:17:14 -08: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
Mike Stump
f00485cc36
Fix typo...
...
From-SVN: r94843
2005-02-10 19:21:33 +00:00
Mike Stump
b77647dff8
* libsupc++/del_op.cc: Don't include cstdlib when !_GLIBCXX_HOSTED.
...
From-SVN: r94842
2005-02-10 19:05:34 +00:00
Brad Spencer
ddf2a54af5
crossconfig.m4: Repair Solaris cross bits for strtold and strtof.
...
2005-01-31 Brad Spencer <spencer@infointeractive.com>
* crossconfig.m4: Repair Solaris cross bits for strtold and strtof.
* configure: Regenerated.
From-SVN: r94526
2005-02-01 06:56:30 +00:00
Geoffrey Keating
7d665006a3
libstdc++.exp (libstdc++_init): Search the path for the compiler.
...
* testsuite/lib/libstdc++.exp (libstdc++_init): Search the path
for the compiler. Don't set cxxflags.
(v3_target_compile): Search for libv3test.a relative to $objdir.
(lsearch_all_inline): New.
(lsearch_all_inline_not): New.
(v3-list-tests): Rewrite to not need generated files.
* testsuite/Makefile.am (IGNORE_WCHAR_T): New.
(IGNORE_THREAD): New.
(TESTS_TO_IGNORE): New.
(site.exp): Set tests_to_ignore, cxxflags.
* aclocal.m4: Regenerate.
* Makefile.in: Regenerate.
* libmath/Makefile.in: Likewise.
* libsupc++/Makefile.in: Likewise.
* po/Makefile.in: Likewise.
* src/Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.
From-SVN: r94384
2005-01-28 18:57:59 +00:00
Paolo Carlini
3e636396c8
Makefile.in: Regenerate.
...
2005-01-10 Paolo Carlini <pcarlini@suse.de>
* Makefile.in: Regenerate.
* libmath/Makefile.in: Likewise.
* libsupc++/Makefile.in: Likewise.
* po/Makefile.in: Likewise.
* src/Makefile.in: Likewise.
* testsuite/Makefile.in: Likewise.
2005-01-10 Paolo Carlini <pcarlini@suse.de>
* include/bits/stl_algobase.h (lexicographical_compare):
Fix concept check.
From-SVN: r93143
2005-01-10 17:07:50 +00: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
Kelley Cook
a38fb0a7a4
Makefile.in, aclocal.m4: Regenerate with automake 1.9.3.
...
2004-11-24 Kelley Cook <kcook@gcc.gnu.org>
* Makefile.in, aclocal.m4: Regenerate with automake 1.9.3.
* 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: r91197
2004-11-24 21:12:26 +00:00
Benjamin Kosnik
0aa06b18fc
doxygroups.cc: Add std::tr1 namespace.
...
2004-11-23 Benjamin Kosnik <bkoz@redhat.com>
* docs/doxygen/doxygroups.cc: Add std::tr1 namespace.
* docs/doxygen/run_doxygen: Renames for std::tr1.
* docs/doxygen/user.cfg.in: Add cxxabi.h.
* include/bits/*.tcc: Add file markup.
* include/bits/allocator.h: Add link to allocator.html.
* include/bits/atomicity.h: Add file markup.
* include/bits/concurrence.h: Same.
* include/bits/functexcept.h: Same.
* include/ext*: Adjust file markup, remove GCC3 bits.
* include/std/*: Adjust file markup, remove bits about renamed files.
* libsupc++/cxxabi.h: Add file markup.
* testsuite/20_util/memory/auto_ptr/assign_neg.cc: Adjust line numbers.
From-SVN: r91135
2004-11-24 04:11:23 +00:00
Benjamin Kosnik
34a133a808
c++config: Spacing.
...
2004-11-03 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/c++config: Spacing.
* libsupc++/del_op.cc: Include c++config.h.
* libsupc++/del_opnt.cc: Same.
* libsupc++/del_opv.cc: Same.
* libsupc++/del_opvnt.cc: Same.
* libsupc++/new_op.cc: Same.
* libsupc++/new_opnt.cc: Same.
* libsupc++/new_opv.cc: Same.
* libsupc++/new_opvnt.cc: Same.
From-SVN: r90021
2004-11-03 04:07:22 +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
Momchil Velikov
c137586a8e
re PR libstdc++/18185 ([3.4 only] Unhandled exceptions leak)
...
2004-11-01 Momchil Velikov <velco@fadata.bg>
PR libstdc++/18185
* libsupc++/eh_globals.cc (get_globals_dtor): Delete unhandled
exceptions.
* testsuite/thread/18185.cc: New.
From-SVN: r89962
2004-11-01 22:47:33 +00:00
Geoffrey Keating
f1a6626519
Index: gcc/gcc/ChangeLog
...
2004-10-25 Geoffrey Keating <geoffk@apple.com>
* config/darwin.h (LINK_SPEC): Default weak_reference_mismatches
to 'non-weak'.
(MAKE_DECL_ONE_ONLY): Set DECL_WEAK.
(ASM_MAKE_LABEL_LINKONCE): Delete.
(ASM_WEAKEN_DECL): New.
(ASM_DECLARE_OBJECT_NAME): Look at DECL_WEAK not DECL_ONE_ONLY.
(ASM_DECLARE_FUNCTION_NAME): Likewise.
(TEXT_SECTION_ASM_OP): Add a tab.
(DATA_SECTION_ASM_OP): Likewise.
(SECTION_FUNCTION): Add a tab. Use fputs. Don't call
data_section on every section change.
(EXTRA_SECTIONS): Add a bunch of new extra sections.
(EXTRA_SECTION_FUNCTIONS): Likewise.
(USE_SELECT_SECTION_FOR_FUNCTIONS): Define.
(JCR_SECTION_NAME): Define.
(TARGET_SECTION_TYPE_FLAGS): Don't define.
* config/darwin.c (darwin_encode_section_info): A symbol is defined
in this file if it is not weak.
(textcoal_section): Delete.
(datacoal_section): Delete.
(darwin_make_decl_one_only): Delete.
(machopic_select_section): Handle functions.
(darwin_asm_named_section): Add a tab.
(darwin_section_type_flags): Delete.
(darwin_unique_section): Delete contents.
(darwin_emit_unwind_label): Add a tab. Make decls weak if
DECL_WEAK is set.
* config/darwin-protos.h (darwin_section_type_flags): Delete.
(darwin_make_decl_one_only): Delete.
(text_coal_section): New.
(text_unlikely_section): New.
(text_unlikely_coal_section): New.
(const_coal_section): New.
(data_coal_section): New.
(const_data_coal_section): New.
* varasm.c (function_section): Honour
USE_SELECT_SECTION_FOR_FUNCTIONS.
* dwarf2out.c (output_call_frame_info): Look at DECL_WEAK when
TARGET_USES_WEAK_UNWIND_INFO is in effect.
* dbxout.c (dbxout_source_file): Don't change sections while
a function is being output.
Index: gcc/testsuite/ChangeLog
2004-10-25 Geoffrey Keating <geoffk@apple.com>
* objc.dg/image-info.m: Update for changes to section selection.
Index: libjava/ChangeLog
2004-10-25 Geoffrey Keating <geoffk@apple.com>
* Makefile.am (DARWIN_CRT_SRC): New.
(libgcj_la_SOURCES): Use it.
* configure.ac: Define USING_DARWIN_CRT when on Darwin.
* darwin.cc: New file.
* include/jvm.h (_Jv_RegisterClasses): Constify.
(_Jv_RegisterClasses_Counted): New prototype.
* java/lang/Class.h: Include stddef.h.
(_Jv_RegisterClasses): Constify.
(_Jv_RegisterClasses_Counted): New prototype.
(Object): Make '_Jv_RegisterClasses_Counted' a friend.
* java/lang/natClassLoader.cc (_Jv_RegisterClasses): Constify.
(_Jv_RegisterClasses_Counted): New function.
* configure: Regenerate.
* Makefile.in: Regenerate.
* gcj/Makefile.in: Regenerate.
* include/Makefile.in: Regenerate.
* testsuite/Makefile.in: Regenerate.
Index: libstdc++-v3/ChangeLog
2004-10-25 Geoffrey Keating <geoffk@apple.com>
* libsupc++/new_op.cc (new): Make weak.
* libsupc++/new_opnt.cc (new): Make weak.
* libsupc++/new_opv.cc (new): Make weak.
* libsupc++/new_opvnt.cc (new): Make weak.
* libsupc++/delete_op.cc (delete): Make weak.
* libsupc++/delete_opnt.cc (delete): Make weak.
* libsupc++/delete_opv.cc (delete): Make weak.
* libsupc++/delete_opvnt.cc (delete): Make weak.
From-SVN: r89572
2004-10-26 06:09:05 +00:00
Benjamin Kosnik
e3f78d9b11
acinclude.m4 (GLIBCXX_ENABLE_THREADS): Set enable_thread.
...
2004-10-06 Benjamin Kosnik <bkoz@redhat.com>
* acinclude.m4 (GLIBCXX_ENABLE_THREADS): Set enable_thread.
(GLIBCXX_CONFIGURE_TESTSUITE): Use it.
* configure: Regenerated.
* testsuite/Makefile.am (CLEANFILES): Add TEST for
check-performance executables.
(stamp_thread): New.
(all-local): Use it.
* testsuite/Makefile.in: Regenerate.
* scripts/create_testsuite_files: Filter thread tests.
* testsuite/thread/pthread1.cc: Remove macro conditionals: this
file will only be run by thread enabled configurations.
* testsuite/thread/pthread7-rope.cc: Same, add rope_type typedef.
* testsuite/thread/pthread6.cc: Same.
* testsuite/thread/pthread5.cc: Same.
* testsuite/thread/pthread4.cc: Same.
* testsuite/thread/pthread3.cc: Same.
* testsuite/thread/pthread2.cc: Same.
* testsuite/ext/mt_allocator/instantiate.cc: Add in __GTHREADS guard.
* testsuite/ext/mt_allocator/deallocate_global-1.cc: Move to...
* testsuite/ext/mt_allocator/deallocate_global_thread-1.cc: ...here.
* testsuite/ext/mt_allocator/deallocate_global-3.cc: Move to...
* testsuite/ext/mt_allocator/deallocate_global_thread-3.cc: ...here.
* testsuite/ext/mt_allocator/deallocate_local-1.cc: Move to...
* testsuite/ext/mt_allocator/deallocate_local_thread-1.cc: ...here.
* testsuite/ext/mt_allocator/deallocate_local-3.cc: Move to...
* testsuite/ext/mt_allocator/deallocate_local_thread-3.cc: ...here.
From-SVN: r88628
2004-10-06 22:12:34 +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
Mark Mitchell
40a1c5cb5e
bpabi.h (TARGET_BPABI_CPP_BUILTINS): Define.
...
* config/arm/bpabi.h (TARGET_BPABI_CPP_BUILTINS): Define.
(TARGET_OS_CPP_BUILTINS): Likewise.
* config/arm/symbian.h (TARGET_OS_CPP_BUILTINS): Include
TARGET_BPABI_CPP_BUILTINS.
* g++.dg/abi/arm_rtti1.C: New test.
* libsupc++/typeinfo: Honor __GXX_MERGED_TYPEINFO_NAMES if already
defined.
[[Split portion of a mixed commit.]]
From-SVN: r87018.2
2004-09-03 00:43:59 +00:00
Jason Merrill
40aac94801
re PR c++/13684 (local static object variable constructed once but ctors and dtors called multiple times on same memory when called in multiple threads)
...
PR c++/13684
* cp/decl.c (expand_static_init): Use thread-safety API.
(register_dtor_fn): Return the call, don't expand it.
* cp/tree.c (add_stmt_to_compound): New fn.
(stabilize_call): Use it.
* gimplify.c (gimplify_cleanup_point_expr): Handle CLEANUP_EH_ONLY.
(gimple_push_cleanup): Add eh_only parm.
(gimplify_target_expr): Pass it.
* c.opt (-fno-threadsafe-statics): New option.
* c-opts.c (c_common_handle_option): Handle it.
* c-common.h (flag_threadsafe_statics): Declare it.
* c-common.c (flag_threadsafe_statics): Record it.
* doc/invoke.texi: Document it.
* tsystem.h (_GNU_SOURCE): Define.
* gthr-posix.h (__gthread_recursive_mutex_t): New typedef.
(__GTHREAD_RECURSIVE_MUTEX_INIT): New macro.
(__GTHREAD_RECURSIVE_MUTEX_INIT_FUNCTION): New macro.
(__gthread_recursive_mutex_init_function): New fn.
(__gthread_recursive_mutex_lock): New fn.
(__gthread_recursive_mutex_trylock): New fn.
(__gthread_recursive_mutex_unlock): New fn.
* gthr-solaris.h, gthr-single.h, gthr-dce.h: Likewise.
* gthr-win32.h, gthr-vxworks.h: Likewise.
* gthr.h: Document.
* libsupc++/guard.cc (static_mutex): Internal class implementing a
recursive mutex which controls initialization of local statics.
(__gnu_cxx::recursive_init): New exception class.
(__cxa_guard_acquire): Deal with locking and recursion detection.
(acquire_1, __cxa_guard_abort, __cxa_guard_release): Likewise.
From-SVN: r86687
2004-08-27 22:33:54 -04:00
Paolo Carlini
a60945f82f
configure.ac: Specify version 1.9.1 in AM_INIT_AUTOMAKE.
...
2004-08-23 Paolo Carlini <pcarlini@suse.de>
* configure.ac: Specify version 1.9.1 in AM_INIT_AUTOMAKE.
* aclocal.m4: Regenerate with automake-1.9.1.
* 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: r86423
2004-08-23 10:18:31 +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
Kelley Cook
7eaf73d757
Makefile.in, [...]: Regenerate
...
2004-08-12 Kelley Cook <kcook@gcc.gnu.org>
* Makefile.in, aclocal.m4, configure, include/Makefile.in,
libmath/Makefile.in, libsupc++/Makefile.in, po/Makefile.in,
src/Makefile.in, testsuite/Makefile.in: Regenerate
From-SVN: r85869
2004-08-12 11:54:13 +00:00
Jason Merrill
27f577e57d
fix typo
...
From-SVN: r85715
2004-08-09 09:18:56 -04:00
Mark Mitchell
610b0ddd0e
new_op.cc: Update comments.
...
* libsupc++/new_op.cc: Update comments.
* libsupc++/del_op.cc: Likewise.
From-SVN: r85464
2004-08-03 07:11:16 +00:00
Mark Mitchell
723acbd5fa
cxxabi.h: Make all declarations have default visibility.
...
* libsupc++/cxxabi.h: Make all declarations have default
visibility.
* libsupc++/exception: Likewise.
* libsupc++/new: Likewise.
* libsupc++/typeinfo: Likewise.
* libsupc++/unwind-cxx.h: Likewise.
* libsupc++/eh_alloc.cc (__cxa_allocate_exception): Put it into
the __cxxabiv1 namespace.
(__cxa_free_exception): Likewise.
* libsupc++/eh_aux_runtime.cc (__cxa_bad_cast): Likewise.
(__cxa_bad_typeid): Likewise.
* libsupc++/eh_catch.cc (__cxa_begin_catch): Likewise.
(__cxa_end_catch): Likewise.
* libsupc++/eh_globals.cc (__cxa_get_globals_fast): Likewise.
(__cxa_get_globals): Likewise.
* libsupc++/eh_throw.cc (__cxa_throw): Likewise.
(__cxa_rethrow): Likewise.
* libsupc++/pure.cc (__cxa_pure_virtual): Likewise.
* libsupc++/eh_type.cc: Include <cxxabi.h>.
From-SVN: r85463
2004-08-03 06:45:54 +00:00
Mark Mitchell
4c24b21a47
Makefile.am (hosted_source): Add libmath and testsuite.
...
* Makefile.am (hosted_source): Add libmath and testsuite.
(SUBDIRS): Remove them.
* acinclude.m4: (GLIBCXX_ENABLED_HOSTED): Default to freestanding
on arm*-*-symbianelf*.
* crossconfig.m4: Add arm*-*-symbianelf* support.
* include/c_std/std/std_cstdlib.h (stdlib.h): Do not include it
when freestanding. Do not bring names into std:: namespace with
"using" when freestanding. Declare required functions and macros
when freestanding.
* libsupc++/Makefile.am (c_sources): Do not include cp-demangle.c
when freestanding.
* libsupc++/del_op.cc: Declare "free" only when freestanding.
* libsupc++/eh_alloc.cc (cstring): Include it only when hosted.
(malloc): Declare when freestanding.
(free): Likewise.
(memset): Likewise.
(__cxa_allocate_exception): Call malloc, not std::malloc. Likewise
for memset.
(__cxa_free_exception): Likewise for free.
* libsupc++/new_op.cc: Declare "malloc" when freestanding.
* libsupc++/pure.cc (writestr): Define to nothing when
freestanding.
* libsupc++/vterminate.cc: Do not define anything when
freestanding.
* Makefile.in: Regenerated.
* aclocal.m4: Likewise.
* configure: 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: r85452
2004-08-02 20:28:22 +00:00
Paul Brook
1568430fae
configure.ac: Set ABI_TWEAKS_SRCDIR.
...
* configure.ac: Set ABI_TWEAKS_SRCDIR.
* configure.host: Set abi_tweaks_dir. Check for atomicity.h when
setting atomicity_dir. Override type_cpu for arm based targets.
* include/Makefile.am (host_headers): Add cxxabi_tweaks.h.
* libsupc++/cxxabi.h: Include bits/cxxabi.h. Don't declare __guard.
* libsupc++/guard.cc: Use definitions from cxxabi_tweaks.h.
* libsupc++/vec.cc: Ditto.
* config/cpu/arm/cxxabi_tweaks.h: New file.
* config/cpu/generic/cxxabi_tweaks.h: New file.
* */Makefile.in: Regenerate.
* configure: Regenerate.
From-SVN: r84032
2004-07-02 23:40:19 +00:00