Skip to content

Commit bafb9b8

Browse files
committed
help nvc++ with class template argument deduction
1 parent 2ccd4b5 commit bafb9b8

File tree

2 files changed

+9
-1
lines changed

2 files changed

+9
-1
lines changed

include/exec/repeat_n.hpp

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ namespace exec {
115115
}
116116

117117
constexpr auto __connect() noexcept(
118-
__nothrow_invocable<STDEXEC::schedule_t, trampoline_scheduler&>
118+
__nothrow_invocable<STDEXEC::schedule_t, trampoline_scheduler &>
119119
&& __nothrow_invocable<sequence_t, schedule_result_t<trampoline_scheduler>, _Child &>
120120
&& __nothrow_connectable<__bouncy_sndr_t, __receiver_t>) -> __child_op_t & {
121121
return __child_op_.__emplace_from(
@@ -149,6 +149,10 @@ namespace exec {
149149
STDEXEC::__optional<__child_op_t> __child_op_;
150150
};
151151

152+
template <class _Child, class _Receiver>
153+
STDEXEC_HOST_DEVICE_DEDUCTION_GUIDE
154+
__opstate(std::size_t, _Child, _Receiver) -> __opstate<_Child, _Receiver>;
155+
152156
struct repeat_n_t;
153157
struct _THE_INPUT_SENDER_MUST_HAVE_VOID_VALUE_COMPLETION_;
154158

include/exec/repeat_until.hpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -170,6 +170,10 @@ namespace exec {
170170
STDEXEC::__optional<__child_op_t> __child_op_;
171171
};
172172

173+
template <class _Child, class _Receiver>
174+
STDEXEC_HOST_DEVICE_DEDUCTION_GUIDE
175+
__opstate(_Child, _Receiver) -> __opstate<_Child, _Receiver>;
176+
173177
STDEXEC_PRAGMA_POP()
174178

175179
struct _EXPECTING_A_SENDER_OF_ONE_VALUE_THAT_IS_CONVERTIBLE_TO_BOOL_ { };

0 commit comments

Comments
 (0)