120544746SLouis Dionne //===----------------------------------------------------------------------===// 220544746SLouis Dionne // 320544746SLouis Dionne // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 420544746SLouis Dionne // See https://llvm.org/LICENSE.txt for license information. 520544746SLouis Dionne // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 620544746SLouis Dionne // 720544746SLouis Dionne //===----------------------------------------------------------------------===// 820544746SLouis Dionne // 9*a7f9895cSLouis Dionne // UNSUPPORTED: no-threads 1020544746SLouis Dionne 1120544746SLouis Dionne // packaged_task allocator support was removed in C++17 (LWG 2976) 1220544746SLouis Dionne // REQUIRES: c++11 || c++14 1320544746SLouis Dionne 1420544746SLouis Dionne // <future> 1520544746SLouis Dionne 1620544746SLouis Dionne // class packaged_task<R(ArgTypes...)> 1720544746SLouis Dionne 1820544746SLouis Dionne // template <class Callable, class Alloc> 1920544746SLouis Dionne // struct uses_allocator<packaged_task<Callable>, Alloc> 2020544746SLouis Dionne // : true_type { }; 2120544746SLouis Dionne 2220544746SLouis Dionne #include <future> 2320544746SLouis Dionne #include "test_macros.h" 2420544746SLouis Dionne #include "test_allocator.h" 2520544746SLouis Dionne 2620544746SLouis Dionne static_assert((std::uses_allocator<std::packaged_task<double(int, char)>, test_allocator<int> >::value), ""); 27