Landing: 10aa8833b04b

Project / Subsystem

gcc / libstdc++

Date

2026-05-18

Author

Tomasz Kamiński

Commit

10aa8833b04b52bb1ba3084bc59de604d7c38229

Source

github

Perf win

No

Breaking

No

All attributes

project
gcc
subsystem
libstdc++
patch_id
commit_hash
10aa8833b04b52bb1ba3084bc59de604d7c38229
source_type
github
headline
libstdc++: Make is_exhaustive const for layout_(left/right)_padded
tldr
The `is_exhaustive` member function for `layout_left_padded` and `layout_right_padded` in libstdc++ is now correctly marked as `const`.
author
Tomasz Kamiński
outcome
committed
performance_win
false
breaking_change
false
series_id
series_parts
[]
tags
  • libstdc++
  • mdspan
  • c++23
  • standard conformance
discussion_id_link
bugzilla_pr
date
2026-05-18T00:00:00.000Z

The C++ standard requires the is_exhaustive member function to be const for layout mapping types. This patch marks is_exhaustive as const for layout_left_padded and layout_right_padded in libstdc++. This allows calling is_exhaustive on mdspan with these layouts, which was previously ill-formed.