llvm/pstl/test/std/algorithms/alg.modifying.operations/alg.reverse/reverse_copy.pass.cpp

// -*- C++ -*-
//===-- reverse_copy.pass.cpp ---------------------------------------------===//
//
// 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
//
//===----------------------------------------------------------------------===//

// UNSUPPORTED: c++03, c++11, c++14

#include "support/pstl_test_config.h"

#include <iterator>
#include <execution>
#include <algorithm>

#include "support/utils.h"

usingnamespaceTestUtils;

template <typename T>
struct wrapper
{};

template <typename T1, typename T2>
bool
eq(const wrapper<T1>& a, const wrapper<T2>& b)
{}

template <typename T1, typename T2>
bool
eq(const T1& a, const T2& b)
{}

// we need to save state here, because we need to test with different types of iterators
// due to the caller invoke_on_all_policies does forcing modification passed iterator type to cover additional usage cases.
template <typename Iterator>
struct test_one_policy
{};

template <typename T1, typename T2>
void
test()
{}

int
main()
{}