1eb5cfb02SEric Fiselier //===----------------------------------------------------------------------===// 2eb5cfb02SEric Fiselier // 357b08b09SChandler Carruth // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 457b08b09SChandler Carruth // See https://llvm.org/LICENSE.txt for license information. 557b08b09SChandler Carruth // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6eb5cfb02SEric Fiselier // 7eb5cfb02SEric Fiselier //===----------------------------------------------------------------------===// 8eb5cfb02SEric Fiselier // 9*a7f9895cSLouis Dionne // UNSUPPORTED: no-threads 1031cbe0f2SLouis Dionne // UNSUPPORTED: c++03 11eb5cfb02SEric Fiselier 12eb5cfb02SEric Fiselier // <future> 13eb5cfb02SEric Fiselier 14eb5cfb02SEric Fiselier // class packaged_task<R(ArgTypes...)> 15eb5cfb02SEric Fiselier 16eb5cfb02SEric Fiselier // packaged_task(); 17eb5cfb02SEric Fiselier 18eb5cfb02SEric Fiselier #include <future> 19eb5cfb02SEric Fiselier #include <cassert> 20eb5cfb02SEric Fiselier 217fc6a556SMarshall Clow #include "test_macros.h" 227fc6a556SMarshall Clow 23eb5cfb02SEric Fiselier struct A {}; 24eb5cfb02SEric Fiselier main(int,char **)252df59c50SJF Bastienint main(int, char**) 26eb5cfb02SEric Fiselier { 27eb5cfb02SEric Fiselier std::packaged_task<A(int, char)> p; 28eb5cfb02SEric Fiselier assert(!p.valid()); 292df59c50SJF Bastien 302df59c50SJF Bastien return 0; 31eb5cfb02SEric Fiselier } 32