64 lines · plain
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-exception7//8//===----------------------------------------------------------------------===//9 10#include <__verbose_abort>11#include <exception>12 13namespace std {14 15exception_ptr::~exception_ptr() noexcept {16#warning exception_ptr not yet implemented17 __libcpp_verbose_abort("exception_ptr not yet implemented\n");18}19 20exception_ptr::exception_ptr(const exception_ptr& other) noexcept : __ptr_(other.__ptr_) {21#warning exception_ptr not yet implemented22 __libcpp_verbose_abort("exception_ptr not yet implemented\n");23}24 25exception_ptr& exception_ptr::operator=(const exception_ptr& other) noexcept {26#warning exception_ptr not yet implemented27 __libcpp_verbose_abort("exception_ptr not yet implemented\n");28}29 30exception_ptr exception_ptr::__from_native_exception_pointer(void *__e) noexcept {31#warning exception_ptr not yet implemented32 __libcpp_verbose_abort("exception_ptr not yet implemented\n");33}34 35nested_exception::nested_exception() noexcept : __ptr_(current_exception()) {}36 37#if !defined(__GLIBCXX__)38 39nested_exception::~nested_exception() noexcept {}40 41#endif42 43[[noreturn]] void nested_exception::rethrow_nested() const {44#warning exception_ptr not yet implemented45 __libcpp_verbose_abort("exception_ptr not yet implemented\n");46#if 047 if (__ptr_ == nullptr)48 terminate();49 rethrow_exception(__ptr_);50#endif // FIXME51}52 53exception_ptr current_exception() noexcept {54#warning exception_ptr not yet implemented55 __libcpp_verbose_abort("exception_ptr not yet implemented\n");56}57 58[[noreturn]] void rethrow_exception(exception_ptr p) {59#warning exception_ptr not yet implemented60 __libcpp_verbose_abort("exception_ptr not yet implemented\n");61}62 63} // namespace std64