]>
git.proxmox.com Git - rustc.git/blob - library/std/src/personality/emcc.rs
1 //! On Emscripten Rust panics are wrapped in C++ exceptions, so we just forward
2 //! to `__gxx_personality_v0` which is provided by Emscripten.
7 // This is required by the compiler to exist (e.g., it's a lang item), but it's
8 // never actually called by the compiler. Emscripten EH doesn't use a
9 // personality function at all, it instead uses __cxa_find_matching_catch.
10 // Wasm error handling would use __gxx_personality_wasm0.
11 #[lang = "eh_personality"]
12 unsafe extern "C" fn rust_eh_personality(
14 _actions
: uw
::_Unwind_Action
,
15 _exception_class
: uw
::_Unwind_Exception_Class
,
16 _exception_object
: *mut uw
::_Unwind_Exception
,
17 _context
: *mut uw
::_Unwind_Context
,
18 ) -> uw
::_Unwind_Reason_Code
{
19 core
::intrinsics
::abort()