Revert "[libc++] Granularize the rest of memory"

Breaks buildbots.

This reverts commit 30adaa730c.
This commit is contained in:
Vitaly Buka 2022-09-02 19:35:10 -07:00
parent 211817d3be
commit bc8fd9c633
113 changed files with 183 additions and 571 deletions

View File

@ -379,7 +379,6 @@ set(files
__locale __locale
__mbstate_t.h __mbstate_t.h
__memory/addressof.h __memory/addressof.h
__memory/align.h
__memory/allocate_at_least.h __memory/allocate_at_least.h
__memory/allocation_guard.h __memory/allocation_guard.h
__memory/allocator.h __memory/allocator.h
@ -387,18 +386,15 @@ set(files
__memory/allocator_traits.h __memory/allocator_traits.h
__memory/assume_aligned.h __memory/assume_aligned.h
__memory/auto_ptr.h __memory/auto_ptr.h
__memory/builtin_new_allocator.h
__memory/compressed_pair.h __memory/compressed_pair.h
__memory/concepts.h __memory/concepts.h
__memory/construct_at.h __memory/construct_at.h
__memory/destruct_n.h
__memory/pointer_traits.h __memory/pointer_traits.h
__memory/ranges_construct_at.h __memory/ranges_construct_at.h
__memory/ranges_uninitialized_algorithms.h __memory/ranges_uninitialized_algorithms.h
__memory/raw_storage_iterator.h __memory/raw_storage_iterator.h
__memory/shared_ptr.h __memory/shared_ptr.h
__memory/swap_allocator.h __memory/swap_allocator.h
__memory/temp_value.h
__memory/temporary_buffer.h __memory/temporary_buffer.h
__memory/uninitialized_algorithms.h __memory/uninitialized_algorithms.h
__memory/unique_ptr.h __memory/unique_ptr.h
@ -541,7 +537,6 @@ set(files
__type_traits/integral_constant.h __type_traits/integral_constant.h
__type_traits/is_abstract.h __type_traits/is_abstract.h
__type_traits/is_aggregate.h __type_traits/is_aggregate.h
__type_traits/is_allocator.h
__type_traits/is_arithmetic.h __type_traits/is_arithmetic.h
__type_traits/is_array.h __type_traits/is_array.h
__type_traits/is_assignable.h __type_traits/is_assignable.h
@ -624,7 +619,6 @@ set(files
__type_traits/maybe_const.h __type_traits/maybe_const.h
__type_traits/nat.h __type_traits/nat.h
__type_traits/negation.h __type_traits/negation.h
__type_traits/noexcept_move_assign_container.h
__type_traits/promote.h __type_traits/promote.h
__type_traits/rank.h __type_traits/rank.h
__type_traits/remove_all_extents.h __type_traits/remove_all_extents.h

View File

@ -23,11 +23,7 @@
#include <__iterator/distance.h> #include <__iterator/distance.h>
#include <__iterator/iterator_traits.h> #include <__iterator/iterator_traits.h>
#include <__iterator/reverse_iterator.h> #include <__iterator/reverse_iterator.h>
#include <__memory/destruct_n.h> #include <memory>
#include <__memory/temporary_buffer.h>
#include <__memory/unique_ptr.h>
#include <__utility/pair.h>
#include <new>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header # pragma GCC system_header

View File

@ -18,7 +18,6 @@
#include <__ranges/concepts.h> #include <__ranges/concepts.h>
#include <__ranges/dangling.h> #include <__ranges/dangling.h>
#include <__utility/move.h> #include <__utility/move.h>
#include <__utility/pair.h>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header # pragma GCC system_header

View File

@ -24,7 +24,6 @@
#include <__ranges/subrange.h> #include <__ranges/subrange.h>
#include <__utility/forward.h> #include <__utility/forward.h>
#include <__utility/move.h> #include <__utility/move.h>
#include <__utility/pair.h>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header # pragma GCC system_header

View File

@ -21,7 +21,6 @@
#include <__ranges/access.h> #include <__ranges/access.h>
#include <__ranges/concepts.h> #include <__ranges/concepts.h>
#include <__ranges/subrange.h> #include <__ranges/subrange.h>
#include <__utility/pair.h>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header # pragma GCC system_header

View File

@ -23,7 +23,6 @@
#include <__ranges/concepts.h> #include <__ranges/concepts.h>
#include <__utility/forward.h> #include <__utility/forward.h>
#include <__utility/move.h> #include <__utility/move.h>
#include <__utility/pair.h>
#include <initializer_list> #include <initializer_list>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)

View File

@ -22,7 +22,6 @@
#include <__ranges/concepts.h> #include <__ranges/concepts.h>
#include <__ranges/dangling.h> #include <__ranges/dangling.h>
#include <__utility/move.h> #include <__utility/move.h>
#include <__utility/pair.h>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header # pragma GCC system_header

View File

@ -27,7 +27,6 @@
#include <__ranges/dangling.h> #include <__ranges/dangling.h>
#include <__utility/forward.h> #include <__utility/forward.h>
#include <__utility/move.h> #include <__utility/move.h>
#include <__utility/pair.h>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header # pragma GCC system_header

View File

@ -24,7 +24,6 @@
#include <__ranges/concepts.h> #include <__ranges/concepts.h>
#include <__ranges/dangling.h> #include <__ranges/dangling.h>
#include <__utility/move.h> #include <__utility/move.h>
#include <__utility/pair.h>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header # pragma GCC system_header

View File

@ -26,7 +26,6 @@
#include <__ranges/subrange.h> #include <__ranges/subrange.h>
#include <__utility/forward.h> #include <__utility/forward.h>
#include <__utility/move.h> #include <__utility/move.h>
#include <__utility/pair.h>
#include <type_traits> #include <type_traits>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)

View File

@ -22,7 +22,6 @@
#include <__ranges/concepts.h> #include <__ranges/concepts.h>
#include <__ranges/dangling.h> #include <__ranges/dangling.h>
#include <__utility/move.h> #include <__utility/move.h>
#include <__utility/pair.h>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header # pragma GCC system_header

View File

@ -22,7 +22,6 @@
#include <__ranges/concepts.h> #include <__ranges/concepts.h>
#include <__ranges/size.h> #include <__ranges/size.h>
#include <__ranges/subrange.h> #include <__ranges/subrange.h>
#include <__utility/pair.h>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header # pragma GCC system_header

View File

@ -25,7 +25,6 @@
#include <__ranges/size.h> #include <__ranges/size.h>
#include <__ranges/subrange.h> #include <__ranges/subrange.h>
#include <__utility/move.h> #include <__utility/move.h>
#include <__utility/pair.h>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header # pragma GCC system_header

View File

@ -23,7 +23,6 @@
#include <__ranges/dangling.h> #include <__ranges/dangling.h>
#include <__type_traits/decay.h> #include <__type_traits/decay.h>
#include <__utility/move.h> #include <__utility/move.h>
#include <__utility/pair.h>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header # pragma GCC system_header

View File

@ -26,7 +26,6 @@
#include <__ranges/subrange.h> #include <__ranges/subrange.h>
#include <__utility/forward.h> #include <__utility/forward.h>
#include <__utility/move.h> #include <__utility/move.h>
#include <__utility/pair.h>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header # pragma GCC system_header

View File

@ -27,7 +27,6 @@
#include <__ranges/dangling.h> #include <__ranges/dangling.h>
#include <__utility/forward.h> #include <__utility/forward.h>
#include <__utility/move.h> #include <__utility/move.h>
#include <__utility/pair.h>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header # pragma GCC system_header

View File

@ -15,7 +15,6 @@
#include <__config> #include <__config>
#include <__iterator/iterator_traits.h> #include <__iterator/iterator_traits.h>
#include <__utility/move.h> #include <__utility/move.h>
#include <__utility/pair.h>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header # pragma GCC system_header

View File

@ -15,7 +15,6 @@
#include <__config> #include <__config>
#include <__iterator/iterator_traits.h> #include <__iterator/iterator_traits.h>
#include <__utility/move.h> #include <__utility/move.h>
#include <__utility/pair.h>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header # pragma GCC system_header

View File

@ -22,9 +22,8 @@
#include <__functional/operations.h> #include <__functional/operations.h>
#include <__functional/ranges_operations.h> #include <__functional/ranges_operations.h>
#include <__iterator/iterator_traits.h> #include <__iterator/iterator_traits.h>
#include <__memory/destruct_n.h>
#include <__memory/unique_ptr.h>
#include <climits> #include <climits>
#include <memory>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header # pragma GCC system_header

View File

@ -15,11 +15,7 @@
#include <__iterator/advance.h> #include <__iterator/advance.h>
#include <__iterator/distance.h> #include <__iterator/distance.h>
#include <__iterator/iterator_traits.h> #include <__iterator/iterator_traits.h>
#include <__memory/destruct_n.h> #include <memory>
#include <__memory/temporary_buffer.h>
#include <__memory/unique_ptr.h>
#include <__utility/pair.h>
#include <new>
#include <type_traits> #include <type_traits>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)

View File

@ -16,12 +16,8 @@
#include <__algorithm/sort.h> #include <__algorithm/sort.h>
#include <__config> #include <__config>
#include <__iterator/iterator_traits.h> #include <__iterator/iterator_traits.h>
#include <__memory/destruct_n.h>
#include <__memory/temporary_buffer.h>
#include <__memory/unique_ptr.h>
#include <__utility/move.h> #include <__utility/move.h>
#include <__utility/pair.h> #include <memory>
#include <new>
#include <type_traits> #include <type_traits>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)

View File

@ -13,6 +13,7 @@
#ifndef _LIBCPP___BSD_LOCALE_FALLBACKS_H #ifndef _LIBCPP___BSD_LOCALE_FALLBACKS_H
#define _LIBCPP___BSD_LOCALE_FALLBACKS_H #define _LIBCPP___BSD_LOCALE_FALLBACKS_H
#include <memory>
#include <stdarg.h> #include <stdarg.h>
#include <stdlib.h> #include <stdlib.h>

View File

@ -14,7 +14,6 @@
#include <__config> #include <__config>
#include <__filesystem/path.h> #include <__filesystem/path.h>
#include <__memory/shared_ptr.h> #include <__memory/shared_ptr.h>
#include <__utility/forward.h>
#include <iosfwd> #include <iosfwd>
#include <new> #include <new>
#include <system_error> #include <system_error>

View File

@ -19,7 +19,6 @@
#include <__config> #include <__config>
#include <__format/concepts.h> #include <__format/concepts.h>
#include <__format/format_arg.h> #include <__format/format_arg.h>
#include <__utility/forward.h>
#include <cstring> #include <cstring>
#include <string> #include <string>
#include <string_view> #include <string_view>

View File

@ -17,20 +17,15 @@
#include <__functional/unary_function.h> #include <__functional/unary_function.h>
#include <__iterator/iterator_traits.h> #include <__iterator/iterator_traits.h>
#include <__memory/addressof.h> #include <__memory/addressof.h>
#include <__memory/allocator.h>
#include <__memory/allocator_traits.h> #include <__memory/allocator_traits.h>
#include <__memory/builtin_new_allocator.h>
#include <__memory/compressed_pair.h> #include <__memory/compressed_pair.h>
#include <__memory/shared_ptr.h> #include <__memory/shared_ptr.h>
#include <__memory/unique_ptr.h>
#include <__utility/forward.h> #include <__utility/forward.h>
#include <__utility/move.h> #include <__utility/move.h>
#include <__utility/piecewise_construct.h>
#include <__utility/swap.h> #include <__utility/swap.h>
#include <exception> #include <exception>
#include <tuple> #include <memory> // TODO: replace with <__memory/__builtin_new_allocator.h>
#include <type_traits> #include <type_traits>
#include <typeinfo>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header # pragma GCC system_header

View File

@ -18,20 +18,12 @@
#include <__debug> #include <__debug>
#include <__functional/hash.h> #include <__functional/hash.h>
#include <__iterator/iterator_traits.h> #include <__iterator/iterator_traits.h>
#include <__memory/addressof.h>
#include <__memory/allocator_traits.h>
#include <__memory/compressed_pair.h>
#include <__memory/pointer_traits.h>
#include <__memory/swap_allocator.h> #include <__memory/swap_allocator.h>
#include <__memory/unique_ptr.h>
#include <__type_traits/can_extract_key.h> #include <__type_traits/can_extract_key.h>
#include <__utility/forward.h>
#include <__utility/move.h>
#include <__utility/pair.h>
#include <__utility/swap.h> #include <__utility/swap.h>
#include <cmath> #include <cmath>
#include <cstring>
#include <initializer_list> #include <initializer_list>
#include <memory>
#include <type_traits> #include <type_traits>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)

View File

@ -12,10 +12,10 @@
#include <__availability> #include <__availability>
#include <__config> #include <__config>
#include <__memory/shared_ptr.h>
#include <cctype> #include <cctype>
#include <cstdint> #include <cstdint>
#include <locale.h> #include <locale.h>
#include <memory>
#include <mutex> #include <mutex>
#include <string> #include <string>

View File

@ -1,25 +0,0 @@
//===----------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
#ifndef _LIBCPP___MEMORY_ALIGN_H
#define _LIBCPP___MEMORY_ALIGN_H
#include <__config>
#include <cstddef>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header
#endif
_LIBCPP_BEGIN_NAMESPACE_STD
_LIBCPP_FUNC_VIS void* align(size_t __align, size_t __sz, void*& __ptr, size_t& __space);
_LIBCPP_END_NAMESPACE_STD
#endif // _LIBCPP___MEMORY_ALIGN_H

View File

@ -1,70 +0,0 @@
//===----------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
#ifndef _LIBCPP___MEMORY_BUILTIN_NEW_ALLOCATOR_H
#define _LIBCPP___MEMORY_BUILTIN_NEW_ALLOCATOR_H
#include <__config>
#include <__memory/unique_ptr.h>
#include <cstddef>
#include <new>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header
#endif
_LIBCPP_BEGIN_NAMESPACE_STD
// __builtin_new_allocator -- A non-templated helper for allocating and
// deallocating memory using __builtin_operator_new and
// __builtin_operator_delete. It should be used in preference to
// `std::allocator<T>` to avoid additional instantiations.
struct __builtin_new_allocator {
struct __builtin_new_deleter {
typedef void* pointer_type;
_LIBCPP_CONSTEXPR explicit __builtin_new_deleter(size_t __size, size_t __align)
: __size_(__size), __align_(__align) {}
void operator()(void* __p) const _NOEXCEPT {
_VSTD::__libcpp_deallocate(__p, __size_, __align_);
}
private:
size_t __size_;
size_t __align_;
};
typedef unique_ptr<void, __builtin_new_deleter> __holder_t;
static __holder_t __allocate_bytes(size_t __s, size_t __align) {
return __holder_t(_VSTD::__libcpp_allocate(__s, __align),
__builtin_new_deleter(__s, __align));
}
static void __deallocate_bytes(void* __p, size_t __s,
size_t __align) _NOEXCEPT {
_VSTD::__libcpp_deallocate(__p, __s, __align);
}
template <class _Tp>
_LIBCPP_NODEBUG _LIBCPP_ALWAYS_INLINE
static __holder_t __allocate_type(size_t __n) {
return __allocate_bytes(__n * sizeof(_Tp), _LIBCPP_ALIGNOF(_Tp));
}
template <class _Tp>
_LIBCPP_NODEBUG _LIBCPP_ALWAYS_INLINE
static void __deallocate_type(void* __p, size_t __n) _NOEXCEPT {
__deallocate_bytes(__p, __n * sizeof(_Tp), _LIBCPP_ALIGNOF(_Tp));
}
};
_LIBCPP_END_NAMESPACE_STD
#endif // _LIBCPP___MEMORY_BUILTIN_NEW_ALLOCATOR_H

View File

@ -17,7 +17,6 @@
#include <__memory/voidify.h> #include <__memory/voidify.h>
#include <__utility/forward.h> #include <__utility/forward.h>
#include <__utility/move.h> #include <__utility/move.h>
#include <new>
#include <type_traits> #include <type_traits>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)

View File

@ -1,64 +0,0 @@
//===----------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
#ifndef _LIBCPP___MEMORY_DESTRUCT_N_H
#define _LIBCPP___MEMORY_DESTRUCT_N_H
#include <__config>
#include <__type_traits/integral_constant.h>
#include <__type_traits/is_trivially_destructible.h>
#include <cstddef>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header
#endif
_LIBCPP_BEGIN_NAMESPACE_STD
struct __destruct_n
{
private:
size_t __size_;
template <class _Tp>
_LIBCPP_INLINE_VISIBILITY void __process(_Tp* __p, false_type) _NOEXCEPT
{for (size_t __i = 0; __i < __size_; ++__i, ++__p) __p->~_Tp();}
template <class _Tp>
_LIBCPP_INLINE_VISIBILITY void __process(_Tp*, true_type) _NOEXCEPT
{}
_LIBCPP_INLINE_VISIBILITY void __incr(false_type) _NOEXCEPT
{++__size_;}
_LIBCPP_INLINE_VISIBILITY void __incr(true_type) _NOEXCEPT
{}
_LIBCPP_INLINE_VISIBILITY void __set(size_t __s, false_type) _NOEXCEPT
{__size_ = __s;}
_LIBCPP_INLINE_VISIBILITY void __set(size_t, true_type) _NOEXCEPT
{}
public:
_LIBCPP_INLINE_VISIBILITY explicit __destruct_n(size_t __s) _NOEXCEPT
: __size_(__s) {}
template <class _Tp>
_LIBCPP_INLINE_VISIBILITY void __incr() _NOEXCEPT
{__incr(integral_constant<bool, is_trivially_destructible<_Tp>::value>());}
template <class _Tp>
_LIBCPP_INLINE_VISIBILITY void __set(size_t __s, _Tp*) _NOEXCEPT
{__set(__s, integral_constant<bool, is_trivially_destructible<_Tp>::value>());}
template <class _Tp>
_LIBCPP_INLINE_VISIBILITY void operator()(_Tp* __p) _NOEXCEPT
{__process(__p, integral_constant<bool, is_trivially_destructible<_Tp>::value>());}
};
_LIBCPP_END_NAMESPACE_STD
#endif // _LIBCPP___MEMORY_DESTRUCT_N_H

View File

@ -22,7 +22,6 @@
#include <__utility/declval.h> #include <__utility/declval.h>
#include <__utility/forward.h> #include <__utility/forward.h>
#include <__utility/move.h> #include <__utility/move.h>
#include <new>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header # pragma GCC system_header

View File

@ -24,7 +24,6 @@
#include <__ranges/concepts.h> #include <__ranges/concepts.h>
#include <__ranges/dangling.h> #include <__ranges/dangling.h>
#include <__utility/move.h> #include <__utility/move.h>
#include <new>
#include <type_traits> #include <type_traits>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)

View File

@ -16,7 +16,6 @@
#include <__memory/addressof.h> #include <__memory/addressof.h>
#include <__utility/move.h> #include <__utility/move.h>
#include <cstddef> #include <cstddef>
#include <new>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header # pragma GCC system_header

View File

@ -34,7 +34,6 @@
#include <cstddef> #include <cstddef>
#include <cstdlib> // abort #include <cstdlib> // abort
#include <iosfwd> #include <iosfwd>
#include <new>
#include <stdexcept> #include <stdexcept>
#include <type_traits> #include <type_traits>
#include <typeinfo> #include <typeinfo>

View File

@ -1,56 +0,0 @@
//===----------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
#ifndef _LIBCPP___MEMORY_TEMP_VALUE_H
#define _LIBCPP___MEMORY_TEMP_VALUE_H
#include <__config>
#include <__memory/addressof.h>
#include <__memory/allocator_traits.h>
#include <__type_traits/aligned_storage.h>
#include <__utility/forward.h>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header
#endif
_LIBCPP_BEGIN_NAMESPACE_STD
template <class _Tp, class _Alloc>
struct __temp_value {
typedef allocator_traits<_Alloc> _Traits;
#ifdef _LIBCPP_CXX03_LANG
typename aligned_storage<sizeof(_Tp), _LIBCPP_ALIGNOF(_Tp)>::type __v;
#else
union { _Tp __v; };
#endif
_Alloc &__a;
_LIBCPP_CONSTEXPR_SINCE_CXX20 _Tp *__addr() {
#ifdef _LIBCPP_CXX03_LANG
return reinterpret_cast<_Tp*>(std::addressof(__v));
#else
return std::addressof(__v);
#endif
}
_LIBCPP_CONSTEXPR_SINCE_CXX20 _Tp & get() { return *__addr(); }
template<class... _Args>
_LIBCPP_NO_CFI
_LIBCPP_CONSTEXPR_SINCE_CXX20 __temp_value(_Alloc &__alloc, _Args&& ... __args) : __a(__alloc) {
_Traits::construct(__a, __addr(), std::forward<_Args>(__args)...);
}
_LIBCPP_CONSTEXPR_SINCE_CXX20 ~__temp_value() { _Traits::destroy(__a, __addr()); }
};
_LIBCPP_END_NAMESPACE_STD
#endif // _LIBCPP___MEMORY_TEMP_VALUE_H

View File

@ -24,7 +24,6 @@
#include <__utility/move.h> #include <__utility/move.h>
#include <__utility/pair.h> #include <__utility/pair.h>
#include <__utility/transaction.h> #include <__utility/transaction.h>
#include <new>
#include <type_traits> #include <type_traits>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)

View File

@ -60,8 +60,7 @@ public:
#include <__assert> #include <__assert>
#include <__config> #include <__config>
#include <__memory/allocator_traits.h> #include <memory>
#include <__memory/pointer_traits.h>
#include <optional> #include <optional>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)

View File

@ -17,15 +17,11 @@
#include <__iterator/distance.h> #include <__iterator/distance.h>
#include <__iterator/iterator_traits.h> #include <__iterator/iterator_traits.h>
#include <__iterator/move_iterator.h> #include <__iterator/move_iterator.h>
#include <__memory/allocate_at_least.h>
#include <__memory/allocator.h> #include <__memory/allocator.h>
#include <__memory/allocator_traits.h>
#include <__memory/compressed_pair.h> #include <__memory/compressed_pair.h>
#include <__memory/pointer_traits.h>
#include <__memory/shared_ptr.h>
#include <__memory/swap_allocator.h> #include <__memory/swap_allocator.h>
#include <__utility/forward.h> #include <__utility/forward.h>
#include <__utility/move.h> #include <memory>
#include <type_traits> #include <type_traits>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)

View File

@ -17,17 +17,12 @@
#include <__iterator/distance.h> #include <__iterator/distance.h>
#include <__iterator/iterator_traits.h> #include <__iterator/iterator_traits.h>
#include <__iterator/next.h> #include <__iterator/next.h>
#include <__memory/allocator_traits.h>
#include <__memory/compressed_pair.h>
#include <__memory/pointer_traits.h>
#include <__memory/swap_allocator.h> #include <__memory/swap_allocator.h>
#include <__memory/unique_ptr.h>
#include <__type_traits/can_extract_key.h> #include <__type_traits/can_extract_key.h>
#include <__utility/forward.h> #include <__utility/forward.h>
#include <__utility/move.h>
#include <__utility/pair.h>
#include <__utility/swap.h> #include <__utility/swap.h>
#include <limits> #include <limits>
#include <memory>
#include <stdexcept> #include <stdexcept>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)

View File

@ -1,36 +0,0 @@
//===----------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
#ifndef _LIBCPP___TYPE_IS_ALLOCATOR_H
#define _LIBCPP___TYPE_IS_ALLOCATOR_H
#include <__config>
#include <__type_traits/integral_constant.h>
#include <__type_traits/void_t.h>
#include <__utility/declval.h>
#include <cstddef>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header
#endif
_LIBCPP_BEGIN_NAMESPACE_STD
template<typename _Alloc, typename = void, typename = void>
struct __is_allocator : false_type {};
template<typename _Alloc>
struct __is_allocator<_Alloc,
typename __void_t<typename _Alloc::value_type>::type,
typename __void_t<decltype(declval<_Alloc&>().allocate(size_t(0)))>::type
>
: true_type {};
_LIBCPP_END_NAMESPACE_STD
#endif // _LIBCPP___TYPE_IS_ALLOCATOR_H

View File

@ -1,34 +0,0 @@
//===----------------------------------------------------------------------===//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
#ifndef _LIBCPP___TYPE_TRAITS_NOEXCEPT_MOVE_ASSIGN_CONTAINER_H
#define _LIBCPP___TYPE_TRAITS_NOEXCEPT_MOVE_ASSIGN_CONTAINER_H
#include <__config>
#include <__memory/allocator_traits.h>
#include <__type_traits/integral_constant.h>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header
#endif
_LIBCPP_BEGIN_NAMESPACE_STD
template <typename _Alloc, typename _Traits=allocator_traits<_Alloc> >
struct __noexcept_move_assign_container : public integral_constant<bool,
_Traits::propagate_on_container_move_assignment::value
#if _LIBCPP_STD_VER > 14
|| _Traits::is_always_equal::value
#else
&& is_nothrow_move_assignable<_Alloc>::value
#endif
> {};
_LIBCPP_END_NAMESPACE_STD
#endif // _LIBCPP___TYPE_TRAITS_NOEXCEPT_MOVE_ASSIGN_CONTAINER_H

View File

@ -1709,6 +1709,7 @@ template <class BidirectionalIterator, class Compare>
#include <__debug> #include <__debug>
#include <cstddef> #include <cstddef>
#include <cstring> #include <cstring>
#include <memory>
#include <type_traits> #include <type_traits>
#include <version> #include <version>
@ -1903,11 +1904,7 @@ template <class BidirectionalIterator, class Compare>
#endif #endif
#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 #if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
# include <atomic>
# include <chrono>
# include <iterator> # include <iterator>
# include <memory>
# include <stdexcept>
# include <utility> # include <utility>
#endif #endif
@ -1919,7 +1916,7 @@ template <class BidirectionalIterator, class Compare>
#endif #endif
#if defined(_LIBCPP_HAS_PARALLEL_ALGORITHMS) && _LIBCPP_STD_VER >= 17 #if defined(_LIBCPP_HAS_PARALLEL_ALGORITHMS) && _LIBCPP_STD_VER >= 17
# include <__pstl_algorithm> # include <__pstl_algorithm>
#endif #endif
#endif // _LIBCPP_ALGORITHM #endif // _LIBCPP_ALGORITHM

View File

@ -83,16 +83,13 @@ namespace std {
#include <__assert> // all public C++ headers provide the assertion handler #include <__assert> // all public C++ headers provide the assertion handler
#include <__availability> #include <__availability>
#include <__config> #include <__config>
#include <__memory/allocator.h>
#include <__memory/allocator_traits.h>
#include <__memory/shared_ptr.h>
#include <__memory/unique_ptr.h>
#include <__utility/forward.h> #include <__utility/forward.h>
#include <__utility/in_place.h> #include <__utility/in_place.h>
#include <__utility/move.h> #include <__utility/move.h>
#include <__utility/unreachable.h> #include <__utility/unreachable.h>
#include <cstdlib> #include <cstdlib>
#include <initializer_list> #include <initializer_list>
#include <memory>
#include <type_traits> #include <type_traits>
#include <typeinfo> #include <typeinfo>
#include <version> #include <version>
@ -101,13 +98,6 @@ namespace std {
# include <chrono> // IGNORE-CYCLE due to <format> # include <chrono> // IGNORE-CYCLE due to <format>
#endif #endif
#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
# include <chrono>
# include <iterator>
# include <memory>
# include <variant>
#endif
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header # pragma GCC system_header
#endif #endif

View File

@ -48,19 +48,10 @@ namespace std
#include <__assert> // all public C++ headers provide the assertion handler #include <__assert> // all public C++ headers provide the assertion handler
#include <__availability> #include <__availability>
#include <__config> #include <__config>
#include <__memory/unique_ptr.h>
#include <__thread/timed_backoff_policy.h> #include <__thread/timed_backoff_policy.h>
#include <__utility/move.h>
#include <atomic> #include <atomic>
#include <limits> #include <limits>
#include <memory>
#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES
# include <concepts>
# include <iterator>
# include <memory>
# include <stdexcept>
# include <variant>
#endif
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header # pragma GCC system_header

View File

@ -108,9 +108,8 @@ public:
#include <__assert> // all public C++ headers provide the assertion handler #include <__assert> // all public C++ headers provide the assertion handler
#include <__config> #include <__config>
#include <__memory/shared_ptr.h>
#include <__memory/unique_ptr.h>
#include <__mutex_base> #include <__mutex_base>
#include <memory>
#include <version> #include <version>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)

View File

@ -176,11 +176,7 @@ template <class T, class Allocator, class Predicate>
#include <__iterator/next.h> #include <__iterator/next.h>
#include <__iterator/prev.h> #include <__iterator/prev.h>
#include <__iterator/reverse_iterator.h> #include <__iterator/reverse_iterator.h>
#include <__memory/pointer_traits.h>
#include <__memory/temp_value.h>
#include <__memory/unique_ptr.h>
#include <__split_buffer> #include <__split_buffer>
#include <__type_traits/is_allocator.h>
#include <__utility/forward.h> #include <__utility/forward.h>
#include <__utility/move.h> #include <__utility/move.h>
#include <__utility/swap.h> #include <__utility/swap.h>

View File

@ -50,29 +50,10 @@ template <class P> struct hash<coroutine_handle<P>>;
#include <__functional/operations.h> #include <__functional/operations.h>
#include <cstddef> #include <cstddef>
#include <experimental/__config> #include <experimental/__config>
#include <memory> // for hash<T*>
#include <new> #include <new>
#include <type_traits> #include <type_traits>
#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES
# include <atomic>
# include <chrono>
# include <climits>
# include <cmath>
# include <compare>
# include <concepts>
# include <ctime>
# include <initializer_list>
# include <iosfwd>
# include <iterator>
# include <memory>
# include <ratio>
# include <stdexcept>
# include <tuple>
# include <typeinfo>
# include <utility>
# include <variant>
#endif
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header # pragma GCC system_header
#endif #endif

View File

@ -65,7 +65,6 @@ namespace pmr {
*/ */
#include <__assert> // all public C++ headers provide the assertion handler #include <__assert> // all public C++ headers provide the assertion handler
#include <__memory/allocator_traits.h>
#include <__tuple> #include <__tuple>
#include <__utility/move.h> #include <__utility/move.h>
#include <cstddef> #include <cstddef>
@ -73,24 +72,11 @@ namespace pmr {
#include <experimental/__config> #include <experimental/__config>
#include <experimental/__memory> #include <experimental/__memory>
#include <limits> #include <limits>
#include <memory>
#include <new> #include <new>
#include <stdexcept> #include <stdexcept>
#include <tuple>
#include <type_traits> #include <type_traits>
#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES
# include <atomic>
# include <chrono>
# include <climits>
# include <concepts>
# include <cstring>
# include <ctime>
# include <iterator>
# include <memory>
# include <ratio>
# include <variant>
#endif
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header # pragma GCC system_header
#endif #endif

View File

@ -188,18 +188,10 @@ template <class T, class Allocator, class Predicate>
#include <__iterator/iterator_traits.h> #include <__iterator/iterator_traits.h>
#include <__iterator/move_iterator.h> #include <__iterator/move_iterator.h>
#include <__iterator/next.h> #include <__iterator/next.h>
#include <__memory/addressof.h>
#include <__memory/allocator.h>
#include <__memory/allocator_traits.h>
#include <__memory/compressed_pair.h>
#include <__memory/pointer_traits.h>
#include <__memory/shared_ptr.h>
#include <__memory/swap_allocator.h> #include <__memory/swap_allocator.h>
#include <__memory/unique_ptr.h>
#include <__type_traits/is_allocator.h>
#include <__utility/forward.h> #include <__utility/forward.h>
#include <__utility/move.h>
#include <limits> #include <limits>
#include <memory>
#include <type_traits> #include <type_traits>
#include <version> #include <version>

View File

@ -192,7 +192,6 @@ typedef basic_fstream<wchar_t> wfstream;
#include <cstring> #include <cstring>
#include <istream> #include <istream>
#include <ostream> #include <ostream>
#include <typeinfo>
#include <version> #include <version>
#if !defined(_LIBCPP_HAS_NO_FILESYSTEM_LIBRARY) #if !defined(_LIBCPP_HAS_NO_FILESYSTEM_LIBRARY)

View File

@ -533,6 +533,7 @@ POLICY: For non-variadic implementations, the number of arguments is limited
#include <__utility/forward.h> #include <__utility/forward.h>
#include <concepts> #include <concepts>
#include <exception> #include <exception>
#include <memory>
#include <tuple> #include <tuple>
#include <type_traits> #include <type_traits>
#include <typeinfo> #include <typeinfo>

View File

@ -372,8 +372,8 @@ template <class R, class Alloc> struct uses_allocator<packaged_task<R>, Alloc>;
#include <__utility/forward.h> #include <__utility/forward.h>
#include <__utility/move.h> #include <__utility/move.h>
#include <exception> #include <exception>
#include <memory>
#include <mutex> #include <mutex>
#include <new>
#include <system_error> #include <system_error>
#include <thread> #include <thread>
#include <version> #include <version>

View File

@ -194,19 +194,12 @@ template <class T, class Allocator, class Predicate>
#include <__iterator/next.h> #include <__iterator/next.h>
#include <__iterator/prev.h> #include <__iterator/prev.h>
#include <__iterator/reverse_iterator.h> #include <__iterator/reverse_iterator.h>
#include <__memory/addressof.h>
#include <__memory/allocator.h>
#include <__memory/allocator_traits.h>
#include <__memory/compressed_pair.h>
#include <__memory/pointer_traits.h>
#include <__memory/shared_ptr.h>
#include <__memory/swap_allocator.h> #include <__memory/swap_allocator.h>
#include <__memory/unique_ptr.h>
#include <__type_traits/is_allocator.h>
#include <__utility/forward.h> #include <__utility/forward.h>
#include <__utility/move.h> #include <__utility/move.h>
#include <__utility/swap.h> #include <__utility/swap.h>
#include <limits> #include <limits>
#include <memory>
#include <type_traits> #include <type_traits>
#include <version> #include <version>

View File

@ -201,14 +201,13 @@ template <class charT> class messages_byname;
#include <__iterator/istreambuf_iterator.h> #include <__iterator/istreambuf_iterator.h>
#include <__iterator/ostreambuf_iterator.h> #include <__iterator/ostreambuf_iterator.h>
#include <__locale> #include <__locale>
#include <__memory/unique_ptr.h>
#include <cstdarg> // TODO: Remove this include #include <cstdarg> // TODO: Remove this include
#include <cstdio> #include <cstdio>
#include <cstdlib> #include <cstdlib>
#include <ctime> #include <ctime>
#include <ios> #include <ios>
#include <limits> #include <limits>
#include <new> #include <memory>
#include <streambuf> #include <streambuf>
#include <version> #include <version>

View File

@ -538,14 +538,11 @@ erase_if(multimap<Key, T, Compare, Allocator>& c, Predicate pred); // C++20
#include <__iterator/erase_if_container.h> #include <__iterator/erase_if_container.h>
#include <__iterator/iterator_traits.h> #include <__iterator/iterator_traits.h>
#include <__iterator/reverse_iterator.h> #include <__iterator/reverse_iterator.h>
#include <__memory/allocator.h>
#include <__node_handle> #include <__node_handle>
#include <__tree> #include <__tree>
#include <__type_traits/is_allocator.h>
#include <__utility/forward.h> #include <__utility/forward.h>
#include <__utility/piecewise_construct.h>
#include <__utility/swap.h> #include <__utility/swap.h>
#include <tuple> #include <memory>
#include <type_traits> #include <type_traits>
#include <version> #include <version>

View File

@ -852,10 +852,11 @@ template<size_t N, class T>
*/ */
#include <__algorithm/copy.h>
#include <__algorithm/move.h>
#include <__assert> // all public C++ headers provide the assertion handler #include <__assert> // all public C++ headers provide the assertion handler
#include <__config> #include <__config>
#include <__memory/addressof.h> #include <__memory/addressof.h>
#include <__memory/align.h>
#include <__memory/allocate_at_least.h> #include <__memory/allocate_at_least.h>
#include <__memory/allocation_guard.h> #include <__memory/allocation_guard.h>
#include <__memory/allocator.h> #include <__memory/allocator.h>
@ -875,19 +876,19 @@ template<size_t N, class T>
#include <__memory/uninitialized_algorithms.h> #include <__memory/uninitialized_algorithms.h>
#include <__memory/unique_ptr.h> #include <__memory/unique_ptr.h>
#include <__memory/uses_allocator.h> #include <__memory/uses_allocator.h>
#include <cstddef>
#include <cstdint>
#include <cstring>
#include <iosfwd>
#include <new>
#include <stdexcept>
#include <tuple>
#include <type_traits>
#include <typeinfo>
#include <version> #include <version>
#if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20 #if !defined(_LIBCPP_REMOVE_TRANSITIVE_INCLUDES) && _LIBCPP_STD_VER <= 20
# include <cstddef>
# include <cstdint>
# include <cstring>
# include <iosfwd>
# include <iterator> # include <iterator>
# include <new>
# include <stdexcept>
# include <tuple>
# include <type_traits>
# include <typeinfo>
# include <utility> # include <utility>
#endif #endif
@ -898,6 +899,147 @@ template<size_t N, class T>
# pragma GCC system_header # pragma GCC system_header
#endif #endif
_LIBCPP_BEGIN_NAMESPACE_STD
struct __destruct_n
{
private:
size_t __size_;
template <class _Tp>
_LIBCPP_INLINE_VISIBILITY void __process(_Tp* __p, false_type) _NOEXCEPT
{for (size_t __i = 0; __i < __size_; ++__i, ++__p) __p->~_Tp();}
template <class _Tp>
_LIBCPP_INLINE_VISIBILITY void __process(_Tp*, true_type) _NOEXCEPT
{}
_LIBCPP_INLINE_VISIBILITY void __incr(false_type) _NOEXCEPT
{++__size_;}
_LIBCPP_INLINE_VISIBILITY void __incr(true_type) _NOEXCEPT
{}
_LIBCPP_INLINE_VISIBILITY void __set(size_t __s, false_type) _NOEXCEPT
{__size_ = __s;}
_LIBCPP_INLINE_VISIBILITY void __set(size_t, true_type) _NOEXCEPT
{}
public:
_LIBCPP_INLINE_VISIBILITY explicit __destruct_n(size_t __s) _NOEXCEPT
: __size_(__s) {}
template <class _Tp>
_LIBCPP_INLINE_VISIBILITY void __incr() _NOEXCEPT
{__incr(integral_constant<bool, is_trivially_destructible<_Tp>::value>());}
template <class _Tp>
_LIBCPP_INLINE_VISIBILITY void __set(size_t __s, _Tp*) _NOEXCEPT
{__set(__s, integral_constant<bool, is_trivially_destructible<_Tp>::value>());}
template <class _Tp>
_LIBCPP_INLINE_VISIBILITY void operator()(_Tp* __p) _NOEXCEPT
{__process(__p, integral_constant<bool, is_trivially_destructible<_Tp>::value>());}
};
_LIBCPP_FUNC_VIS void* align(size_t __align, size_t __sz, void*& __ptr, size_t& __space);
template <typename _Alloc, typename _Traits=allocator_traits<_Alloc> >
struct __noexcept_move_assign_container : public integral_constant<bool,
_Traits::propagate_on_container_move_assignment::value
#if _LIBCPP_STD_VER > 14
|| _Traits::is_always_equal::value
#else
&& is_nothrow_move_assignable<_Alloc>::value
#endif
> {};
template <class _Tp, class _Alloc>
struct __temp_value {
typedef allocator_traits<_Alloc> _Traits;
#ifdef _LIBCPP_CXX03_LANG
typename aligned_storage<sizeof(_Tp), _LIBCPP_ALIGNOF(_Tp)>::type __v;
#else
union { _Tp __v; };
#endif
_Alloc &__a;
_LIBCPP_CONSTEXPR_SINCE_CXX20 _Tp *__addr() {
#ifdef _LIBCPP_CXX03_LANG
return reinterpret_cast<_Tp*>(std::addressof(__v));
#else
return std::addressof(__v);
#endif
}
_LIBCPP_CONSTEXPR_SINCE_CXX20 _Tp & get() { return *__addr(); }
template<class... _Args>
_LIBCPP_NO_CFI
_LIBCPP_CONSTEXPR_SINCE_CXX20 __temp_value(_Alloc &__alloc, _Args&& ... __args) : __a(__alloc) {
_Traits::construct(__a, __addr(), std::forward<_Args>(__args)...);
}
_LIBCPP_CONSTEXPR_SINCE_CXX20 ~__temp_value() { _Traits::destroy(__a, __addr()); }
};
template<typename _Alloc, typename = void, typename = void>
struct __is_allocator : false_type {};
template<typename _Alloc>
struct __is_allocator<_Alloc,
typename __void_t<typename _Alloc::value_type>::type,
typename __void_t<decltype(declval<_Alloc&>().allocate(size_t(0)))>::type
>
: true_type {};
// __builtin_new_allocator -- A non-templated helper for allocating and
// deallocating memory using __builtin_operator_new and
// __builtin_operator_delete. It should be used in preference to
// `std::allocator<T>` to avoid additional instantiations.
struct __builtin_new_allocator {
struct __builtin_new_deleter {
typedef void* pointer_type;
_LIBCPP_CONSTEXPR explicit __builtin_new_deleter(size_t __size, size_t __align)
: __size_(__size), __align_(__align) {}
void operator()(void* __p) const _NOEXCEPT {
_VSTD::__libcpp_deallocate(__p, __size_, __align_);
}
private:
size_t __size_;
size_t __align_;
};
typedef unique_ptr<void, __builtin_new_deleter> __holder_t;
static __holder_t __allocate_bytes(size_t __s, size_t __align) {
return __holder_t(_VSTD::__libcpp_allocate(__s, __align),
__builtin_new_deleter(__s, __align));
}
static void __deallocate_bytes(void* __p, size_t __s,
size_t __align) _NOEXCEPT {
_VSTD::__libcpp_deallocate(__p, __s, __align);
}
template <class _Tp>
_LIBCPP_NODEBUG _LIBCPP_ALWAYS_INLINE
static __holder_t __allocate_type(size_t __n) {
return __allocate_bytes(__n * sizeof(_Tp), _LIBCPP_ALIGNOF(_Tp));
}
template <class _Tp>
_LIBCPP_NODEBUG _LIBCPP_ALWAYS_INLINE
static void __deallocate_type(void* __p, size_t __n) _NOEXCEPT {
__deallocate_bytes(__p, __n * sizeof(_Tp), _LIBCPP_ALIGNOF(_Tp));
}
};
_LIBCPP_END_NAMESPACE_STD
#if defined(_LIBCPP_HAS_PARALLEL_ALGORITHMS) && _LIBCPP_STD_VER >= 17 #if defined(_LIBCPP_HAS_PARALLEL_ALGORITHMS) && _LIBCPP_STD_VER >= 17
# include <__pstl_memory> # include <__pstl_memory>
#endif #endif

View File

@ -834,7 +834,6 @@ module std [system] {
module __memory { module __memory {
module addressof { private header "__memory/addressof.h" } module addressof { private header "__memory/addressof.h" }
module align { private header "__memory/align.h" }
module allocate_at_least { private header "__memory/allocate_at_least.h" } module allocate_at_least { private header "__memory/allocate_at_least.h" }
module allocation_guard { private header "__memory/allocation_guard.h" } module allocation_guard { private header "__memory/allocation_guard.h" }
module allocator { private header "__memory/allocator.h" } module allocator { private header "__memory/allocator.h" }
@ -842,18 +841,15 @@ module std [system] {
module allocator_traits { private header "__memory/allocator_traits.h" } module allocator_traits { private header "__memory/allocator_traits.h" }
module assume_aligned { private header "__memory/assume_aligned.h" } module assume_aligned { private header "__memory/assume_aligned.h" }
module auto_ptr { private header "__memory/auto_ptr.h" } module auto_ptr { private header "__memory/auto_ptr.h" }
module builtin_new_allocator { private header "__memory/builtin_new_allocator.h" }
module compressed_pair { private header "__memory/compressed_pair.h" } module compressed_pair { private header "__memory/compressed_pair.h" }
module concepts { private header "__memory/concepts.h" } module concepts { private header "__memory/concepts.h" }
module construct_at { private header "__memory/construct_at.h" } module construct_at { private header "__memory/construct_at.h" }
module destruct_n { private header "__memory/destruct_n.h" }
module pointer_traits { private header "__memory/pointer_traits.h" } module pointer_traits { private header "__memory/pointer_traits.h" }
module ranges_construct_at { private header "__memory/ranges_construct_at.h" } module ranges_construct_at { private header "__memory/ranges_construct_at.h" }
module ranges_uninitialized_algorithms { private header "__memory/ranges_uninitialized_algorithms.h" } module ranges_uninitialized_algorithms { private header "__memory/ranges_uninitialized_algorithms.h" }
module raw_storage_iterator { private header "__memory/raw_storage_iterator.h" } module raw_storage_iterator { private header "__memory/raw_storage_iterator.h" }
module shared_ptr { private header "__memory/shared_ptr.h" } module shared_ptr { private header "__memory/shared_ptr.h" }
module swap_allocator { private header "__memory/swap_allocator.h" } module swap_allocator { private header "__memory/swap_allocator.h" }
module temp_value { private header "__memory/temp_value.h" }
module temporary_buffer { private header "__memory/temporary_buffer.h" } module temporary_buffer { private header "__memory/temporary_buffer.h" }
module uninitialized_algorithms { private header "__memory/uninitialized_algorithms.h" } module uninitialized_algorithms { private header "__memory/uninitialized_algorithms.h" }
module unique_ptr { private header "__memory/unique_ptr.h" } module unique_ptr { private header "__memory/unique_ptr.h" }
@ -1133,7 +1129,6 @@ module std [system] {
module integral_constant { private header "__type_traits/integral_constant.h" } module integral_constant { private header "__type_traits/integral_constant.h" }
module is_abstract { private header "__type_traits/is_abstract.h" } module is_abstract { private header "__type_traits/is_abstract.h" }
module is_aggregate { private header "__type_traits/is_aggregate.h" } module is_aggregate { private header "__type_traits/is_aggregate.h" }
module is_allocator { private header "__type_traits/is_allocator.h" }
module is_arithmetic { private header "__type_traits/is_arithmetic.h" } module is_arithmetic { private header "__type_traits/is_arithmetic.h" }
module is_array { private header "__type_traits/is_array.h" } module is_array { private header "__type_traits/is_array.h" }
module is_assignable { private header "__type_traits/is_assignable.h" } module is_assignable { private header "__type_traits/is_assignable.h" }
@ -1216,7 +1211,6 @@ module std [system] {
module maybe_const { private header "__type_traits/maybe_const.h" } module maybe_const { private header "__type_traits/maybe_const.h" }
module nat { private header "__type_traits/nat.h" } module nat { private header "__type_traits/nat.h" }
module negation { private header "__type_traits/negation.h" } module negation { private header "__type_traits/negation.h" }
module noexcept_move_assign_container { private header "__type_traits/noexcept_move_assign_container.h" }
module promote { private header "__type_traits/promote.h" } module promote { private header "__type_traits/promote.h" }
module rank { private header "__type_traits/rank.h" } module rank { private header "__type_traits/rank.h" }
module remove_all_extents { private header "__type_traits/remove_all_extents.h" } module remove_all_extents { private header "__type_traits/remove_all_extents.h" }

View File

@ -188,11 +188,11 @@ template<class Callable, class ...Args>
#include <__assert> // all public C++ headers provide the assertion handler #include <__assert> // all public C++ headers provide the assertion handler
#include <__config> #include <__config>
#include <__memory/shared_ptr.h>
#include <__mutex_base> #include <__mutex_base>
#include <__threading_support> #include <__threading_support>
#include <__utility/forward.h> #include <__utility/forward.h>
#include <cstdint> #include <cstdint>
#include <memory>
#ifndef _LIBCPP_CXX03_LANG #ifndef _LIBCPP_CXX03_LANG
# include <tuple> # include <tuple>
#endif #endif

View File

@ -165,11 +165,9 @@ basic_ostream<wchar_t, traits>& operator<<(basic_ostream<wchar_t, traits>&, cons
#include <__assert> // all public C++ headers provide the assertion handler #include <__assert> // all public C++ headers provide the assertion handler
#include <__config> #include <__config>
#include <__memory/unique_ptr.h>
#include <bitset> #include <bitset>
#include <ios> #include <ios>
#include <locale> #include <locale>
#include <new>
#include <streambuf> #include <streambuf>
#include <version> #include <version>

View File

@ -772,6 +772,7 @@ typedef regex_token_iterator<wstring::const_iterator> wsregex_token_iterator;
#include <__utility/move.h> #include <__utility/move.h>
#include <__utility/swap.h> #include <__utility/swap.h>
#include <deque> #include <deque>
#include <memory>
#include <stdexcept> #include <stdexcept>
#include <string> #include <string>
#include <vector> #include <vector>

View File

@ -111,33 +111,10 @@ template <class OuterA1, class OuterA2, class... InnerAllocs>
#include <__assert> // all public C++ headers provide the assertion handler #include <__assert> // all public C++ headers provide the assertion handler
#include <__config> #include <__config>
#include <__memory/allocator_traits.h>
#include <__type_traits/common_type.h>
#include <__type_traits/enable_if.h>
#include <__type_traits/integral_constant.h>
#include <__type_traits/is_constructible.h>
#include <__type_traits/remove_reference.h>
#include <__utility/forward.h> #include <__utility/forward.h>
#include <__utility/move.h> #include <memory>
#include <__utility/pair.h>
#include <__utility/piecewise_construct.h>
#include <tuple>
#include <version> #include <version>
#ifndef _LIBCPP_REMOVE_TRANSITIVE_INCLUDES
# include <atomic>
# include <chrono>
# include <climits>
# include <concepts>
# include <cstring>
# include <ctime>
# include <iterator>
# include <memory>
# include <ratio>
# include <stdexcept>
# include <variant>
#endif
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header # pragma GCC system_header
#endif #endif

View File

@ -480,10 +480,8 @@ erase_if(multiset<Key, Compare, Allocator>& c, Predicate pred); // C++20
#include <__iterator/erase_if_container.h> #include <__iterator/erase_if_container.h>
#include <__iterator/iterator_traits.h> #include <__iterator/iterator_traits.h>
#include <__iterator/reverse_iterator.h> #include <__iterator/reverse_iterator.h>
#include <__memory/allocator.h>
#include <__node_handle> #include <__node_handle>
#include <__tree> #include <__tree>
#include <__type_traits/is_allocator.h>
#include <__utility/forward.h> #include <__utility/forward.h>
#include <version> #include <version>

View File

@ -545,16 +545,9 @@ basic_string<char32_t> operator "" s( const char32_t *str, size_t len );
#include <__iterator/reverse_iterator.h> #include <__iterator/reverse_iterator.h>
#include <__iterator/wrap_iter.h> #include <__iterator/wrap_iter.h>
#include <__memory/allocate_at_least.h> #include <__memory/allocate_at_least.h>
#include <__memory/allocator.h>
#include <__memory/allocator_traits.h>
#include <__memory/compressed_pair.h>
#include <__memory/construct_at.h>
#include <__memory/pointer_traits.h>
#include <__memory/swap_allocator.h> #include <__memory/swap_allocator.h>
#include <__string/char_traits.h> #include <__string/char_traits.h>
#include <__string/extern_template_lists.h> #include <__string/extern_template_lists.h>
#include <__type_traits/is_allocator.h>
#include <__type_traits/noexcept_move_assign_container.h>
#include <__utility/auto_cast.h> #include <__utility/auto_cast.h>
#include <__utility/move.h> #include <__utility/move.h>
#include <__utility/swap.h> #include <__utility/swap.h>
@ -566,6 +559,7 @@ basic_string<char32_t> operator "" s( const char32_t *str, size_t len );
#include <cstring> #include <cstring>
#include <iosfwd> #include <iosfwd>
#include <limits> #include <limits>
#include <memory>
#include <stdexcept> #include <stdexcept>
#include <string_view> #include <string_view>
#include <type_traits> #include <type_traits>

View File

@ -86,7 +86,6 @@ void sleep_for(const chrono::duration<Rep, Period>& rel_time);
#include <__assert> // all public C++ headers provide the assertion handler #include <__assert> // all public C++ headers provide the assertion handler
#include <__config> #include <__config>
#include <__functional/hash.h> #include <__functional/hash.h>
#include <__memory/unique_ptr.h>
#include <__mutex_base> #include <__mutex_base>
#include <__thread/poll_with_backoff.h> #include <__thread/poll_with_backoff.h>
#include <__thread/timed_backoff_policy.h> #include <__thread/timed_backoff_policy.h>
@ -94,6 +93,7 @@ void sleep_for(const chrono::duration<Rep, Period>& rel_time);
#include <__utility/forward.h> #include <__utility/forward.h>
#include <cstddef> #include <cstddef>
#include <iosfwd> #include <iosfwd>
#include <memory>
#include <system_error> #include <system_error>
#include <tuple> #include <tuple>
#include <type_traits> #include <type_traits>

View File

@ -525,9 +525,7 @@ template <class Key, class T, class Hash, class Pred, class Alloc>
#include <__iterator/erase_if_container.h> #include <__iterator/erase_if_container.h>
#include <__iterator/iterator_traits.h> #include <__iterator/iterator_traits.h>
#include <__memory/addressof.h> #include <__memory/addressof.h>
#include <__memory/allocator.h>
#include <__node_handle> #include <__node_handle>
#include <__type_traits/is_allocator.h>
#include <__utility/forward.h> #include <__utility/forward.h>
#include <stdexcept> #include <stdexcept>
#include <tuple> #include <tuple>

View File

@ -470,9 +470,7 @@ template <class Value, class Hash, class Pred, class Alloc>
#include <__iterator/erase_if_container.h> #include <__iterator/erase_if_container.h>
#include <__iterator/iterator_traits.h> #include <__iterator/iterator_traits.h>
#include <__memory/addressof.h> #include <__memory/addressof.h>
#include <__memory/allocator.h>
#include <__node_handle> #include <__node_handle>
#include <__type_traits/is_allocator.h>
#include <__utility/forward.h> #include <__utility/forward.h>
#include <version> #include <version>

View File

@ -293,11 +293,7 @@ erase_if(vector<T, Allocator>& c, Predicate pred); // C++20
#include <__memory/allocate_at_least.h> #include <__memory/allocate_at_least.h>
#include <__memory/pointer_traits.h> #include <__memory/pointer_traits.h>
#include <__memory/swap_allocator.h> #include <__memory/swap_allocator.h>
#include <__memory/temp_value.h>
#include <__memory/uninitialized_algorithms.h>
#include <__split_buffer> #include <__split_buffer>
#include <__type_traits/is_allocator.h>
#include <__type_traits/noexcept_move_assign_container.h>
#include <__utility/forward.h> #include <__utility/forward.h>
#include <__utility/move.h> #include <__utility/move.h>
#include <__utility/swap.h> #include <__utility/swap.h>
@ -306,6 +302,7 @@ erase_if(vector<T, Allocator>& c, Predicate pred); // C++20
#include <cstring> #include <cstring>
#include <iosfwd> // for forward declaration of vector #include <iosfwd> // for forward declaration of vector
#include <limits> #include <limits>
#include <memory>
#include <stdexcept> #include <stdexcept>
#include <type_traits> #include <type_traits>
#include <version> #include <version>

View File

@ -8,7 +8,6 @@
#include <assert.h> #include <assert.h>
#include <memory> #include <memory>
#include <new>
#include "test_macros.h" #include "test_macros.h"

View File

@ -410,7 +410,6 @@ END-SCRIPT
#include <__locale> // expected-error@*:* {{use of private header from outside its module: '__locale'}} #include <__locale> // expected-error@*:* {{use of private header from outside its module: '__locale'}}
#include <__mbstate_t.h> // expected-error@*:* {{use of private header from outside its module: '__mbstate_t.h'}} #include <__mbstate_t.h> // expected-error@*:* {{use of private header from outside its module: '__mbstate_t.h'}}
#include <__memory/addressof.h> // expected-error@*:* {{use of private header from outside its module: '__memory/addressof.h'}} #include <__memory/addressof.h> // expected-error@*:* {{use of private header from outside its module: '__memory/addressof.h'}}
#include <__memory/align.h> // expected-error@*:* {{use of private header from outside its module: '__memory/align.h'}}
#include <__memory/allocate_at_least.h> // expected-error@*:* {{use of private header from outside its module: '__memory/allocate_at_least.h'}} #include <__memory/allocate_at_least.h> // expected-error@*:* {{use of private header from outside its module: '__memory/allocate_at_least.h'}}
#include <__memory/allocation_guard.h> // expected-error@*:* {{use of private header from outside its module: '__memory/allocation_guard.h'}} #include <__memory/allocation_guard.h> // expected-error@*:* {{use of private header from outside its module: '__memory/allocation_guard.h'}}
#include <__memory/allocator.h> // expected-error@*:* {{use of private header from outside its module: '__memory/allocator.h'}} #include <__memory/allocator.h> // expected-error@*:* {{use of private header from outside its module: '__memory/allocator.h'}}
@ -418,18 +417,15 @@ END-SCRIPT
#include <__memory/allocator_traits.h> // expected-error@*:* {{use of private header from outside its module: '__memory/allocator_traits.h'}} #include <__memory/allocator_traits.h> // expected-error@*:* {{use of private header from outside its module: '__memory/allocator_traits.h'}}
#include <__memory/assume_aligned.h> // expected-error@*:* {{use of private header from outside its module: '__memory/assume_aligned.h'}} #include <__memory/assume_aligned.h> // expected-error@*:* {{use of private header from outside its module: '__memory/assume_aligned.h'}}
#include <__memory/auto_ptr.h> // expected-error@*:* {{use of private header from outside its module: '__memory/auto_ptr.h'}} #include <__memory/auto_ptr.h> // expected-error@*:* {{use of private header from outside its module: '__memory/auto_ptr.h'}}
#include <__memory/builtin_new_allocator.h> // expected-error@*:* {{use of private header from outside its module: '__memory/builtin_new_allocator.h'}}
#include <__memory/compressed_pair.h> // expected-error@*:* {{use of private header from outside its module: '__memory/compressed_pair.h'}} #include <__memory/compressed_pair.h> // expected-error@*:* {{use of private header from outside its module: '__memory/compressed_pair.h'}}
#include <__memory/concepts.h> // expected-error@*:* {{use of private header from outside its module: '__memory/concepts.h'}} #include <__memory/concepts.h> // expected-error@*:* {{use of private header from outside its module: '__memory/concepts.h'}}
#include <__memory/construct_at.h> // expected-error@*:* {{use of private header from outside its module: '__memory/construct_at.h'}} #include <__memory/construct_at.h> // expected-error@*:* {{use of private header from outside its module: '__memory/construct_at.h'}}
#include <__memory/destruct_n.h> // expected-error@*:* {{use of private header from outside its module: '__memory/destruct_n.h'}}
#include <__memory/pointer_traits.h> // expected-error@*:* {{use of private header from outside its module: '__memory/pointer_traits.h'}} #include <__memory/pointer_traits.h> // expected-error@*:* {{use of private header from outside its module: '__memory/pointer_traits.h'}}
#include <__memory/ranges_construct_at.h> // expected-error@*:* {{use of private header from outside its module: '__memory/ranges_construct_at.h'}} #include <__memory/ranges_construct_at.h> // expected-error@*:* {{use of private header from outside its module: '__memory/ranges_construct_at.h'}}
#include <__memory/ranges_uninitialized_algorithms.h> // expected-error@*:* {{use of private header from outside its module: '__memory/ranges_uninitialized_algorithms.h'}} #include <__memory/ranges_uninitialized_algorithms.h> // expected-error@*:* {{use of private header from outside its module: '__memory/ranges_uninitialized_algorithms.h'}}
#include <__memory/raw_storage_iterator.h> // expected-error@*:* {{use of private header from outside its module: '__memory/raw_storage_iterator.h'}} #include <__memory/raw_storage_iterator.h> // expected-error@*:* {{use of private header from outside its module: '__memory/raw_storage_iterator.h'}}
#include <__memory/shared_ptr.h> // expected-error@*:* {{use of private header from outside its module: '__memory/shared_ptr.h'}} #include <__memory/shared_ptr.h> // expected-error@*:* {{use of private header from outside its module: '__memory/shared_ptr.h'}}
#include <__memory/swap_allocator.h> // expected-error@*:* {{use of private header from outside its module: '__memory/swap_allocator.h'}} #include <__memory/swap_allocator.h> // expected-error@*:* {{use of private header from outside its module: '__memory/swap_allocator.h'}}
#include <__memory/temp_value.h> // expected-error@*:* {{use of private header from outside its module: '__memory/temp_value.h'}}
#include <__memory/temporary_buffer.h> // expected-error@*:* {{use of private header from outside its module: '__memory/temporary_buffer.h'}} #include <__memory/temporary_buffer.h> // expected-error@*:* {{use of private header from outside its module: '__memory/temporary_buffer.h'}}
#include <__memory/uninitialized_algorithms.h> // expected-error@*:* {{use of private header from outside its module: '__memory/uninitialized_algorithms.h'}} #include <__memory/uninitialized_algorithms.h> // expected-error@*:* {{use of private header from outside its module: '__memory/uninitialized_algorithms.h'}}
#include <__memory/unique_ptr.h> // expected-error@*:* {{use of private header from outside its module: '__memory/unique_ptr.h'}} #include <__memory/unique_ptr.h> // expected-error@*:* {{use of private header from outside its module: '__memory/unique_ptr.h'}}
@ -553,7 +549,6 @@ END-SCRIPT
#include <__type_traits/integral_constant.h> // expected-error@*:* {{use of private header from outside its module: '__type_traits/integral_constant.h'}} #include <__type_traits/integral_constant.h> // expected-error@*:* {{use of private header from outside its module: '__type_traits/integral_constant.h'}}
#include <__type_traits/is_abstract.h> // expected-error@*:* {{use of private header from outside its module: '__type_traits/is_abstract.h'}} #include <__type_traits/is_abstract.h> // expected-error@*:* {{use of private header from outside its module: '__type_traits/is_abstract.h'}}
#include <__type_traits/is_aggregate.h> // expected-error@*:* {{use of private header from outside its module: '__type_traits/is_aggregate.h'}} #include <__type_traits/is_aggregate.h> // expected-error@*:* {{use of private header from outside its module: '__type_traits/is_aggregate.h'}}
#include <__type_traits/is_allocator.h> // expected-error@*:* {{use of private header from outside its module: '__type_traits/is_allocator.h'}}
#include <__type_traits/is_arithmetic.h> // expected-error@*:* {{use of private header from outside its module: '__type_traits/is_arithmetic.h'}} #include <__type_traits/is_arithmetic.h> // expected-error@*:* {{use of private header from outside its module: '__type_traits/is_arithmetic.h'}}
#include <__type_traits/is_array.h> // expected-error@*:* {{use of private header from outside its module: '__type_traits/is_array.h'}} #include <__type_traits/is_array.h> // expected-error@*:* {{use of private header from outside its module: '__type_traits/is_array.h'}}
#include <__type_traits/is_assignable.h> // expected-error@*:* {{use of private header from outside its module: '__type_traits/is_assignable.h'}} #include <__type_traits/is_assignable.h> // expected-error@*:* {{use of private header from outside its module: '__type_traits/is_assignable.h'}}
@ -636,7 +631,6 @@ END-SCRIPT
#include <__type_traits/maybe_const.h> // expected-error@*:* {{use of private header from outside its module: '__type_traits/maybe_const.h'}} #include <__type_traits/maybe_const.h> // expected-error@*:* {{use of private header from outside its module: '__type_traits/maybe_const.h'}}
#include <__type_traits/nat.h> // expected-error@*:* {{use of private header from outside its module: '__type_traits/nat.h'}} #include <__type_traits/nat.h> // expected-error@*:* {{use of private header from outside its module: '__type_traits/nat.h'}}
#include <__type_traits/negation.h> // expected-error@*:* {{use of private header from outside its module: '__type_traits/negation.h'}} #include <__type_traits/negation.h> // expected-error@*:* {{use of private header from outside its module: '__type_traits/negation.h'}}
#include <__type_traits/noexcept_move_assign_container.h> // expected-error@*:* {{use of private header from outside its module: '__type_traits/noexcept_move_assign_container.h'}}
#include <__type_traits/promote.h> // expected-error@*:* {{use of private header from outside its module: '__type_traits/promote.h'}} #include <__type_traits/promote.h> // expected-error@*:* {{use of private header from outside its module: '__type_traits/promote.h'}}
#include <__type_traits/rank.h> // expected-error@*:* {{use of private header from outside its module: '__type_traits/rank.h'}} #include <__type_traits/rank.h> // expected-error@*:* {{use of private header from outside its module: '__type_traits/rank.h'}}
#include <__type_traits/remove_all_extents.h> // expected-error@*:* {{use of private header from outside its module: '__type_traits/remove_all_extents.h'}} #include <__type_traits/remove_all_extents.h> // expected-error@*:* {{use of private header from outside its module: '__type_traits/remove_all_extents.h'}}

View File

@ -18,7 +18,6 @@
#include <cassert> #include <cassert>
#include <cstddef> #include <cstddef>
#include <memory> #include <memory>
#include <new>
#include <type_traits> #include <type_traits>
#include <utility> #include <utility>

View File

@ -13,8 +13,6 @@
#include <memory> #include <memory>
#include <cassert> #include <cassert>
#include <utility>
#include "test_macros.h" #include "test_macros.h"
struct Irrelevant; struct Irrelevant;

View File

@ -9,7 +9,6 @@
// UNSUPPORTED: c++03 // UNSUPPORTED: c++03
#include <memory> #include <memory>
#include <type_traits>
template <int> struct Tag {}; template <int> struct Tag {};

View File

@ -14,7 +14,6 @@
#include <algorithm> #include <algorithm>
#include <cassert> #include <cassert>
#include <utility>
#include "test_macros.h" #include "test_macros.h"

View File

@ -16,7 +16,6 @@
#include <algorithm> #include <algorithm>
#include <cassert> #include <cassert>
#include <utility>
#include "test_macros.h" #include "test_macros.h"

View File

@ -28,7 +28,6 @@
#include <array> #include <array>
#include <cassert> #include <cassert>
#include <functional> #include <functional>
#include <memory>
#include <ranges> #include <ranges>
#include "test_iterators.h" #include "test_iterators.h"

View File

@ -21,7 +21,6 @@
#include <cassert> #include <cassert>
#include <vector> #include <vector>
#include <deque> #include <deque>
#include <utility>
#include "test_macros.h" #include "test_macros.h"

View File

@ -13,7 +13,6 @@
#include <forward_list> #include <forward_list>
#include <cassert> #include <cassert>
#include <exception>
#include "test_macros.h" #include "test_macros.h"

View File

@ -13,7 +13,6 @@
#include <list> #include <list>
#include <cassert> #include <cassert>
#include <exception>
#include "test_macros.h" #include "test_macros.h"

View File

@ -13,7 +13,6 @@
#include <list> #include <list>
#include <cassert> #include <cassert>
#include <exception>
#include "test_macros.h" #include "test_macros.h"

View File

@ -11,7 +11,6 @@
#include <experimental/coroutine> #include <experimental/coroutine>
#include <type_traits> #include <type_traits>
#include <cassert> #include <cassert>
#include <utility>
#include "test_macros.h" #include "test_macros.h"

View File

@ -11,7 +11,6 @@
#include <experimental/coroutine> #include <experimental/coroutine>
#include <type_traits> #include <type_traits>
#include <cassert> #include <cassert>
#include <utility>
#include "test_macros.h" #include "test_macros.h"

View File

@ -12,7 +12,6 @@
#include <locale> #include <locale>
#include <cassert> #include <cassert>
#include <typeinfo>
#include "test_macros.h" #include "test_macros.h"

View File

@ -16,7 +16,6 @@
#include <array> #include <array>
#include <cassert> #include <cassert>
#include <tuple>
#include <vector> #include <vector>
#include <string> #include <string>

View File

@ -20,7 +20,6 @@
#include <string> #include <string>
#include <cassert> #include <cassert>
#include <new>
#include "test_macros.h" #include "test_macros.h"
#include "min_allocator.h" #include "min_allocator.h"

View File

@ -18,7 +18,6 @@
#include <functional> #include <functional>
#include <cassert> #include <cassert>
#include <memory>
#include "test_macros.h" #include "test_macros.h"

View File

@ -18,7 +18,6 @@
#include <functional> #include <functional>
#include <cassert> #include <cassert>
#include <memory>
#include "test_macros.h" #include "test_macros.h"

View File

@ -20,7 +20,6 @@
#include <new> #include <new>
#include <type_traits> #include <type_traits>
#include <cassert> #include <cassert>
#include <utility>
#include "test_macros.h" #include "test_macros.h"
#include "incomplete_type_helper.h" #include "incomplete_type_helper.h"

View File

@ -14,7 +14,6 @@
#include <memory> #include <memory>
#include <cassert> #include <cassert>
#include <new>
#include "test_macros.h" #include "test_macros.h"

View File

@ -10,7 +10,6 @@
#include <memory> #include <memory>
#include <cassert> #include <cassert>
#include <type_traits>
#include "test_macros.h" #include "test_macros.h"

View File

@ -15,8 +15,6 @@
#include <memory> #include <memory>
#include <cassert> #include <cassert>
#include <utility>
#include "test_macros.h" #include "test_macros.h"
struct Irrelevant; struct Irrelevant;

View File

@ -17,7 +17,6 @@
#include <memory> #include <memory>
#include <cassert> #include <cassert>
#include <type_traits>
#include "test_macros.h" #include "test_macros.h"

View File

@ -17,7 +17,6 @@
#include <memory> #include <memory>
#include <cassert> #include <cassert>
#include <type_traits>
#include "test_macros.h" #include "test_macros.h"

View File

@ -27,7 +27,6 @@
#include <memory> #include <memory>
#include <cassert> #include <cassert>
#include <utility>
#include "test_macros.h" #include "test_macros.h"

View File

@ -20,7 +20,6 @@
#include <memory> #include <memory>
#include <cassert> #include <cassert>
#include <utility>
#include "test_macros.h" #include "test_macros.h"

View File

@ -17,7 +17,6 @@
#include <memory> #include <memory>
#include <type_traits> #include <type_traits>
#include <cassert> #include <cassert>
#include <utility>
#include "test_macros.h" #include "test_macros.h"

View File

@ -15,7 +15,6 @@
#include <memory> #include <memory>
#include <type_traits> #include <type_traits>
#include <cassert> #include <cassert>
#include <utility>
#include "test_macros.h" #include "test_macros.h"

View File

@ -16,7 +16,6 @@
#include <memory> #include <memory>
#include <cassert> #include <cassert>
#include <utility>
#include "test_macros.h" #include "test_macros.h"

View File

@ -14,7 +14,6 @@
#include <memory> #include <memory>
#include <type_traits> #include <type_traits>
#include <utility>
#include "test_macros.h" #include "test_macros.h"

View File

@ -14,7 +14,6 @@
#include <memory> #include <memory>
#include <cassert> #include <cassert>
#include <utility>
#include "test_macros.h" #include "test_macros.h"

Some files were not shown because too many files have changed in this diff Show More