Landing: 2ba702c966e3
Project / Subsystem
gcc / libstdc++
Date
2026-04-01
Author
Jonathan Wakely
Commit
2ba702c966e3772d3d4e29e4b25beb7ef4dabf73
Source
github
Perf win
No
Breaking
No
All attributes
- project
- gcc
- subsystem
- libstdc++
- patch_id
- —
- commit_hash
- 2ba702c966e3772d3d4e29e4b25beb7ef4dabf73
- source_type
- github
- headline
- libstdc++: Restore allocator constructor for std::packaged_task.
- tldr
- Restores the allocator constructor for `std::packaged_task` and removes incorrect allocator-related specializations from `std::promise`.
- author
- Jonathan Wakely
- outcome
- committed
- performance_win
- false
- breaking_change
- false
- series_id
- —
- series_parts
- []
- tags
-
- • libstdc++
- • allocator
- • packaged_task
- • promise
- discussion_id_link
- —
- bugzilla_pr
- —
- date
- 2026-04-01T00:00:00.000Z
This commit restores the allocator constructor for std::packaged_task that was previously removed, aligning with the approved P3503R3 proposal. It also removes allocator-extended constructors of std::promise and std::packaged_task that were added preemptively but are not part of the standard. Additionally, it removes the std::uses_allocator partial specializations for std::promise and std::packaged_task, ensuring consistency across C++ standard versions from C++11 onwards.