136b8d02cSMikhail Dvorskiy // -*- C++ -*- 236b8d02cSMikhail Dvorskiy //===-- scan.fail.cpp -----------------------------------------------------===// 336b8d02cSMikhail Dvorskiy // 436b8d02cSMikhail Dvorskiy // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 536b8d02cSMikhail Dvorskiy // See https://llvm.org/LICENSE.txt for license information. 636b8d02cSMikhail Dvorskiy // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 736b8d02cSMikhail Dvorskiy // 836b8d02cSMikhail Dvorskiy //===----------------------------------------------------------------------===// 936b8d02cSMikhail Dvorskiy 10*b5e896c0SLouis Dionne // UNSUPPORTED: c++03, c++11, c++14 1136b8d02cSMikhail Dvorskiy 1236b8d02cSMikhail Dvorskiy #include <execution> 1336b8d02cSMikhail Dvorskiy #include <numeric> 1436b8d02cSMikhail Dvorskiy 1536b8d02cSMikhail Dvorskiy struct CustomPolicy 1636b8d02cSMikhail Dvorskiy { 1736b8d02cSMikhail Dvorskiy constexpr std::false_type 1836b8d02cSMikhail Dvorskiy __allow_vector() 1936b8d02cSMikhail Dvorskiy { 2036b8d02cSMikhail Dvorskiy return std::false_type{}; 2136b8d02cSMikhail Dvorskiy } 2236b8d02cSMikhail Dvorskiy constexpr std::false_type 2336b8d02cSMikhail Dvorskiy __allow_parallel() 2436b8d02cSMikhail Dvorskiy { 2536b8d02cSMikhail Dvorskiy return std::false_type{}; 2636b8d02cSMikhail Dvorskiy } 2736b8d02cSMikhail Dvorskiy } policy; 2836b8d02cSMikhail Dvorskiy 2936b8d02cSMikhail Dvorskiy int32_t 3036b8d02cSMikhail Dvorskiy main() 3136b8d02cSMikhail Dvorskiy { 3236b8d02cSMikhail Dvorskiy int *first = nullptr, *last = nullptr, *result = nullptr; 3336b8d02cSMikhail Dvorskiy 3436b8d02cSMikhail Dvorskiy std::exclusive_scan(policy, first, last, result, 0); // expected-error {{no matching function for call to 'exclusive_scan'}} 3536b8d02cSMikhail Dvorskiy std::exclusive_scan(policy, first, last, result, 0, std::plus<int>()); // expected-error {{no matching function for call to 'exclusive_scan'}} 3636b8d02cSMikhail Dvorskiy 3736b8d02cSMikhail Dvorskiy return 0; 3836b8d02cSMikhail Dvorskiy } 39