[libc++] Clean up includes of <__assert> (#80091)
Originally, we used __libcpp_verbose_abort to handle assertion failures. That function was declared from all public headers. Since we don't use that mechanism anymore, we don't need to declare __libcpp_verbose_abort from all public headers, and we can clean up a lot of unnecessary includes. This patch also moves the definition of the various assertion categories to the <__assert> header, since we now rely on regular IWYU for these assertion macros. rdar://105510916
This commit is contained in:
parent
e60ebbd000
commit
37dca605c9
@ -34,4 +34,85 @@
|
||||
# define _LIBCPP_ASSUME(expression) ((void)0)
|
||||
#endif
|
||||
|
||||
// clang-format off
|
||||
// Fast hardening mode checks.
|
||||
|
||||
#if _LIBCPP_HARDENING_MODE == _LIBCPP_HARDENING_MODE_FAST
|
||||
|
||||
// Enabled checks.
|
||||
# define _LIBCPP_ASSERT_VALID_INPUT_RANGE(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
// Disabled checks.
|
||||
// On most modern platforms, dereferencing a null pointer does not lead to an actual memory access.
|
||||
# define _LIBCPP_ASSERT_NON_NULL(expression, message) _LIBCPP_ASSUME(expression)
|
||||
// Overlapping ranges will make algorithms produce incorrect results but don't directly lead to a security
|
||||
// vulnerability.
|
||||
# define _LIBCPP_ASSERT_NON_OVERLAPPING_RANGES(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_VALID_DEALLOCATION(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_VALID_EXTERNAL_API_CALL(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_COMPATIBLE_ALLOCATOR(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_ARGUMENT_WITHIN_DOMAIN(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_PEDANTIC(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_SEMANTIC_REQUIREMENT(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_INTERNAL(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_UNCATEGORIZED(expression, message) _LIBCPP_ASSUME(expression)
|
||||
|
||||
// Extensive hardening mode checks.
|
||||
|
||||
#elif _LIBCPP_HARDENING_MODE == _LIBCPP_HARDENING_MODE_EXTENSIVE
|
||||
|
||||
// Enabled checks.
|
||||
# define _LIBCPP_ASSERT_VALID_INPUT_RANGE(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_NON_NULL(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_NON_OVERLAPPING_RANGES(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_VALID_DEALLOCATION(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_VALID_EXTERNAL_API_CALL(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_COMPATIBLE_ALLOCATOR(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_ARGUMENT_WITHIN_DOMAIN(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_PEDANTIC(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_UNCATEGORIZED(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
// Disabled checks.
|
||||
# define _LIBCPP_ASSERT_SEMANTIC_REQUIREMENT(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_INTERNAL(expression, message) _LIBCPP_ASSUME(expression)
|
||||
|
||||
// Debug hardening mode checks.
|
||||
|
||||
#elif _LIBCPP_HARDENING_MODE == _LIBCPP_HARDENING_MODE_DEBUG
|
||||
|
||||
// All checks enabled.
|
||||
# define _LIBCPP_ASSERT_VALID_INPUT_RANGE(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_NON_NULL(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_NON_OVERLAPPING_RANGES(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_VALID_DEALLOCATION(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_VALID_EXTERNAL_API_CALL(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_COMPATIBLE_ALLOCATOR(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_ARGUMENT_WITHIN_DOMAIN(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_PEDANTIC(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_SEMANTIC_REQUIREMENT(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_INTERNAL(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_UNCATEGORIZED(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
|
||||
// Disable all checks if hardening is not enabled.
|
||||
|
||||
#else
|
||||
|
||||
// All checks disabled.
|
||||
# define _LIBCPP_ASSERT_VALID_INPUT_RANGE(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_NON_NULL(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_NON_OVERLAPPING_RANGES(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_VALID_DEALLOCATION(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_VALID_EXTERNAL_API_CALL(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_COMPATIBLE_ALLOCATOR(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_ARGUMENT_WITHIN_DOMAIN(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_PEDANTIC(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_SEMANTIC_REQUIREMENT(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_INTERNAL(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_UNCATEGORIZED(expression, message) _LIBCPP_ASSUME(expression)
|
||||
|
||||
#endif // _LIBCPP_HARDENING_MODE == _LIBCPP_HARDENING_MODE_FAST
|
||||
// clang-format on
|
||||
|
||||
#endif // _LIBCPP___ASSERT
|
||||
|
@ -13,6 +13,7 @@
|
||||
#include <__atomic/contention_t.h>
|
||||
#include <__atomic/cxx_atomic_impl.h>
|
||||
#include <__atomic/memory_order.h>
|
||||
#include <__availability>
|
||||
#include <__chrono/duration.h>
|
||||
#include <__config>
|
||||
#include <__thread/support.h>
|
||||
|
@ -11,6 +11,7 @@
|
||||
#define _LIBCPP___CHARCONV_FROM_CHARS_INTEGRAL_H
|
||||
|
||||
#include <__algorithm/copy_n.h>
|
||||
#include <__assert>
|
||||
#include <__charconv/from_chars_result.h>
|
||||
#include <__charconv/traits.h>
|
||||
#include <__config>
|
||||
|
@ -11,6 +11,7 @@
|
||||
#define _LIBCPP___CHARCONV_TO_CHARS_BASE_10_H
|
||||
|
||||
#include <__algorithm/copy_n.h>
|
||||
#include <__assert>
|
||||
#include <__charconv/tables.h>
|
||||
#include <__config>
|
||||
#include <cstdint>
|
||||
|
@ -11,6 +11,7 @@
|
||||
#define _LIBCPP___CHARCONV_TO_CHARS_INTEGRAL_H
|
||||
|
||||
#include <__algorithm/copy_n.h>
|
||||
#include <__assert>
|
||||
#include <__bit/countl.h>
|
||||
#include <__charconv/tables.h>
|
||||
#include <__charconv/to_chars_base_10.h>
|
||||
|
@ -10,6 +10,7 @@
|
||||
#ifndef _LIBCPP___CHARCONV_TRAITS
|
||||
#define _LIBCPP___CHARCONV_TRAITS
|
||||
|
||||
#include <__assert>
|
||||
#include <__bit/countl.h>
|
||||
#include <__charconv/tables.h>
|
||||
#include <__charconv/to_chars_base_10.h>
|
||||
|
@ -345,87 +345,6 @@ _LIBCPP_HARDENING_MODE_EXTENSIVE, \
|
||||
_LIBCPP_HARDENING_MODE_DEBUG
|
||||
# endif
|
||||
|
||||
// clang-format off
|
||||
// Fast hardening mode checks.
|
||||
|
||||
# if _LIBCPP_HARDENING_MODE == _LIBCPP_HARDENING_MODE_FAST
|
||||
|
||||
// Enabled checks.
|
||||
# define _LIBCPP_ASSERT_VALID_INPUT_RANGE(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
// Disabled checks.
|
||||
// On most modern platforms, dereferencing a null pointer does not lead to an actual memory access.
|
||||
# define _LIBCPP_ASSERT_NON_NULL(expression, message) _LIBCPP_ASSUME(expression)
|
||||
// Overlapping ranges will make algorithms produce incorrect results but don't directly lead to a security
|
||||
// vulnerability.
|
||||
# define _LIBCPP_ASSERT_NON_OVERLAPPING_RANGES(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_VALID_DEALLOCATION(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_VALID_EXTERNAL_API_CALL(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_COMPATIBLE_ALLOCATOR(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_ARGUMENT_WITHIN_DOMAIN(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_PEDANTIC(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_SEMANTIC_REQUIREMENT(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_INTERNAL(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_UNCATEGORIZED(expression, message) _LIBCPP_ASSUME(expression)
|
||||
|
||||
// Extensive hardening mode checks.
|
||||
|
||||
# elif _LIBCPP_HARDENING_MODE == _LIBCPP_HARDENING_MODE_EXTENSIVE
|
||||
|
||||
// Enabled checks.
|
||||
# define _LIBCPP_ASSERT_VALID_INPUT_RANGE(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_NON_NULL(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_NON_OVERLAPPING_RANGES(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_VALID_DEALLOCATION(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_VALID_EXTERNAL_API_CALL(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_COMPATIBLE_ALLOCATOR(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_ARGUMENT_WITHIN_DOMAIN(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_PEDANTIC(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_UNCATEGORIZED(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
// Disabled checks.
|
||||
# define _LIBCPP_ASSERT_SEMANTIC_REQUIREMENT(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_INTERNAL(expression, message) _LIBCPP_ASSUME(expression)
|
||||
|
||||
// Debug hardening mode checks.
|
||||
|
||||
# elif _LIBCPP_HARDENING_MODE == _LIBCPP_HARDENING_MODE_DEBUG
|
||||
|
||||
// All checks enabled.
|
||||
# define _LIBCPP_ASSERT_VALID_INPUT_RANGE(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_NON_NULL(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_NON_OVERLAPPING_RANGES(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_VALID_DEALLOCATION(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_VALID_EXTERNAL_API_CALL(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_COMPATIBLE_ALLOCATOR(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_ARGUMENT_WITHIN_DOMAIN(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_PEDANTIC(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_SEMANTIC_REQUIREMENT(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_INTERNAL(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
# define _LIBCPP_ASSERT_UNCATEGORIZED(expression, message) _LIBCPP_ASSERT(expression, message)
|
||||
|
||||
// Disable all checks if hardening is not enabled.
|
||||
|
||||
# else
|
||||
|
||||
// All checks disabled.
|
||||
# define _LIBCPP_ASSERT_VALID_INPUT_RANGE(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_NON_NULL(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_NON_OVERLAPPING_RANGES(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_VALID_DEALLOCATION(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_VALID_EXTERNAL_API_CALL(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_COMPATIBLE_ALLOCATOR(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_ARGUMENT_WITHIN_DOMAIN(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_PEDANTIC(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_SEMANTIC_REQUIREMENT(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_INTERNAL(expression, message) _LIBCPP_ASSUME(expression)
|
||||
# define _LIBCPP_ASSERT_UNCATEGORIZED(expression, message) _LIBCPP_ASSUME(expression)
|
||||
|
||||
# endif // _LIBCPP_HARDENING_MODE == _LIBCPP_HARDENING_MODE_FAST
|
||||
// clang-format on
|
||||
|
||||
// } HARDENING
|
||||
|
||||
# define _LIBCPP_TOSTRING2(x) #x
|
||||
|
@ -16,6 +16,7 @@
|
||||
#include <__algorithm/min.h>
|
||||
#include <__algorithm/rotate.h>
|
||||
#include <__algorithm/transform.h>
|
||||
#include <__assert>
|
||||
#include <__charconv/chars_format.h>
|
||||
#include <__charconv/to_chars_floating_point.h>
|
||||
#include <__charconv/to_chars_result.h>
|
||||
|
@ -10,6 +10,7 @@
|
||||
#ifndef _LIBCPP___NUMERIC_SATURATION_ARITHMETIC_H
|
||||
#define _LIBCPP___NUMERIC_SATURATION_ARITHMETIC_H
|
||||
|
||||
#include <__assert>
|
||||
#include <__concepts/arithmetic.h>
|
||||
#include <__config>
|
||||
#include <__utility/cmp.h>
|
||||
|
@ -9,6 +9,7 @@
|
||||
#ifndef _LIBCPP___RANDOM_NEGATIVE_BINOMIAL_DISTRIBUTION_H
|
||||
#define _LIBCPP___RANDOM_NEGATIVE_BINOMIAL_DISTRIBUTION_H
|
||||
|
||||
#include <__assert>
|
||||
#include <__config>
|
||||
#include <__random/bernoulli_distribution.h>
|
||||
#include <__random/gamma_distribution.h>
|
||||
|
@ -10,6 +10,7 @@
|
||||
#ifndef _LIBCPP___RANGES_REPEAT_VIEW_H
|
||||
#define _LIBCPP___RANGES_REPEAT_VIEW_H
|
||||
|
||||
#include <__assert>
|
||||
#include <__concepts/constructible.h>
|
||||
#include <__concepts/same_as.h>
|
||||
#include <__concepts/semiregular.h>
|
||||
|
@ -10,6 +10,7 @@
|
||||
#ifndef _LIBCPP___STOP_TOKEN_STOP_STATE_H
|
||||
#define _LIBCPP___STOP_TOKEN_STOP_STATE_H
|
||||
|
||||
#include <__assert>
|
||||
#include <__availability>
|
||||
#include <__config>
|
||||
#include <__stop_token/atomic_unique_lock.h>
|
||||
|
@ -14,6 +14,7 @@
|
||||
#include <__algorithm/find_end.h>
|
||||
#include <__algorithm/find_first_of.h>
|
||||
#include <__algorithm/min.h>
|
||||
#include <__assert>
|
||||
#include <__compare/ordering.h>
|
||||
#include <__config>
|
||||
#include <__functional/hash.h>
|
||||
|
@ -1793,7 +1793,6 @@ template <class BidirectionalIterator, class Compare>
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <version>
|
||||
|
||||
|
@ -80,7 +80,6 @@ namespace std {
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__availability>
|
||||
#include <__config>
|
||||
#include <__memory/allocator.h>
|
||||
|
@ -116,7 +116,7 @@ template <size_t I, class T, size_t N> const T&& get(const array<T, N>&&) noexce
|
||||
#include <__algorithm/lexicographical_compare.h>
|
||||
#include <__algorithm/lexicographical_compare_three_way.h>
|
||||
#include <__algorithm/swap_ranges.h>
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__assert>
|
||||
#include <__config>
|
||||
#include <__fwd/array.h>
|
||||
#include <__iterator/reverse_iterator.h>
|
||||
|
@ -587,7 +587,6 @@ template <class T>
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__atomic/aliases.h>
|
||||
#include <__atomic/atomic.h>
|
||||
#include <__atomic/atomic_base.h>
|
||||
|
@ -51,7 +51,7 @@ namespace std
|
||||
# error "<barrier> is not supported since libc++ has been configured without support for threads."
|
||||
#endif
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__assert>
|
||||
#include <__atomic/atomic_base.h>
|
||||
#include <__atomic/memory_order.h>
|
||||
#include <__availability>
|
||||
|
@ -61,7 +61,6 @@ namespace std {
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__bit/bit_cast.h>
|
||||
#include <__bit/bit_ceil.h>
|
||||
#include <__bit/bit_floor.h>
|
||||
|
@ -129,7 +129,6 @@ template <size_t N> struct hash<std::bitset<N>>;
|
||||
#include <__algorithm/count.h>
|
||||
#include <__algorithm/fill.h>
|
||||
#include <__algorithm/find.h>
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__bit_reference>
|
||||
#include <__config>
|
||||
#include <__functional/hash.h>
|
||||
|
@ -16,7 +16,6 @@ Macros:
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
|
||||
// <assert.h> is not provided by libc++
|
||||
|
@ -17,7 +17,6 @@
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <complex>
|
||||
|
||||
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
|
||||
|
@ -34,7 +34,6 @@ int toupper(int c);
|
||||
} // std
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
|
||||
#include <ctype.h>
|
||||
|
@ -22,7 +22,6 @@ Macros:
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
|
||||
#include <errno.h>
|
||||
|
@ -52,7 +52,6 @@ int feupdateenv(const fenv_t* envp);
|
||||
} // std
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
|
||||
#include <fenv.h>
|
||||
|
@ -69,7 +69,6 @@ Macros:
|
||||
LDBL_TRUE_MIN // C11
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
|
||||
#include <float.h>
|
||||
|
@ -69,7 +69,6 @@ namespace std {
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__charconv/chars_format.h>
|
||||
#include <__charconv/from_chars_integral.h>
|
||||
#include <__charconv/from_chars_result.h>
|
||||
|
@ -825,7 +825,6 @@ constexpr chrono::year operator ""y(unsigned lo
|
||||
|
||||
// clang-format on
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__chrono/calendar.h>
|
||||
#include <__chrono/convert_to_timespec.h>
|
||||
#include <__chrono/convert_to_tm.h>
|
||||
|
@ -234,7 +234,6 @@ uintmax_t wcstoumax(const wchar_t* restrict nptr, wchar_t** restrict endptr, int
|
||||
} // std
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
|
||||
// standard-mandated includes
|
||||
|
@ -15,7 +15,6 @@
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
|
||||
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
|
||||
|
@ -37,7 +37,6 @@ Macros:
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
|
||||
#include <limits.h>
|
||||
|
@ -34,7 +34,6 @@ lconv* localeconv();
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
|
||||
#include <locale.h>
|
||||
|
@ -304,7 +304,6 @@ constexpr long double lerp(long double a, long double b, long double t) noexcept
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <__type_traits/enable_if.h>
|
||||
#include <__type_traits/is_arithmetic.h>
|
||||
|
@ -54,7 +54,6 @@ class codecvt_utf8_utf16
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <__locale>
|
||||
#include <version>
|
||||
|
@ -140,7 +140,6 @@ namespace std {
|
||||
}
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__compare/common_comparison_category.h>
|
||||
#include <__compare/compare_partial_order_fallback.h>
|
||||
#include <__compare/compare_strong_order_fallback.h>
|
||||
|
@ -256,7 +256,6 @@ template<class T> complex<T> tanh (const complex<T>&);
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <__fwd/complex.h>
|
||||
#include <__tuple/tuple_element.h>
|
||||
|
@ -129,7 +129,6 @@ namespace std {
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__concepts/arithmetic.h>
|
||||
#include <__concepts/assignable.h>
|
||||
#include <__concepts/boolean_testable.h>
|
||||
|
@ -118,7 +118,6 @@ public:
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__availability>
|
||||
#include <__chrono/duration.h>
|
||||
#include <__chrono/steady_clock.h>
|
||||
|
@ -38,7 +38,6 @@ struct suspend_always;
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <__coroutine/coroutine_handle.h>
|
||||
#include <__coroutine/coroutine_traits.h>
|
||||
|
@ -30,7 +30,6 @@ void longjmp(jmp_buf env, int val);
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
|
||||
// <setjmp.h> is not provided by libc++
|
||||
|
@ -39,7 +39,6 @@ int raise(int sig);
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
|
||||
// <signal.h> is not provided by libc++
|
||||
|
@ -31,7 +31,6 @@ Types:
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
|
||||
// <stdarg.h> is not provided by libc++
|
||||
|
@ -19,7 +19,6 @@ Macros:
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
|
||||
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
|
||||
|
@ -33,7 +33,6 @@ Types:
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <__type_traits/enable_if.h>
|
||||
#include <__type_traits/integral_constant.h>
|
||||
|
@ -140,7 +140,6 @@ Types:
|
||||
} // std
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
|
||||
#include <stdint.h>
|
||||
|
@ -95,7 +95,6 @@ void perror(const char* s);
|
||||
} // std
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
|
||||
#include <stdio.h>
|
||||
|
@ -81,7 +81,6 @@ void *aligned_alloc(size_t alignment, size_t size); // C11
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
|
||||
#include <stdlib.h>
|
||||
|
@ -56,7 +56,6 @@ size_t strlen(const char* s);
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <__type_traits/is_constant_evaluated.h>
|
||||
|
||||
|
@ -18,7 +18,6 @@
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <ccomplex>
|
||||
#include <cmath>
|
||||
|
||||
|
@ -45,7 +45,6 @@ int timespec_get( struct timespec *ts, int base); // C++17
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
|
||||
// <time.h> is not provided by libc++
|
||||
|
@ -36,7 +36,6 @@ size_t c32rtomb(char* s, char32_t c32, mbstate_t* ps);
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
|
||||
#include <uchar.h>
|
||||
|
@ -102,7 +102,6 @@ size_t wcsrtombs(char* restrict dst, const wchar_t** restrict src, size_t len,
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <__type_traits/apply_cv.h>
|
||||
#include <__type_traits/is_constant_evaluated.h>
|
||||
|
@ -49,7 +49,6 @@ wctrans_t wctrans(const char* property);
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <cctype>
|
||||
|
||||
|
@ -188,7 +188,7 @@ template <class T, class Allocator, class Predicate>
|
||||
#include <__algorithm/remove.h>
|
||||
#include <__algorithm/remove_if.h>
|
||||
#include <__algorithm/unwrap_iter.h>
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__assert>
|
||||
#include <__availability>
|
||||
#include <__config>
|
||||
#include <__format/enable_insertable.h>
|
||||
|
@ -76,7 +76,6 @@ template <class E> void rethrow_if_nested(const E& e);
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <__exception/exception.h>
|
||||
#include <__exception/exception_ptr.h>
|
||||
|
@ -32,7 +32,6 @@ namespace std {
|
||||
}
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <__type_traits/is_execution_policy.h>
|
||||
#include <__type_traits/is_same.h>
|
||||
|
@ -38,7 +38,6 @@ namespace std {
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <__expected/bad_expected_access.h>
|
||||
#include <__expected/expected.h>
|
||||
|
@ -10,6 +10,7 @@
|
||||
#ifndef _LIBCPP_EXPERIMENTAL___SIMD_SCALAR_H
|
||||
#define _LIBCPP_EXPERIMENTAL___SIMD_SCALAR_H
|
||||
|
||||
#include <__assert>
|
||||
#include <cstddef>
|
||||
#include <experimental/__config>
|
||||
#include <experimental/__simd/declaration.h>
|
||||
|
@ -10,6 +10,7 @@
|
||||
#ifndef _LIBCPP_EXPERIMENTAL___SIMD_VEC_EXT_H
|
||||
#define _LIBCPP_EXPERIMENTAL___SIMD_VEC_EXT_H
|
||||
|
||||
#include <__assert>
|
||||
#include <__bit/bit_ceil.h>
|
||||
#include <__utility/forward.h>
|
||||
#include <__utility/integer_sequence.h>
|
||||
|
@ -52,7 +52,6 @@ namespace std {
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__memory/addressof.h>
|
||||
#include <__type_traits/decay.h>
|
||||
#include <__utility/forward.h>
|
||||
|
@ -107,7 +107,6 @@
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__functional/operations.h>
|
||||
#include <__fwd/hash.h>
|
||||
#include <__type_traits/conditional.h>
|
||||
|
@ -71,8 +71,6 @@ inline namespace parallelism_v2 {
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
|
||||
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
|
||||
# pragma GCC system_header
|
||||
#endif
|
||||
|
@ -68,7 +68,6 @@ inline namespace fundamentals_v1 {
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <experimental/__config>
|
||||
|
||||
#if _LIBCPP_STD_VER >= 14
|
||||
|
@ -30,7 +30,6 @@ inline namespace fundamentals_v1 {
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <experimental/__config>
|
||||
#include <utility>
|
||||
|
||||
|
@ -201,7 +201,6 @@ template <class Key, class T, class Hash, class Pred, class Alloc>
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <__hash_table>
|
||||
#include <algorithm>
|
||||
|
@ -192,7 +192,6 @@ template <class Value, class Hash, class Pred, class Alloc>
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <__hash_table>
|
||||
#include <algorithm>
|
||||
|
@ -533,7 +533,6 @@ inline constexpr bool std::ranges::enable_view<std::filesystem::recursive_direct
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <__filesystem/copy_options.h>
|
||||
#include <__filesystem/directory_entry.h>
|
||||
|
@ -188,7 +188,6 @@ namespace std {
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <__format/buffer.h>
|
||||
#include <__format/concepts.h>
|
||||
|
@ -199,7 +199,6 @@ template <class T, class Allocator, class Predicate>
|
||||
#include <__algorithm/lexicographical_compare.h>
|
||||
#include <__algorithm/lexicographical_compare_three_way.h>
|
||||
#include <__algorithm/min.h>
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__availability>
|
||||
#include <__config>
|
||||
#include <__iterator/distance.h>
|
||||
|
@ -187,7 +187,7 @@ typedef basic_fstream<wchar_t> wfstream;
|
||||
*/
|
||||
|
||||
#include <__algorithm/max.h>
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__assert>
|
||||
#include <__availability>
|
||||
#include <__config>
|
||||
#include <__fwd/fstream.h>
|
||||
|
@ -513,7 +513,6 @@ POLICY: For non-variadic implementations, the number of arguments is limited
|
||||
*/
|
||||
|
||||
#include <__algorithm/search.h>
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__compare/compare_three_way.h>
|
||||
#include <__config>
|
||||
#include <__functional/binary_function.h>
|
||||
|
@ -368,7 +368,7 @@ template <class R, class Alloc> struct uses_allocator<packaged_task<R>, Alloc>;
|
||||
# error "<future> is not supported since libc++ has been configured without support for threads."
|
||||
#endif
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__assert>
|
||||
#include <__availability>
|
||||
#include <__chrono/duration.h>
|
||||
#include <__chrono/time_point.h>
|
||||
|
@ -42,7 +42,6 @@ template<class E> const E* end(initializer_list<E> il) noexcept; // constexpr in
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <cstddef>
|
||||
|
||||
|
@ -42,7 +42,6 @@ template <class charT, class traits, class Allocator>
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <istream>
|
||||
#include <version>
|
||||
|
@ -217,7 +217,6 @@ storage-class-specifier const error_category& iostream_category() noexcept;
|
||||
# error "The iostreams library is not supported since libc++ has been configured without support for localization."
|
||||
#endif
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__fwd/ios.h>
|
||||
#include <__ios/fpos.h>
|
||||
#include <__locale>
|
||||
|
@ -106,7 +106,6 @@ using wosyncstream = basic_osyncstream<wchar_t>; // C++20
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <__fwd/fstream.h>
|
||||
#include <__fwd/ios.h>
|
||||
|
@ -33,7 +33,6 @@ extern wostream wclog;
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <version>
|
||||
|
||||
|
@ -158,7 +158,6 @@ template <class Stream, class T>
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <__fwd/istream.h>
|
||||
#include <__iterator/istreambuf_iterator.h>
|
||||
|
@ -674,7 +674,6 @@ template <class E> constexpr const E* data(initializer_list<E> il) noexcept;
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <__iterator/access.h>
|
||||
#include <__iterator/advance.h>
|
||||
|
@ -46,7 +46,7 @@ namespace std
|
||||
# error "<latch> is not supported since libc++ has been configured without support for threads."
|
||||
#endif
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__assert>
|
||||
#include <__atomic/atomic_base.h>
|
||||
#include <__atomic/atomic_sync.h>
|
||||
#include <__atomic/memory_order.h>
|
||||
|
@ -102,7 +102,6 @@ template<> class numeric_limits<cv long double>;
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <__type_traits/is_arithmetic.h>
|
||||
#include <__type_traits/is_signed.h>
|
||||
|
@ -202,7 +202,7 @@ template <class T, class Allocator, class Predicate>
|
||||
#include <__algorithm/lexicographical_compare.h>
|
||||
#include <__algorithm/lexicographical_compare_three_way.h>
|
||||
#include <__algorithm/min.h>
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__assert>
|
||||
#include <__availability>
|
||||
#include <__config>
|
||||
#include <__format/enable_insertable.h>
|
||||
|
@ -193,7 +193,7 @@ template <class charT> class messages_byname;
|
||||
#include <__algorithm/max.h>
|
||||
#include <__algorithm/reverse.h>
|
||||
#include <__algorithm/unwrap_iter.h>
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__assert>
|
||||
#include <__config>
|
||||
#include <__iterator/access.h>
|
||||
#include <__iterator/back_insert_iterator.h>
|
||||
|
@ -574,7 +574,7 @@ erase_if(multimap<Key, T, Compare, Allocator>& c, Predicate pred); // C++20
|
||||
#include <__algorithm/equal.h>
|
||||
#include <__algorithm/lexicographical_compare.h>
|
||||
#include <__algorithm/lexicographical_compare_three_way.h>
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__assert>
|
||||
#include <__availability>
|
||||
#include <__config>
|
||||
#include <__functional/binary_function.h>
|
||||
|
@ -917,7 +917,6 @@ template<size_t N, class T>
|
||||
|
||||
// clang-format on
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <__memory/addressof.h>
|
||||
#include <__memory/align.h>
|
||||
|
@ -186,7 +186,6 @@ template<class Callable, class ...Args>
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__chrono/steady_clock.h>
|
||||
#include <__chrono/time_point.h>
|
||||
#include <__condition_variable/condition_variable.h>
|
||||
|
@ -86,13 +86,13 @@ void operator delete[](void* ptr, void*) noexcept;
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__availability>
|
||||
#include <__config>
|
||||
#include <__exception/exception.h>
|
||||
#include <__type_traits/is_function.h>
|
||||
#include <__type_traits/is_same.h>
|
||||
#include <__type_traits/remove_cv.h>
|
||||
#include <__verbose_abort>
|
||||
#include <cstddef>
|
||||
#include <version>
|
||||
|
||||
|
@ -58,7 +58,6 @@ namespace std::numbers {
|
||||
}
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__concepts/arithmetic.h>
|
||||
#include <__config>
|
||||
#include <version>
|
||||
|
@ -156,7 +156,6 @@ constexpr T saturate_cast(U x) noexcept; // freestanding, Sin
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <version>
|
||||
|
||||
|
@ -177,7 +177,7 @@ namespace std {
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__assert>
|
||||
#include <__availability>
|
||||
#include <__compare/compare_three_way_result.h>
|
||||
#include <__compare/three_way_comparable.h>
|
||||
|
@ -171,7 +171,6 @@ void vprint_nonunicode(ostream& os, string_view fmt, format_args args);
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__availability>
|
||||
#include <__config>
|
||||
#include <__exception/operations.h>
|
||||
|
@ -31,7 +31,7 @@ namespace std {
|
||||
}
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__assert>
|
||||
#include <__availability>
|
||||
#include <__concepts/same_as.h>
|
||||
#include <__config>
|
||||
|
@ -258,7 +258,6 @@ template <class T, class Container, class Compare>
|
||||
#include <__algorithm/pop_heap.h>
|
||||
#include <__algorithm/push_heap.h>
|
||||
#include <__algorithm/ranges_copy.h>
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <__functional/operations.h>
|
||||
#include <__iterator/back_insert_iterator.h>
|
||||
|
@ -1677,7 +1677,6 @@ class piecewise_linear_distribution
|
||||
} // std
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <__random/bernoulli_distribution.h>
|
||||
#include <__random/binomial_distribution.h>
|
||||
|
@ -375,7 +375,6 @@ namespace std {
|
||||
}
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <__ranges/access.h>
|
||||
#include <__ranges/all.h>
|
||||
|
@ -81,7 +81,6 @@ using quetta = ratio <1'000'000'000'000'000'000'000'000'000'000, 1>; // Since C+
|
||||
}
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <__type_traits/integral_constant.h>
|
||||
#include <climits>
|
||||
|
@ -791,7 +791,7 @@ typedef regex_token_iterator<wstring::const_iterator> wsregex_token_iterator;
|
||||
|
||||
#include <__algorithm/find.h>
|
||||
#include <__algorithm/search.h>
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__assert>
|
||||
#include <__availability>
|
||||
#include <__config>
|
||||
#include <__iterator/back_insert_iterator.h>
|
||||
|
@ -109,7 +109,6 @@ template <class OuterA1, class OuterA2, class... InnerAllocs>
|
||||
|
||||
*/
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__config>
|
||||
#include <__memory/allocator_traits.h>
|
||||
#include <__memory/uses_allocator_construction.h>
|
||||
|
@ -51,7 +51,7 @@ using binary_semaphore = counting_semaphore<1>;
|
||||
# error "<semaphore> is not supported since libc++ has been configured without support for threads."
|
||||
#endif
|
||||
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__assert>
|
||||
#include <__atomic/atomic_base.h>
|
||||
#include <__atomic/atomic_sync.h>
|
||||
#include <__atomic/memory_order.h>
|
||||
|
@ -515,7 +515,7 @@ erase_if(multiset<Key, Compare, Allocator>& c, Predicate pred); // C++20
|
||||
#include <__algorithm/equal.h>
|
||||
#include <__algorithm/lexicographical_compare.h>
|
||||
#include <__algorithm/lexicographical_compare_three_way.h>
|
||||
#include <__assert> // all public C++ headers provide the assertion handler
|
||||
#include <__assert>
|
||||
#include <__availability>
|
||||
#include <__config>
|
||||
#include <__functional/is_transparent.h>
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user