Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 10 additions & 4 deletions libcxx/include/__ranges/iota_view.h
Original file line number Diff line number Diff line change
Expand Up @@ -58,11 +58,17 @@ struct __get_wider_signed {
return type_identity<int>{};
else if constexpr (sizeof(_Int) < sizeof(long))
return type_identity<long>{};
else
else if constexpr (sizeof(_Int) < sizeof(long long))
return type_identity<long long>{};

static_assert(
sizeof(_Int) <= sizeof(long long), "Found integer-like type that is bigger than largest integer like type.");
# if _LIBCPP_HAS_INT128
else if constexpr (sizeof(_Int) <= sizeof(__int128_t))
return type_identity<__int128_t>{};
# else
else if constexpr (sizeof(_Int) <= sizeof(long long))
return type_identity<long long>{};
# endif
else
static_assert(false, "Found integer-like type that is bigger than largest integer like type.");
}

using type = typename decltype(__call())::type;
Expand Down
5 changes: 4 additions & 1 deletion libcxx/include/module.modulemap.in
Original file line number Diff line number Diff line change
Expand Up @@ -2359,7 +2359,10 @@ module std [system] {
module hash_table { header "__hash_table" }
module node_handle { header "__node_handle" }
module split_buffer { header "__split_buffer" }
module tree { header "__tree" }
module tree {
header "__tree"
export std.memory.unique_ptr
}
module std_mbstate_t {
header "__std_mbstate_t.h"
export *
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
#include <cstdint>
#include <iterator>
#include <type_traits>
#include <utility>

#include "test_iterators.h"

Expand Down
2 changes: 2 additions & 0 deletions libcxx/test/libcxx/memory/allocation_guard.pass.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@

#include <__memory/allocation_guard.h>
#include <cassert>
#include <climits>
#include <memory>
#include <type_traits>
#include <utility>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@
// ensure that __uninitialized_allocator_copy calls the proper construct and destruct functions

#include <algorithm>
#include <cassert>
#include <iterator>
#include <memory>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,7 @@

#include "almost_satisfies_types.h"
#include "test_iterators.h"
#include "type_algorithms.h"

struct NotEqualityComparable {};

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
#include <algorithm>
#include <cassert>
#include <cstddef>
#include <cstdint>
#include <vector>

#include "sized_allocator.h"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
#include <array>
#include <cassert>
#include <cstddef>
#include <cstdint>
#include <ranges>
#include <vector>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,10 @@
#include <array>
#include <chrono>
#include <ranges>

#include "almost_satisfies_types.h"
#include "test_iterators.h"
#include "type_algorithms.h"

using namespace std::chrono;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@

#include "almost_satisfies_types.h"
#include "test_iterators.h"
#include "type_algorithms.h"

template <class Iter1, class Sent1 = Iter1, class Iter2 = int*, class Sent2 = Iter2>
concept HasStartsWithIt = requires(Iter1 first1, Sent1 last1, Iter2 first2, Sent2 last2) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@

#include "test_iterators.h"
#include "test_execution_policies.h"
#include "type_algorithms.h"

template <class Iter>
struct Test {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,9 @@

// UNSUPPORTED: c++03

#include <map>
#include <cassert>
#include <map>
#include <type_traits>

#include "test_macros.h"
#include "MoveOnly.h"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,9 @@

// UNSUPPORTED: c++03

#include <map>
#include <cassert>
#include <map>
#include <type_traits>

#include "test_macros.h"
#include "MoveOnly.h"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,9 @@

// UNSUPPORTED: c++03

#include <set>
#include <cassert>
#include <set>
#include <type_traits>

#include "test_macros.h"
#include "MoveOnly.h"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,9 @@

// UNSUPPORTED: c++03

#include <set>
#include <cassert>
#include <set>
#include <type_traits>

#include "test_macros.h"
#include "MoveOnly.h"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@

// flat_map& operator=(const flat_map& m);

#include <cassert>
#include <deque>
#include <flat_map>
#include <functional>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
#include <flat_map>
#include <functional>
#include <vector>
#include <type_traits>

#include "test_macros.h"
#include "MoveOnly.h"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
#include <vector>
#include <flat_map>
#include <ranges>
#include <type_traits>

#include "../flat_helpers.h"
#include "test_allocator.h"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@

// flat_multimap& operator=(const flat_multimap& m);

#include <cassert>
#include <deque>
#include <flat_map>
#include <functional>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
#include <deque>
#include <flat_map>
#include <functional>
#include <type_traits>
#include <vector>

#include "test_macros.h"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
#include <vector>
#include <flat_map>
#include <ranges>
#include <type_traits>

#include "../flat_helpers.h"
#include "test_allocator.h"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
// template <class Alloc>
// flat_multiset(const key_compare& comp, const Alloc& a);

#include <cassert>
#include <deque>
#include <flat_set>
#include <functional>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,10 @@
// flat_multiset& operator=(const flat_multiset& m);

#include <algorithm>
#include <cassert>
#include <flat_set>
#include <functional>
#include <utility>
#include <vector>

#include "operator_hijacker.h"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
#include <deque>
#include <flat_set>
#include <functional>
#include <type_traits>
#include <vector>

#include "test_macros.h"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
// flat_set& operator=(const flat_set& m);

#include <algorithm>
#include <cassert>
#include <deque>
#include <flat_set>
#include <functional>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@
#include <deque>
#include <flat_set>
#include <functional>
#include <type_traits>
#include <vector>

#include "test_macros.h"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@

#include <cassert>
#include <stack>
#include <type_traits>

#include "test_allocator.h"

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@
// belonging to the container being moved. Such move construction of the
// allocator shall not exit via an exception.

#include <cassert>
#include <vector>
#include <deque>
#include <list>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,9 @@

// UNSUPPORTED: c++03

#include <deque>
#include <cassert>
#include <deque>
#include <type_traits>

#include "test_macros.h"
#include "MoveOnly.h"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,9 @@

// UNSUPPORTED: c++03

#include <forward_list>
#include <cassert>
#include <forward_list>
#include <type_traits>

#include "test_macros.h"
#include "MoveOnly.h"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,9 @@

// UNSUPPORTED: c++03

#include <list>
#include <cassert>
#include <list>
#include <type_traits>

#include "test_macros.h"
#include "MoveOnly.h"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
// vector& operator=(vector&& c);

#include <cassert>
#include <utility>
#include <vector>

#include "min_allocator.h"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,9 @@
// For vector<>, this was added to the standard by N4258,
// but vector<bool> was not changed.

#include <vector>
#include <cassert>
#include <vector>
#include <type_traits>

#include "test_macros.h"
#include "test_allocator.h"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,9 @@

// UNSUPPORTED: c++03

#include <vector>
#include <cassert>
#include <vector>
#include <type_traits>

#include "test_macros.h"
#include "test_allocator.h"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,9 @@

// UNSUPPORTED: c++03

#include <vector>
#include <cassert>
#include <vector>
#include <type_traits>

#include "test_macros.h"
#include "test_allocator.h"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,9 @@

// UNSUPPORTED: c++03

#include <vector>
#include <cassert>
#include <vector>
#include <type_traits>

#include "test_macros.h"
#include "test_allocator.h"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,9 @@

// UNSUPPORTED: c++03

#include <vector>
#include <cassert>
#include <vector>
#include <type_traits>

#include "test_macros.h"
#include "MoveOnly.h"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,9 @@

// UNSUPPORTED: c++03

#include <unordered_map>
#include <cassert>
#include <unordered_map>
#include <type_traits>

#include "test_macros.h"
#include "MoveOnly.h"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,9 @@

// UNSUPPORTED: c++03

#include <unordered_map>
#include <cassert>
#include <unordered_map>
#include <type_traits>

#include "test_macros.h"
#include "MoveOnly.h"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,9 @@

// UNSUPPORTED: c++03

#include <unordered_set>
#include <cassert>
#include <unordered_set>
#include <type_traits>

#include "test_macros.h"
#include "MoveOnly.h"
Expand Down
Loading
Loading