Landing: 44ecf86ff9d0
Project / Subsystem
gcc / libstdc++
Date
2026-09-29
Author
Tomasz Kamiński
Commit
44ecf86ff9d0fc07a6b8676a38097a1124e0b314
Source
github
Perf win
No
Breaking
No
All attributes
- project
- gcc
- subsystem
- libstdc++
- patch_id
- —
- commit_hash
- 44ecf86ff9d0fc07a6b8676a38097a1124e0b314
- source_type
- github
- headline
- libstdc++: Handle integer-class types as bounds for repeat_view
- tldr
- Enables `repeat_view` to correctly use integer-like types as bounds, fixing issues with unsigned types and difference type calculation.
- author
- Tomasz Kamiński
- outcome
- committed
- performance_win
- false
- breaking_change
- false
- series_id
- —
- series_parts
- []
- tags
-
- • libstdc++
- • C++20
- • ranges
- • iterator
- • concepts
- discussion_id_link
- —
- bugzilla_pr
- —
- date
- 2026-09-29T00:00:00.000Z
This change updates std::ranges::repeat_view to properly handle integer-like types, including unsigned ones, as bounds for the range. Previously, unsigned integer types were rejected because they did not meet certain C++20 concepts, and the calculation of the difference type was flawed for these bounds. This fix implements LWG 3875, ensuring that repeat_view behaves correctly with a wider range of integer types.