13956a34eSLouis Dionne //===----------------------------------------------------------------------===// 23956a34eSLouis Dionne // 33956a34eSLouis Dionne // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 43956a34eSLouis Dionne // See https://llvm.org/LICENSE.txt for license information. 53956a34eSLouis Dionne // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 63956a34eSLouis Dionne // 73956a34eSLouis Dionne //===----------------------------------------------------------------------===// 83956a34eSLouis Dionne 92583946eSLouis Dionne #include <__verbose_abort> 103956a34eSLouis Dionne #include <new> 113956a34eSLouis Dionne 123956a34eSLouis Dionne namespace std { // purposefully not versioned 133956a34eSLouis Dionne 143956a34eSLouis Dionne #ifndef __GLIBCXX__ 153956a34eSLouis Dionne const nothrow_t nothrow{}; 163956a34eSLouis Dionne #endif 173956a34eSLouis Dionne 183956a34eSLouis Dionne #ifndef LIBSTDCXX 193956a34eSLouis Dionne 203956a34eSLouis Dionne void __throw_bad_alloc() { 21*ba87515fSNikolas Klauser # if _LIBCPP_HAS_EXCEPTIONS 223956a34eSLouis Dionne throw bad_alloc(); 233956a34eSLouis Dionne # else 242583946eSLouis Dionne _LIBCPP_VERBOSE_ABORT("bad_alloc was thrown in -fno-exceptions mode"); 253956a34eSLouis Dionne # endif 263956a34eSLouis Dionne } 273956a34eSLouis Dionne 283956a34eSLouis Dionne #endif // !LIBSTDCXX 293956a34eSLouis Dionne 303956a34eSLouis Dionne } // namespace std 31