Skip to content

P2300R10 std::execution #4768

Description

WG21-P2300R10 std::execution
WG21-P2079R10 parallel_scheduler
WG21-P3149R11 counting_scope
WG21-P3284R4 write_env And unstoppable Sender Adaptors
WG21-P3325R5 A Utility For Creating Execution Environments
WG21-P3373R4 Of Operation States And Their Lifetimes
WG21-P3388R3 When Do You Know connect Doesn't Throw?
WG21-P3396R1 std::execution Wording Fixes
WG21-P3433R1 Allocator Support For Operation States
WG21-P3481R5 std::execution::bulk() Issues
WG21-P3552R3 std::execution::task: A Coroutine Task Type
WG21-P3557R3 High-Quality Sender Diagnostics With constexpr Exceptions
WG21-P3570R2 Optional Variants In Sender/Receiver
WG21-P3682R0 Remove std::execution::split
WG21-P3804R2 Iterating On parallel_scheduler
WG21-P3815R1 scope_association
WG21-P3826R5 Fix Sender Algorithm Customization
WG21-P3887R1 Make when_all A Ronseal Algorithm
WG21-P3914R0 Assorted NB Comment Resolutions For Kona 2025 (sections 2.2, 2.3, 2.4, 2.5)
WG21-P3923R0 Additional NB Comment Resolutions For Kona 2025 (sections 2.8, 2.9)
WG21-P3927R2 task_scheduler Support For Parallel bulk Execution
WG21-P3941R4 Scheduler Affinity
WG21-P3980R1 task's Allocator Use
WG21-P3986R1 inlinable_receiver
WG21-P4151R1 Rename affine_on To affine
WG21-P4154R0 Renaming Various execution Things
WG21-P4159R0 Make sender-to And receiver-of Exposition-Only
LWG-4133 awaitable-receiver's members are potentially throwing
LWG-4143 execution::set_value/set_error/set_stopped/start should always return void
LWG-4175 get_env() specified in terms of as_const() but this doesn't work with rvalue senders
LWG-4198 schedule_from isn't starting the schedule sender if decay-copying results throws
LWG-4200 The operation_state concept can be simplified
LWG-4201 with-await-transform::await_transform should not use a deduced return type
LWG-4202 enable-sender should be a variable template
LWG-4203 Constraints on get-state functions are incorrect
LWG-4204 Specification of as-sndr2(Sig) in [exec.let] is incomplete
LWG-4205 let_[*].transform_env is specified in terms of the let_* sender itself instead of its child
LWG-4208 Wording needs to ensure that in connect(sndr, rcvr) that rcvr expression is only evaluated once
LWG-4209 default_domain::transform_env should be returning FWD-ENV(env)
LWG-4260 Query objects must be default constructible
LWG-4328 Remove note in [exec.sched] regarding waiting for completion of scheduled operations
LWG-4339 task's coroutine frame may be released late
LWG-4340 task::promise_type::unhandled_stopped() should be noexcept
LWG-4341 Missing rvalue reference qualification for task::connect()
LWG-4342 Missing rvalue reference qualification for task_scheduler::ts-sender::connect()
LWG-4343 Missing default template arguments for task
LWG-4345 task::promise_type::return_value default template parameter
LWG-4346 task::promise_type::return_void/value lack a specification
LWG-4347 task's stop source is always created
LWG-4349 task is not actually started lazily
LWG-4354 Reconsider weakly_parallel as the default forward_progress_guarantee
LWG-4358 [exec.as.awaitable] is using Preconditions: when it should probably be described in the constraint
LWG-4359 as_awaitable(expr, p) does not define semantics of call if p is not an lvalue
LWG-4360 awaitable-sender concept should qualify use of awaitable-receiver type
LWG-4361 awaitable-receiver::set_value should use Mandates instead of constraints
LWG-4369 check-types function for upon_error and upon_stopped is wrong
LWG-4415 task::promise_type::uncaught_exception seems to be misnamed
LWG-4438 Bad expression in [exec.when.all]
LWG-4445 sch_ must not be in moved-from state
LWG-4446 Bad phrasing for SCHED(s)
LWG-4447 Remove unnecessary sizeof...(Env) > 1 condition
LWG-4448 Do not forward fn in completion_signatures
LWG-4455 Add missing constraint to basic-sender::get_completion_signatures definition
LWG-4456 Decay Data and Child in make-sender
LWG-4459 Protect get_completion_signatures fold expression from overloaded commas
LWG-4461 stop-when needs to evaluate unstoppable tokens
LWG-4471 Remove test for get_env noexcept-ness from inline_scheduler
LWG-4476 run_loop should not have a set_error completion
LWG-4485 Move specification for task::stop_token_type
LWG-4504 Wording problem in {simple_}counting_scope
LWG-4525 task's final_suspend should move the result
LWG-4527 await_transform needs to use as_awaitable
LWG-4528 task needs get_completion_signatures()
LWG-4529 task::promise_type::await_transform declaration and definition mismatch
LWG-4540 future-senders returned from spawn_future do not forward stop requests to spawned work
LWG-4568 std::execution::spawn_future is mishandling dependent senders
LWG-4579 make-state<Rcvr>::state-type::complete uses Env which is not in scope

Feature-test macros:

#define __cpp_lib_counting_scope     202506L
#define __cpp_lib_parallel_scheduler 202506L
#define __cpp_lib_senders            202506L
#define __cpp_lib_task               202506L

Note: We are not yet accepting PRs for C++26 features.

Metadata

Metadata

Assignees

No one assigned

    Labels

    compilerCompiler work involvedcxx26C++26 feature

    Type

    No type

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions