Skip to content

Commit

Permalink
[libc++] Granularize <utility> includes
Browse files Browse the repository at this point in the history
Reviewed By: ldionne, #libc

Spies: EricWF, libcxx-commits, arphaman

Differential Revision: https://reviews.llvm.org/D120466
  • Loading branch information
philnik777 committed Mar 5, 2022
1 parent 14af99d commit 52915d7
Show file tree
Hide file tree
Showing 41 changed files with 97 additions and 29 deletions.
1 change: 1 addition & 0 deletions libcxx/include/__algorithm/rotate.h
Expand Up @@ -16,6 +16,7 @@
#include <__iterator/iterator_traits.h>
#include <__iterator/next.h>
#include <__iterator/prev.h>
#include <__utility/move.h>
#include <__utility/swap.h>
#include <iterator>

Expand Down
1 change: 1 addition & 0 deletions libcxx/include/__format/formatter.h
Expand Up @@ -20,6 +20,7 @@
#include <__format/format_fwd.h>
#include <__format/format_string.h>
#include <__format/parser_std_format_spec.h>
#include <__utility/move.h>
#include <__utility/unreachable.h>
#include <string_view>

Expand Down
1 change: 1 addition & 0 deletions libcxx/include/__functional/function.h
Expand Up @@ -22,6 +22,7 @@
#include <__memory/shared_ptr.h>
#include <__utility/forward.h>
#include <__utility/move.h>
#include <__utility/swap.h>
#include <exception>
#include <memory> // TODO: replace with <__memory/__builtin_new_allocator.h>
#include <type_traits>
Expand Down
4 changes: 3 additions & 1 deletion libcxx/include/__hash_table
Expand Up @@ -17,12 +17,14 @@
#include <__config>
#include <__debug>
#include <__functional/hash.h>
#include <__utility/swap.h>
#include <cmath>
#include <initializer_list>
#include <iterator>
#include <memory>
#include <type_traits>
#include <utility>

#include <utility> // TODO: Remove this

#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header
Expand Down
3 changes: 2 additions & 1 deletion libcxx/include/__locale
Expand Up @@ -18,7 +18,8 @@
#include <memory>
#include <mutex>
#include <string>
#include <utility>

#include <utility> // TODO: Remove this

#if defined(_LIBCPP_MSVCRT_LIKE)
# include <__support/win32/locale_win32.h>
Expand Down
1 change: 1 addition & 0 deletions libcxx/include/__memory/shared_ptr.h
Expand Up @@ -24,6 +24,7 @@
#include <__memory/unique_ptr.h>
#include <__utility/forward.h>
#include <__utility/move.h>
#include <__utility/swap.h>
#include <cstddef>
#include <cstdlib> // abort
#include <iosfwd>
Expand Down
1 change: 1 addition & 0 deletions libcxx/include/__tree
Expand Up @@ -13,6 +13,7 @@
#include <__algorithm/min.h>
#include <__config>
#include <__utility/forward.h>
#include <__utility/swap.h>
#include <iterator>
#include <limits>
#include <memory>
Expand Down
3 changes: 2 additions & 1 deletion libcxx/include/algorithm
Expand Up @@ -692,9 +692,10 @@ template <class BidirectionalIterator, class Compare>
#include <iterator>
#include <memory>
#include <type_traits>
#include <utility>
#include <version>

#include <utility> // TODO: Remove this

#include <__algorithm/adjacent_find.h>
#include <__algorithm/all_of.h>
#include <__algorithm/any_of.h>
Expand Down
2 changes: 2 additions & 0 deletions libcxx/include/any
Expand Up @@ -83,6 +83,8 @@ namespace std {
#include <__availability>
#include <__config>
#include <__utility/forward.h>
#include <__utility/in_place.h>
#include <__utility/move.h>
#include <cstdlib>
#include <memory>
#include <type_traits>
Expand Down
5 changes: 4 additions & 1 deletion libcxx/include/array
Expand Up @@ -115,13 +115,16 @@ template <size_t I, class T, size_t N> const T&& get(const array<T, N>&&) noexce
#include <__assert>
#include <__config>
#include <__tuple>
#include <__utility/integer_sequence.h>
#include <__utility/move.h>
#include <__utility/unreachable.h>
#include <iterator>
#include <stdexcept>
#include <type_traits>
#include <utility>
#include <version>

#include <utility> // TODO: Remove this

#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header
#endif
Expand Down
2 changes: 2 additions & 0 deletions libcxx/include/deque
Expand Up @@ -174,6 +174,8 @@ template <class T, class Allocator, class Predicate>
#include <__iterator/iterator_traits.h>
#include <__split_buffer>
#include <__utility/forward.h>
#include <__utility/move.h>
#include <__utility/swap.h>
#include <compare>
#include <initializer_list>
#include <iterator>
Expand Down
4 changes: 3 additions & 1 deletion libcxx/include/experimental/memory_resource
Expand Up @@ -66,6 +66,7 @@ namespace pmr {

#include <__assert>
#include <__tuple>
#include <__utility/move.h>
#include <cstddef>
#include <cstdlib>
#include <experimental/__config>
Expand All @@ -75,7 +76,8 @@ namespace pmr {
#include <new>
#include <stdexcept>
#include <type_traits>
#include <utility>

#include <utility> // TODO: Remove this

#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header
Expand Down
5 changes: 4 additions & 1 deletion libcxx/include/experimental/propagate_const
Expand Up @@ -106,10 +106,13 @@
*/

#include <__utility/move.h>
#include <__utility/swap.h>
#include <experimental/__config>
#include <functional>
#include <type_traits>
#include <utility>

#include <utility> // TODO: Remove this

#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header
Expand Down
3 changes: 3 additions & 0 deletions libcxx/include/fstream
Expand Up @@ -184,9 +184,12 @@ typedef basic_fstream<wchar_t> wfstream;
#include <__availability>
#include <__config>
#include <__locale>
#include <__utility/move.h>
#include <__utility/swap.h>
#include <__utility/unreachable.h>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <istream>
#include <ostream>
#include <version>
Expand Down
3 changes: 2 additions & 1 deletion libcxx/include/functional
Expand Up @@ -525,9 +525,10 @@ POLICY: For non-variadic implementations, the number of arguments is limited
#include <tuple>
#include <type_traits>
#include <typeinfo>
#include <utility>
#include <version>

#include <utility> // TODO: Remove this

#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header
#endif
Expand Down
1 change: 1 addition & 0 deletions libcxx/include/future
Expand Up @@ -370,6 +370,7 @@ template <class R, class Alloc> struct uses_allocator<packaged_task<R>, Alloc>;
#include <__memory/uses_allocator.h>
#include <__utility/auto_cast.h>
#include <__utility/forward.h>
#include <__utility/move.h>
#include <exception>
#include <memory>
#include <mutex>
Expand Down
1 change: 1 addition & 0 deletions libcxx/include/ios
Expand Up @@ -213,6 +213,7 @@ storage-class-specifier const error_category& iostream_category() noexcept;
#include <__config>
#include <__ios/fpos.h>
#include <__locale>
#include <__utility/swap.h>
#include <iosfwd>
#include <system_error>
#include <version>
Expand Down
3 changes: 2 additions & 1 deletion libcxx/include/iterator
Expand Up @@ -654,9 +654,10 @@ template <class E> constexpr const E* data(initializer_list<E> il) noexcept;
#include <cstddef>
#include <initializer_list>
#include <type_traits>
#include <utility>
#include <version>

#include <utility> // TODO: Remove this

// TODO: remove these headers
#include <__functional/binary_function.h>
#include <__functional/invoke.h>
Expand Down
2 changes: 2 additions & 0 deletions libcxx/include/list
Expand Up @@ -188,6 +188,8 @@ template <class T, class Allocator, class Predicate>
#include <__config>
#include <__debug>
#include <__utility/forward.h>
#include <__utility/move.h>
#include <__utility/swap.h>
#include <initializer_list>
#include <iterator>
#include <limits>
Expand Down
4 changes: 3 additions & 1 deletion libcxx/include/map
Expand Up @@ -537,15 +537,17 @@ erase_if(multimap<Key, T, Compare, Allocator>& c, Predicate pred); // C++20
#include <__node_handle>
#include <__tree>
#include <__utility/forward.h>
#include <__utility/swap.h>
#include <compare>
#include <functional>
#include <initializer_list>
#include <iterator> // __libcpp_erase_if_container
#include <memory>
#include <type_traits>
#include <utility>
#include <version>

#include <utility> // TODO: Remove this

#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header
#endif
Expand Down
3 changes: 2 additions & 1 deletion libcxx/include/memory
Expand Up @@ -833,9 +833,10 @@ void* align(size_t alignment, size_t size, void*& ptr, size_t& space);
#include <tuple>
#include <type_traits>
#include <typeinfo>
#include <utility>
#include <version>

#include <utility> // TODO: Remove this

// TODO: remove these headers
#include <__functional/binary_function.h>
#include <__functional/invoke.h>
Expand Down
5 changes: 4 additions & 1 deletion libcxx/include/optional
Expand Up @@ -162,15 +162,18 @@ template<class T>
#include <__availability>
#include <__concepts/invocable.h>
#include <__config>
#include <__utility/in_place.h>
#include <__utility/swap.h>
#include <compare>
#include <functional>
#include <initializer_list>
#include <new>
#include <stdexcept>
#include <type_traits>
#include <utility>
#include <version>

#include <utility> // TODO: Remove this

// TODO: remove these headers
#include <__memory/allocator_arg_t.h>
#include <__memory/uses_allocator.h>
Expand Down
5 changes: 4 additions & 1 deletion libcxx/include/regex
Expand Up @@ -767,17 +767,20 @@ typedef regex_token_iterator<wstring::const_iterator> wsregex_token_iterator;
#include <__config>
#include <__iterator/wrap_iter.h>
#include <__locale>
#include <__utility/move.h>
#include <__utility/swap.h>
#include <compare>
#include <deque>
#include <initializer_list>
#include <iterator>
#include <memory>
#include <stdexcept>
#include <string>
#include <utility>
#include <vector>
#include <version>

#include <utility> // TODO: Remove this

#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
# pragma GCC system_header
#endif
Expand Down
1 change: 1 addition & 0 deletions libcxx/include/sstream
Expand Up @@ -181,6 +181,7 @@ typedef basic_stringstream<wchar_t> wstringstream;
*/

#include <__config>
#include <__utility/swap.h>
#include <istream>
#include <ostream>
#include <string>
Expand Down
6 changes: 5 additions & 1 deletion libcxx/include/string
Expand Up @@ -527,6 +527,9 @@ basic_string<char32_t> operator "" s( const char32_t *str, size_t len ); // C++1
#include <__debug>
#include <__ios/fpos.h>
#include <__iterator/wrap_iter.h>
#include <__utility/auto_cast.h>
#include <__utility/move.h>
#include <__utility/swap.h>
#include <compare>
#include <cstdio> // EOF
#include <cstdlib>
Expand All @@ -538,9 +541,10 @@ basic_string<char32_t> operator "" s( const char32_t *str, size_t len ); // C++1
#include <stdexcept>
#include <string_view>
#include <type_traits>
#include <utility>
#include <version>

#include <utility> // TODO: Remove this

// TODO: remove these headers
#include <__functional/binary_function.h>
#include <__functional/invoke.h>
Expand Down
6 changes: 5 additions & 1 deletion libcxx/include/tuple
Expand Up @@ -175,12 +175,16 @@ template <class... Types>
#include <__utility/forward.h>
#include <__utility/integer_sequence.h>
#include <__utility/move.h>
#include <__utility/pair.h>
#include <__utility/piecewise_construct.h>
#include <__utility/swap.h>
#include <compare>
#include <cstddef>
#include <type_traits>
#include <utility>
#include <version>

#include <utility> // TODO: Remove this

// TODO: remove these headers
#include <__functional/binary_function.h>
#include <__functional/invoke.h>
Expand Down
3 changes: 2 additions & 1 deletion libcxx/include/typeindex
Expand Up @@ -50,6 +50,8 @@ struct hash<type_index>
#include <typeinfo>
#include <version>

#include <utility> // TODO: Remove this

// TODO: remove these headers
#include <__functional/binary_function.h>
#include <__functional/invoke.h>
Expand All @@ -59,7 +61,6 @@ struct hash<type_index>
#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
Expand Down
6 changes: 5 additions & 1 deletion libcxx/include/variant
Expand Up @@ -206,6 +206,9 @@ namespace std {
#include <__functional/unary_function.h>
#include <__tuple>
#include <__utility/forward.h>
#include <__utility/in_place.h>
#include <__utility/move.h>
#include <__utility/swap.h>
#include <__variant/monostate.h>
#include <compare>
#include <exception>
Expand All @@ -214,9 +217,10 @@ namespace std {
#include <new>
#include <tuple>
#include <type_traits>
#include <utility>
#include <version>

#include <utility> // TODO: Remove this

// TODO: remove these headers
#include <__functional/binary_function.h>
#include <__functional/invoke.h>
Expand Down
5 changes: 4 additions & 1 deletion libcxx/include/vector
Expand Up @@ -288,6 +288,8 @@ erase_if(vector<T, Allocator>& c, Predicate pred); // C++20
#include <__iterator/wrap_iter.h>
#include <__split_buffer>
#include <__utility/forward.h>
#include <__utility/move.h>
#include <__utility/swap.h>
#include <climits>
#include <compare>
#include <cstdlib>
Expand All @@ -300,6 +302,8 @@ erase_if(vector<T, Allocator>& c, Predicate pred); // C++20
#include <type_traits>
#include <version>

#include <utility> // TODO: Remove this

// TODO: remove these headers
#include <__functional/binary_function.h>
#include <__functional/invoke.h>
Expand All @@ -308,7 +312,6 @@ erase_if(vector<T, Allocator>& c, Predicate pred); // C++20
#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
Expand Down

0 comments on commit 52915d7

Please sign in to comment.