[libc++] Remove __functional_base

Reviewed By: ldionne, Quuxplusone, #libc

Spies: Mordante, mgorny, libcxx-commits, arichardson, llvm-commits, arphaman

Differential Revision: https://reviews.llvm.org/D119439
This commit is contained in:
Nikolas Klauser 2022-02-11 19:15:18 +01:00
parent 2ba06bed6b
commit 169a66eac8
21 changed files with 84 additions and 51 deletions

View File

@ -219,7 +219,6 @@ set(files
__functional/unary_negate.h
__functional/unwrap_ref.h
__functional/weak_result_type.h
__functional_base
__hash_table
__ios/fpos.h
__iterator/access.h

View File

@ -15,7 +15,6 @@
#include <__format/format_error.h>
#include <__format/format_fwd.h>
#include <__format/format_parse_context.h>
#include <__functional_base>
#include <__memory/addressof.h>
#include <__variant/monostate.h>
#include <string>

View File

@ -1,32 +0,0 @@
// -*- C++ -*-
//===----------------------------------------------------------------------===//
//
// 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_FUNCTIONAL_BASE
#define _LIBCPP_FUNCTIONAL_BASE
#include <__config>
#include <__functional/binary_function.h>
#include <__functional/invoke.h>
#include <__functional/operations.h>
#include <__functional/reference_wrapper.h>
#include <__functional/unary_function.h>
#include <__functional/weak_result_type.h>
#include <__memory/allocator_arg_t.h>
#include <__memory/uses_allocator.h>
#include <exception>
#include <new>
#include <type_traits>
#include <typeinfo>
#include <utility>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header
#endif
#endif // _LIBCPP_FUNCTIONAL_BASE

View File

@ -15,7 +15,6 @@
#include <__functional/binary_function.h>
#include <__functional/operations.h>
#include <__functional/reference_wrapper.h>
#include <__functional_base>
#include <__memory/addressof.h>
#include <__memory/allocation_guard.h>
#include <__memory/allocator.h>

View File

@ -13,7 +13,6 @@
#include <__config>
#include <__functional/hash.h>
#include <__functional/operations.h>
#include <__functional_base>
#include <__memory/allocator_traits.h> // __pointer
#include <__memory/compressed_pair.h>
#include <__utility/forward.h>

View File

@ -114,7 +114,6 @@ template <size_t N> struct hash<std::bitset<N>>;
#include <__bit_reference>
#include <__config>
#include <__functional_base>
#include <climits>
#include <cstddef>
#include <iosfwd>

View File

@ -10,7 +10,6 @@
#ifndef _LIBCPP_EXPERIMENTAL___MEMORY
#define _LIBCPP_EXPERIMENTAL___MEMORY
#include <__functional_base>
#include <__memory/allocator_arg_t.h>
#include <__memory/uses_allocator.h>
#include <experimental/__config>

View File

@ -598,7 +598,6 @@ template <class E> constexpr const E* data(initializer_list<E> il) noexcept;
#include <__config>
#include <__debug>
#include <__functional_base>
#include <__iterator/access.h>
#include <__iterator/advance.h>
#include <__iterator/back_insert_iterator.h>
@ -643,6 +642,19 @@ template <class E> constexpr const E* data(initializer_list<E> il) noexcept;
#include <utility>
#include <version>
// TODO: remove these headers
#include <__functional/binary_function.h>
#include <__functional/invoke.h>
#include <__functional/operations.h>
#include <__functional/reference_wrapper.h>
#include <__functional/unary_function.h>
#include <__functional/weak_result_type.h>
#include <__memory/allocator_arg_t.h>
#include <__memory/uses_allocator.h>
#include <exception>
#include <new>
#include <typeinfo>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header
#endif

View File

@ -805,7 +805,6 @@ void* align(size_t alignment, size_t size, void*& ptr, size_t& space);
*/
#include <__config>
#include <__functional_base>
#include <__memory/addressof.h>
#include <__memory/allocation_guard.h>
#include <__memory/allocator.h>
@ -837,6 +836,14 @@ void* align(size_t alignment, size_t size, void*& ptr, size_t& space);
#include <utility>
#include <version>
// TODO: remove these headers
#include <__functional/binary_function.h>
#include <__functional/invoke.h>
#include <__functional/operations.h>
#include <__functional/reference_wrapper.h>
#include <__functional/unary_function.h>
#include <__functional/weak_result_type.h>
#if _LIBCPP_STD_VER <= 14 || defined(_LIBCPP_ENABLE_CXX17_REMOVED_AUTO_PTR)
# include <__memory/auto_ptr.h>
#endif

View File

@ -162,7 +162,6 @@ template<class T>
#include <__concepts/invocable.h>
#include <__config>
#include <__debug>
#include <__functional_base>
#include <compare>
#include <functional>
#include <initializer_list>
@ -172,6 +171,11 @@ template<class T>
#include <utility>
#include <version>
// TODO: remove these headers
#include <__memory/allocator_arg_t.h>
#include <__memory/uses_allocator.h>
#include <typeinfo>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header
#endif

View File

@ -520,7 +520,6 @@ basic_string<char32_t> operator "" s( const char32_t *str, size_t len ); // C++1
#include <__config>
#include <__debug>
#include <__functional_base>
#include <__ios/fpos.h>
#include <__iterator/wrap_iter.h>
#include <algorithm>
@ -538,6 +537,16 @@ basic_string<char32_t> operator "" s( const char32_t *str, size_t len ); // C++1
#include <utility>
#include <version>
// TODO: remove these headers
#include <__functional/binary_function.h>
#include <__functional/invoke.h>
#include <__functional/operations.h>
#include <__functional/reference_wrapper.h>
#include <__functional/unary_function.h>
#include <__functional/weak_result_type.h>
#include <new>
#include <typeinfo>
#ifndef _LIBCPP_HAS_NO_WIDE_CHARACTERS
# include <cwchar>
#endif

View File

@ -145,7 +145,6 @@ template <> struct hash<std::error_condition>;
#include <__config>
#include <__errc>
#include <__functional/unary_function.h>
#include <__functional_base>
#include <compare>
#include <stdexcept>
#include <string>

View File

@ -84,7 +84,6 @@ void sleep_for(const chrono::duration<Rep, Period>& rel_time);
#include <__config>
#include <__debug>
#include <__functional_base>
#include <__mutex_base>
#include <__thread/poll_with_backoff.h>
#include <__thread/timed_backoff_policy.h>

View File

@ -169,7 +169,6 @@ template <class... Types>
#include <__compare/synth_three_way.h>
#include <__config>
#include <__functional/unwrap_ref.h>
#include <__functional_base>
#include <__memory/allocator_arg_t.h>
#include <__memory/uses_allocator.h>
#include <__tuple>
@ -182,6 +181,17 @@ template <class... Types>
#include <utility>
#include <version>
// TODO: remove these headers
#include <__functional/binary_function.h>
#include <__functional/invoke.h>
#include <__functional/operations.h>
#include <__functional/reference_wrapper.h>
#include <__functional/unary_function.h>
#include <__functional/weak_result_type.h>
#include <exception>
#include <new>
#include <typeinfo>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header
#endif

View File

@ -46,11 +46,21 @@ struct hash<type_index>
#include <__config>
#include <__functional/unary_function.h>
#include <__functional_base>
#include <compare>
#include <typeinfo>
#include <version>
// TODO: remove these headers
#include <__functional/binary_function.h>
#include <__functional/invoke.h>
#include <__functional/operations.h>
#include <__functional/reference_wrapper.h>
#include <__functional/weak_result_type.h>
#include <__memory/allocator_arg_t.h>
#include <__memory/uses_allocator.h>
#include <new>
#include <utility>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header
#endif

View File

@ -202,6 +202,8 @@ namespace std {
#include <__availability>
#include <__config>
#include <__functional/hash.h>
#include <__functional/operations.h>
#include <__functional/unary_function.h>
#include <__tuple>
#include <__utility/forward.h>
#include <__variant/monostate.h>
@ -215,6 +217,15 @@ namespace std {
#include <utility>
#include <version>
// TODO: remove these headers
#include <__functional/binary_function.h>
#include <__functional/invoke.h>
#include <__functional/reference_wrapper.h>
#include <__functional/weak_result_type.h>
#include <__memory/allocator_arg_t.h>
#include <__memory/uses_allocator.h>
#include <typeinfo>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header
#endif

View File

@ -274,7 +274,6 @@ erase_if(vector<T, Allocator>& c, Predicate pred); // C++20
#include <__bit_reference>
#include <__config>
#include <__debug>
#include <__functional_base>
#include <__iterator/iterator_traits.h>
#include <__iterator/wrap_iter.h>
#include <__split_buffer>
@ -292,6 +291,16 @@ erase_if(vector<T, Allocator>& c, Predicate pred); // C++20
#include <type_traits>
#include <version>
// TODO: remove these headers
#include <__functional/binary_function.h>
#include <__functional/invoke.h>
#include <__functional/operations.h>
#include <__functional/reference_wrapper.h>
#include <__functional/unary_function.h>
#include <__functional/weak_result_type.h>
#include <typeinfo>
#include <utility>
#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header
#endif

View File

@ -12,8 +12,9 @@
// Test iterator category and iterator concepts.
#include <ranges>
#include <cassert>
#include <cstdint>
#include <ranges>
#include "test_macros.h"
#include "../types.h"

View File

@ -15,8 +15,9 @@
// friend constexpr difference_type operator-(const iterator& x, const iterator& y)
// requires advanceable<W>;
#include <ranges>
#include <cassert>
#include <cstdint>
#include <ranges>
#include "test_macros.h"
#include "../types.h"

View File

@ -53,7 +53,7 @@ def is_still_public(path):
rp = relative_path(path)
return not rp.startswith('__support') and rp not in [
"__bsd_locale_defaults.h", "__bsd_locale_fallbacks.h", "__config",
"__config_site.in", "__debug", "__hash_table", "__functional_base",
"__config_site.in", "__debug", "__hash_table",
"__libcpp_version", "__threading_support", "__tree", "__undef_macros"
]

View File

@ -274,7 +274,6 @@ if (current_toolchain == default_toolchain) {
"__functional/unary_negate.h",
"__functional/unwrap_ref.h",
"__functional/weak_result_type.h",
"__functional_base",
"__hash_table",
"__ios/fpos.h",
"__iterator/access.h",