1 //===----------------------------------------------------------------------===//
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
7 //===----------------------------------------------------------------------===//
9 // UNSUPPORTED: c++03, c++11, c++14, c++17
12 // concept permutable = see below; // Since C++20
16 template<class I
> void test_subsumption() requires
std::forward_iterator
<I
>;
17 template<class I
> void test_subsumption() requires
std::indirectly_movable_storable
<I
, I
>;
18 template<class I
> void test_subsumption() requires
std::indirectly_swappable
<I
, I
>;
19 template<class I
> constexpr bool test_subsumption() requires
std::permutable
<I
> { return true; }
20 static_assert(test_subsumption
<int*>());