diff options
author | Howard Hinnant <hhinnant@apple.com> | 2012-01-24 23:42:30 +0000 |
---|---|---|
committer | Howard Hinnant <hhinnant@apple.com> | 2012-01-24 23:42:30 +0000 |
commit | f81cdffb22a1f20a3adadccbaba60513aa29cb0d (patch) | |
tree | 319b22e34458e486ca6169f31cf13bc6faf1b990 /include | |
parent | 00cc7d2c79c179b54893ad215679bfae904578f5 (diff) |
By changing all of the throw() specs to noexcept I've been able to compile and link all of the source files into a dylib. Prior to this substitution the changed functions were calling __cxa_call_unexpected which isn't implemented yet. However in none of these cases do we actaully want __cxa_call_unexpected to be called. Primative buildit script added.
git-svn-id: https://llvm.org/svn/llvm-project/libcxxabi/trunk@148880 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r-- | include/cxxabi.h | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/include/cxxabi.h b/include/cxxabi.h index 6d04555..f753a32 100644 --- a/include/cxxabi.h +++ b/include/cxxabi.h @@ -33,16 +33,16 @@ namespace __cxxabiv1 { extern "C" { // 2.4.2 Allocating the Exception Object -extern void * __cxa_allocate_exception(size_t thrown_size) throw(); -extern void __cxa_free_exception(void * thrown_exception) throw(); +extern void * __cxa_allocate_exception(size_t thrown_size) noexcept; +extern void __cxa_free_exception(void * thrown_exception) noexcept; // 2.4.3 Throwing the Exception Object extern LIBCXXABI_NORETURN void __cxa_throw(void * thrown_exception, std::type_info * tinfo, void (*dest)(void *)); // 2.5.3 Exception Handlers -extern void * __cxa_get_exception_ptr(void * exceptionObject) throw(); -extern void * __cxa_begin_catch(void * exceptionObject) throw(); +extern void * __cxa_get_exception_ptr(void * exceptionObject) noexcept; +extern void * __cxa_begin_catch(void * exceptionObject) noexcept; extern void __cxa_end_catch(); extern std::type_info * __cxa_current_exception_type(); @@ -157,13 +157,13 @@ extern char* __cxa_demangle(const char* mangled_name, // Apple additions to support C++ 0x exception_ptr class // These are primitives to wrap a smart pointer around an exception object -extern void * __cxa_current_primary_exception() throw(); +extern void * __cxa_current_primary_exception() noexcept; extern void __cxa_rethrow_primary_exception(void* primary_exception); -extern void __cxa_increment_exception_refcount(void* primary_exception) throw(); -extern void __cxa_decrement_exception_refcount(void* primary_exception) throw(); +extern void __cxa_increment_exception_refcount(void* primary_exception) noexcept; +extern void __cxa_decrement_exception_refcount(void* primary_exception) noexcept; // Apple addition to support std::uncaught_exception() -extern bool __cxa_uncaught_exception() throw(); +extern bool __cxa_uncaught_exception() noexcept; } // extern "C" } // namespace __cxxabiv1 |