mirror of
https://git.FreeBSD.org/src.git
synced 2024-11-21 07:15:49 +00:00
libcxxrt: Add a stub implementation of __cxa_call_terminate
This function is called by GCC 14 if a destructor invoked during exception unwinding throws an exception. Reviewed by: emaste Obtained from: libcxxrt commit 391a3dcc1054e18c2f0dff4e14d6d79ac95399d7 Differential Revision: https://reviews.freebsd.org/D46004
This commit is contained in:
parent
47656cc1ef
commit
297a9e552b
@ -1433,6 +1433,19 @@ extern "C" void __cxa_call_unexpected(void*exception)
|
|||||||
abort();
|
abort();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* ABI function, called when an object destructor exits due to an
|
||||||
|
* exception during stack unwinding.
|
||||||
|
*
|
||||||
|
* This function does not return.
|
||||||
|
*/
|
||||||
|
extern "C" void __cxa_call_terminate(void *exception) throw()
|
||||||
|
{
|
||||||
|
std::terminate();
|
||||||
|
// Should not be reached.
|
||||||
|
abort();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* ABI function, returns the adjusted pointer to the exception object.
|
* ABI function, returns the adjusted pointer to the exception object.
|
||||||
*/
|
*/
|
||||||
|
@ -253,6 +253,10 @@ CXXABI_1.3.11 {
|
|||||||
__cxa_init_primary_exception;
|
__cxa_init_primary_exception;
|
||||||
} CXXABI_1.3.9;
|
} CXXABI_1.3.9;
|
||||||
|
|
||||||
|
CXXABI_1.3.15 {
|
||||||
|
__cxa_call_terminate;
|
||||||
|
} CXXABI_1.3.11;
|
||||||
|
|
||||||
CXXRT_1.0 {
|
CXXRT_1.0 {
|
||||||
|
|
||||||
extern "C++" {
|
extern "C++" {
|
||||||
|
@ -254,6 +254,10 @@ CXXABI_1.3.11 {
|
|||||||
__cxa_init_primary_exception;
|
__cxa_init_primary_exception;
|
||||||
} CXXABI_1.3.9;
|
} CXXABI_1.3.9;
|
||||||
|
|
||||||
|
CXXABI_1.3.15 {
|
||||||
|
__cxa_call_terminate;
|
||||||
|
} CXXABI_1.3.11;
|
||||||
|
|
||||||
CXXRT_1.0 {
|
CXXRT_1.0 {
|
||||||
|
|
||||||
extern "C++" {
|
extern "C++" {
|
||||||
|
Loading…
Reference in New Issue
Block a user