1// -*- C++ -*- 2//===----------------------------------------------------------------------===// 3// 4// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 5// See https://llvm.org/LICENSE.txt for license information. 6// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 7// 8//===----------------------------------------------------------------------===// 9 10#include <__verbose_abort> 11 12namespace std { 13 14exception_ptr::~exception_ptr() noexcept { 15#warning exception_ptr not yet implemented 16 __libcpp_verbose_abort("exception_ptr not yet implemented\n"); 17} 18 19exception_ptr::exception_ptr(const exception_ptr& other) noexcept : __ptr_(other.__ptr_) { 20#warning exception_ptr not yet implemented 21 __libcpp_verbose_abort("exception_ptr not yet implemented\n"); 22} 23 24exception_ptr& exception_ptr::operator=(const exception_ptr& other) noexcept { 25#warning exception_ptr not yet implemented 26 __libcpp_verbose_abort("exception_ptr not yet implemented\n"); 27} 28 29exception_ptr exception_ptr::__from_native_exception_pointer(void *__e) noexcept { 30#warning exception_ptr not yet implemented 31 __libcpp_verbose_abort("exception_ptr not yet implemented\n"); 32} 33 34nested_exception::nested_exception() noexcept : __ptr_(current_exception()) {} 35 36#if !defined(__GLIBCXX__) 37 38nested_exception::~nested_exception() noexcept {} 39 40#endif 41 42[[noreturn]] void nested_exception::rethrow_nested() const { 43#warning exception_ptr not yet implemented 44 __libcpp_verbose_abort("exception_ptr not yet implemented\n"); 45#if 0 46 if (__ptr_ == nullptr) 47 terminate(); 48 rethrow_exception(__ptr_); 49#endif // FIXME 50} 51 52exception_ptr current_exception() noexcept { 53#warning exception_ptr not yet implemented 54 __libcpp_verbose_abort("exception_ptr not yet implemented\n"); 55} 56 57[[noreturn]] void rethrow_exception(exception_ptr p) { 58#warning exception_ptr not yet implemented 59 __libcpp_verbose_abort("exception_ptr not yet implemented\n"); 60} 61 62} // namespace std 63