28 lines · cpp
1//===----------------------------------------------------------------------===//2//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-exception6//7//===----------------------------------------------------------------------===//8 9// UNSUPPORTED: c++03, c++11, c++14, c++1710 11// template<class In, class Out>12// concept indirectly_copyable;13 14#include <iterator>15 16template<std::indirectly_readable I, class O>17constexpr bool indirectly_copyable_subsumption() {18 return false;19}20 21template<class I, class O>22 requires std::indirectly_copyable<I, O>23constexpr bool indirectly_copyable_subsumption() {24 return true;25}26 27static_assert(indirectly_copyable_subsumption<int*, int*>());28