summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal@nekernel.org>2025-08-22 15:54:05 +0200
committerAmlal El Mahrouss <amlal@nekernel.org>2025-08-22 15:54:05 +0200
commitcfde696e68ce91ce776807ff44276136cb84e5ba (patch)
tree5be44cf9d15af73640ec547eb09893a03d97adba
parent54f5085758f59beb8395edd9658b99d555356578 (diff)
feat: introduce `__atexit__cdecl_ptr` to `std::atexit`
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
-rw-r--r--dev/LibC++/base_process.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/dev/LibC++/base_process.h b/dev/LibC++/base_process.h
index 77e092e..a30ccca 100644
--- a/dev/LibC++/base_process.h
+++ b/dev/LibC++/base_process.h
@@ -24,6 +24,7 @@ inline int signal(int code) {
return -1;
}
+extern "C" void (*__atexit__cdecl_ptr)(void);
extern "C" void (**__atexit_lst_ptr)(void);
extern "C" size_t __atexit_lst_cnt;
@@ -32,6 +33,8 @@ inline int exit(int code) {
__atexit_lst_ptr[idx]();
}
+ if (__atexit__cdecl_ptr) __atexit__cdecl_ptr();
+
exit_(code);
return -1;
}