Skip to content

Commit 56613d3

Browse files
authored
change test that was tickling gcc#124862 (#2024)
2 parents b06fe4b + b830b02 commit 56613d3

File tree

1 file changed

+24
-5
lines changed

1 file changed

+24
-5
lines changed

test/stdexec/schedulers/test_task_scheduler.cpp

Lines changed: 24 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -52,15 +52,34 @@ namespace
5252
static bool g_called = false;
5353

5454
template <class Sndr>
55-
struct opaque_sender : private Sndr
55+
struct opaque_sender
5656
{
5757
using sender_concept = ex::sender_tag;
58+
5859
explicit opaque_sender(Sndr sndr)
59-
: Sndr{std::move(sndr)}
60+
: sndr_{std::move(sndr)}
6061
{}
61-
using Sndr::connect;
62-
using Sndr::get_completion_signatures;
63-
using Sndr::get_env;
62+
63+
template <class Rcvr>
64+
auto connect(Rcvr rcvr) &&
65+
{
66+
return std::move(sndr_).connect(std::move(rcvr));
67+
}
68+
69+
template <std::same_as<opaque_sender>, class... Env>
70+
static consteval auto get_completion_signatures()
71+
{
72+
return Sndr::template get_completion_signatures<Sndr, Env...>();
73+
}
74+
75+
[[nodiscard]]
76+
auto get_env() const noexcept -> ex::env_of_t<Sndr>
77+
{
78+
return ex::get_env(sndr_);
79+
}
80+
81+
private:
82+
Sndr sndr_;
6483
};
6584

6685
struct test_domain

0 commit comments

Comments
 (0)