https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117905
Bug ID: 117905 Summary: PSTL algos in<numeric> require copy-constructible Product: gcc Version: 15.0 Status: UNCONFIRMED Keywords: rejects-valid Severity: normal Priority: P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: redi at gcc dot gnu.org Target Milestone: --- All of reduce, transform_reduce, exclusive_scan, and inclusive_scan, transform_exclusive_scan, and transform_inclusive_scan only have a precondition on the type of init that it meets the Cpp17MoveConstructible requirements, so when passing it to the next internal function it needs to be moved, not copied. Also when creating local variables on the stack, and when returning as part of a pair.