new (0b57cec536236d46e3dba9bd041533462f33dbb7) | new (e40139ff33b48b56a24c808b166b04b8ee6f5b21) |
---|---|
1// -*- C++ -*- 2//===----------------------------- new ------------------------------------===// 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//===----------------------------------------------------------------------===// --- 25 unchanged lines hidden (view full) --- 34 35enum class align_val_t : size_t {}; // C++17 36 37struct destroying_delete_t { // C++20 38 explicit destroying_delete_t() = default; 39}; 40inline constexpr destroying_delete_t destroying_delete{}; // C++20 41 | 1// -*- C++ -*- 2//===----------------------------- new ------------------------------------===// 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//===----------------------------------------------------------------------===// --- 25 unchanged lines hidden (view full) --- 34 35enum class align_val_t : size_t {}; // C++17 36 37struct destroying_delete_t { // C++20 38 explicit destroying_delete_t() = default; 39}; 40inline constexpr destroying_delete_t destroying_delete{}; // C++20 41 |
42struct nothrow_t {}; | 42struct nothrow_t { explicit nothrow_t() = default; }; |
43extern const nothrow_t nothrow; 44typedef void (*new_handler)(); 45new_handler set_new_handler(new_handler new_p) noexcept; 46new_handler get_new_handler() noexcept; 47 48// 21.6.4, pointer optimization barrier 49template <class T> constexpr T* launder(T* p) noexcept; // C++17 50} // std --- 70 unchanged lines hidden (view full) --- 121 __has_builtin(__builtin_operator_new) < 201802L 122#define _LIBCPP_HAS_NO_BUILTIN_OVERLOADED_OPERATOR_NEW_DELETE 123#endif 124 125namespace std // purposefully not using versioning namespace 126{ 127 128#if !defined(_LIBCPP_ABI_VCRUNTIME) | 43extern const nothrow_t nothrow; 44typedef void (*new_handler)(); 45new_handler set_new_handler(new_handler new_p) noexcept; 46new_handler get_new_handler() noexcept; 47 48// 21.6.4, pointer optimization barrier 49template <class T> constexpr T* launder(T* p) noexcept; // C++17 50} // std --- 70 unchanged lines hidden (view full) --- 121 __has_builtin(__builtin_operator_new) < 201802L 122#define _LIBCPP_HAS_NO_BUILTIN_OVERLOADED_OPERATOR_NEW_DELETE 123#endif 124 125namespace std // purposefully not using versioning namespace 126{ 127 128#if !defined(_LIBCPP_ABI_VCRUNTIME) |
129struct _LIBCPP_TYPE_VIS nothrow_t {}; | 129struct _LIBCPP_TYPE_VIS nothrow_t { explicit nothrow_t() = default; }; |
130extern _LIBCPP_FUNC_VIS const nothrow_t nothrow; 131 132class _LIBCPP_EXCEPTION_ABI bad_alloc 133 : public exception 134{ 135public: 136 bad_alloc() _NOEXCEPT; 137 virtual ~bad_alloc() _NOEXCEPT; --- 235 unchanged lines hidden --- | 130extern _LIBCPP_FUNC_VIS const nothrow_t nothrow; 131 132class _LIBCPP_EXCEPTION_ABI bad_alloc 133 : public exception 134{ 135public: 136 bad_alloc() _NOEXCEPT; 137 virtual ~bad_alloc() _NOEXCEPT; --- 235 unchanged lines hidden --- |