Landing: a6cb4f459e78
Project / Subsystem
gcc / libstdc++
Date
2026-09-11
Author
Tomasz Kamiński
Commit
a6cb4f459e781eb066290f3bbcd0569901e372b1
Source
github
Perf win
No
Breaking
No
All attributes
- project
- gcc
- subsystem
- libstdc++
- patch_id
- —
- commit_hash
- a6cb4f459e781eb066290f3bbcd0569901e372b1
- source_type
- github
- headline
- Libstdc++ constexpr support for inplace_vector improved.
- tldr
- Libstdc++ enhances inplace_vector's constexpr support for union lifetime rules and error reporting.
- author
- Tomasz Kamiński
- outcome
- committed
- performance_win
- false
- breaking_change
- false
- series_id
- —
- series_parts
- []
- tags
-
- • libstdc++
- • constexpr
- • c++ standard
- • union
- discussion_id_link
- —
- bugzilla_pr
- —
- date
- 2026-09-11T00:00:00.000Z
Libstdc++ has improved inplace_vector’s constexpr support by implementing the remaining aspects of the P3726R2 standard, specifically concerning union lifetime rules. It now uses std::start_lifetime in _M_init and utilizes __builtin_constexpr_diag for better compile-time error messages. This change also removes an older optimization-hindering approach and ensures better compatibility with compiler behavior regarding union member writes.