33 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: no-threads10 11// <future>12 13// class promise<R>14 15// promise& operator=(const promise& rhs) = delete;16 17#include <future>18 19void f() {20 {21 std::promise<int> p0, p;22 p = p0; // expected-error {{overload resolution selected deleted operator '='}}23 }24 {25 std::promise<int&> p0, p;26 p = p0; // expected-error {{overload resolution selected deleted operator '='}}27 }28 {29 std::promise<void> p0, p;30 p = p0; // expected-error {{overload resolution selected deleted operator '='}}31 }32}33