@@ -23,8 +23,11 @@ struct state {
2323
2424 template <typename R>
2525 state (int value, R&& r) : value(value), receiver(std::forward<R>(r)) {}
26+ state (const state&) = delete ;
2627 state (state&&) = delete ;
27- ~state () = default ;
28+ ~state () = default ;
29+ auto operator =(const state&) -> state& = delete ;
30+ auto operator =(state&&) -> state& = delete ;
2831 auto start () noexcept -> void {}
2932};
3033
@@ -43,8 +46,11 @@ struct rvalue_sender {
4346 int value{};
4447
4548 explicit rvalue_sender (int value) : value(value) {}
49+ rvalue_sender (const rvalue_sender&) = delete ;
4650 rvalue_sender (rvalue_sender&&) = default ;
47- auto operator =(rvalue_sender&&) -> rvalue_sender& = default ;
51+ auto operator =(const rvalue_sender&) -> rvalue_sender& = delete ;
52+ auto operator =(rvalue_sender&&) -> rvalue_sender& = default ;
53+ ~rvalue_sender () = default ;
4854
4955 template <typename Receiver>
5056 auto connect (Receiver&& receiver) && -> state<kind::plain, Receiver> {
@@ -64,7 +70,10 @@ struct receiver {
6470 explicit receiver (int value, bool * set_stopped_called = {})
6571 : value(value), set_stopped_called(set_stopped_called) {}
6672 receiver (receiver&&) = default ;
73+ receiver (const receiver&) = delete ;
74+ ~receiver () = default ;
6775 auto operator =(receiver&&) -> receiver& = default ;
76+ auto operator =(const receiver&) -> receiver& = delete ;
6877 auto operator ==(const receiver&) const -> bool = default ;
6978
7079 auto get_env () const noexcept -> env { return {this ->value + 2 }; }
@@ -97,7 +106,10 @@ struct domain_receiver {
97106
98107 explicit domain_receiver (int value) : value(value) {}
99108 domain_receiver (domain_receiver&&) = default;
100- auto operator =(domain_receiver&&) -> domain_receiver& = default ;
109+ domain_receiver (const domain_receiver&) = delete;
110+ ~domain_receiver () = default ;
111+ auto operator =(domain_receiver&&) -> domain_receiver& = default ;
112+ auto operator =(const domain_receiver&) -> domain_receiver& = delete ;
101113
102114 auto operator ==(const domain_receiver&) const -> bool = default ;
103115
0 commit comments