diff options
Diffstat (limited to 'include/LibC++/base_exception.h')
| -rw-r--r-- | include/LibC++/base_exception.h | 39 |
1 files changed, 0 insertions, 39 deletions
diff --git a/include/LibC++/base_exception.h b/include/LibC++/base_exception.h deleted file mode 100644 index ddddda9..0000000 --- a/include/LibC++/base_exception.h +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright 2024-2025, Amlal El Mahrouss (amlal@nekernel.org) -// Licensed under the Apache License, Version 2.0 (See accompanying -// file LICENSE or copy at http://www.apache.org/licenses/LICENSE-2.0) -// Official repository: https://github.com/nekernel-org/nectar - -#ifndef NECTAR_LIBCXX_BASE_EXCEPTION_H -#define NECTAR_LIBCXX_BASE_EXCEPTION_H - -#include <LibC++/__abi.h> -#include <LibC++/base_process.h> -#include <LibC++/defines.h> -#include <iostream> - -/// @author Amlal El Mahrouss (amlal@nekernel.org) - -namespace std::base_exception::abi { -inline constexpr int __terminate_id = 33; - -/// @note This function is internal, don't call it. -extern void __unwind_object_list(); - -inline void __throw_general(const char* what) { - std::cout << "LibC++: Unwinding exception of kind: " << what << ", aborting here..." << std::endl; - __unwind_object_list(); - base_process::exit(__terminate_id); -} - -inline void __throw_domain_error(const char* what) { - __throw_general(what); - __builtin_unreachable(); // prevent from continuing. -} - -inline void __throw_bad_array_new_length(const char* what) { - __throw_general(what); - __builtin_unreachable(); // prevent from continuing. -} -} // namespace std::base_exception::abi - -#endif // NECTAR_LIBCXX_BASE_EXCEPTION_H |
