Landing: 57a8b54cc4d9
Project / Subsystem
gcc / libstdc++
Date
2026-05-05
Author
Jonathan Wakely
Commit
57a8b54cc4d9d7750d8e98f1df1cbbb1aacfad09
Source
github
Perf win
Yes
Breaking
No
All attributes
- project
- gcc
- subsystem
- libstdc++
- patch_id
- —
- commit_hash
- 57a8b54cc4d9d7750d8e98f1df1cbbb1aacfad09
- source_type
- github
- headline
- Libstdc++: Simplify std::shared_ptr internals
- tldr
- The `_Impl` classes inside `_Sp_counted_deleter` and `_Sp_counted_ptr_inplace` are removed, simplifying the internal layout of `std::shared_ptr`.
- author
- Jonathan Wakely
- outcome
- committed
- performance_win
- true
- breaking_change
- false
- series_id
- —
- series_parts
- []
- tags
-
- • libstdc++
- • shared_ptr
- • refactoring
- • memory management
- discussion_id_link
- —
- bugzilla_pr
- —
- date
- 2026-05-05T00:00:00.000Z
The _Impl classes inside _Sp_counted_deleter and _Sp_counted_ptr_inplace are removed. This change simplifies the internal layout of std::shared_ptr by flattening these classes now that empty base optimization (EBO) is no longer used, streamlining memory management and potentially improving performance.