diff options
author | Ben Wiederhake <BenWiederhake.GitHub@gmx.de> | 2020-08-12 02:11:07 +0200 |
---|---|---|
committer | Andreas Kling <kling@serenityos.org> | 2020-08-12 20:40:59 +0200 |
commit | ff590db7e51cb3f4dae45c72f747107602defb04 (patch) | |
tree | af80f7bd986e86e5869f3d2dbdeed1201846a699 /Libraries/LibC/cxxabi.cpp | |
parent | 9d2d97a05922599e714f2243b3d12248a386ac6a (diff) | |
download | serenity-ff590db7e51cb3f4dae45c72f747107602defb04.zip |
LibC: Move C++ABI functions to cxxabi.cpp, typecheck cxa_atexit
Diffstat (limited to 'Libraries/LibC/cxxabi.cpp')
-rw-r--r-- | Libraries/LibC/cxxabi.cpp | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/Libraries/LibC/cxxabi.cpp b/Libraries/LibC/cxxabi.cpp index 68c9e33f3e..cc920dec89 100644 --- a/Libraries/LibC/cxxabi.cpp +++ b/Libraries/LibC/cxxabi.cpp @@ -28,13 +28,12 @@ #include <assert.h> #include <stdio.h> #include <stdlib.h> +#include <sys/internals.h> //#define GLOBAL_DTORS_DEBUG extern "C" { -typedef void (*AtExitFunction)(void*); - struct __exit_entry { AtExitFunction method; void* parameter; @@ -83,4 +82,16 @@ void __cxa_finalize(void* dso_handle) } } +[[noreturn]] void __cxa_pure_virtual() +{ + ASSERT_NOT_REACHED(); +} + +extern u32 __stack_chk_guard; +u32 __stack_chk_guard = (u32)0xc6c7c8c9; + +[[noreturn]] void __stack_chk_fail() +{ + ASSERT_NOT_REACHED(); +} } // extern "C" |