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
Name |
Last commit
|
Last update |
---|---|---|
INSTALL | Loading commit data... | |
boehm-gc | Loading commit data... | |
config | Loading commit data... | |
contrib | Loading commit data... | |
fixincludes | Loading commit data... | |
gcc | Loading commit data... | |
gnattools | Loading commit data... | |
include | Loading commit data... | |
intl | Loading commit data... | |
libada | Loading commit data... | |
libcpp | Loading commit data... | |
libdecnumber | Loading commit data... | |
libffi | Loading commit data... | |
libgcc | Loading commit data... | |
libgfortran | Loading commit data... | |
libgomp | Loading commit data... | |
libiberty | Loading commit data... | |
libjava | Loading commit data... | |
libmudflap | Loading commit data... | |
libobjc | Loading commit data... | |
libssp | Loading commit data... | |
libstdc++-v3 | Loading commit data... | |
maintainer-scripts | Loading commit data... | |
zlib | Loading commit data... | |
ABOUT-NLS | Loading commit data... | |
COPYING | Loading commit data... | |
COPYING.LIB | Loading commit data... | |
COPYING3 | Loading commit data... | |
COPYING3.LIB | Loading commit data... | |
ChangeLog | Loading commit data... | |
ChangeLog.tree-ssa | Loading commit data... | |
MAINTAINERS | Loading commit data... | |
Makefile.def | Loading commit data... | |
Makefile.in | Loading commit data... | |
Makefile.tpl | Loading commit data... | |
README | Loading commit data... | |
README.SCO | Loading commit data... | |
compile | Loading commit data... | |
config-ml.in | Loading commit data... | |
config.guess | Loading commit data... | |
config.rpath | Loading commit data... | |
config.sub | Loading commit data... | |
configure | Loading commit data... | |
configure.ac | Loading commit data... | |
depcomp | Loading commit data... | |
install-sh | Loading commit data... | |
libtool-ldflags | Loading commit data... | |
libtool.m4 | Loading commit data... | |
ltgcc.m4 | Loading commit data... | |
ltmain.sh | Loading commit data... | |
ltoptions.m4 | Loading commit data... | |
ltsugar.m4 | Loading commit data... | |
ltversion.m4 | Loading commit data... | |
lt~obsolete.m4 | Loading commit data... | |
missing | Loading commit data... | |
mkdep | Loading commit data... | |
mkinstalldirs | Loading commit data... | |
move-if-change | Loading commit data... | |
symlink-tree | Loading commit data... | |
ylwrap | Loading commit data... |