Landing: 78090f55dbb8

Project / Subsystem

gcc / libstdc++

Date

2026-06-05

Author

Yuao Ma

Commit

78090f55dbb896e57f14b3ab2c333d1f5adb4815

Source

github

Perf win

No

Breaking

No

All attributes

project
gcc
subsystem
libstdc++
patch_id
commit_hash
78090f55dbb896e57f14b3ab2c333d1f5adb4815
source_type
github
headline
Libstdc++: Generator avoids ill-formed nested types
tldr
The libstdc++ generator now correctly handles nested types by changing its second template parameter to `void`, resolving a long-standing issue with ill-formed…
author
Yuao Ma
outcome
committed
performance_win
false
breaking_change
false
series_id
series_parts
[]
tags
  • libstdc++
  • c++23
  • generator
  • bugfix
  • template
discussion_id_link
bugzilla_pr
date
2026-06-05T00:00:00.000Z

The generator::yield_value in libstdc++ has been updated to use void as its second template parameter instead of range_value_t<R>. This change addresses a bug (LWG 4119) that caused ill-formed code when dealing with nested generators. The fix ensures that the library correctly handles such scenarios, preventing compilation errors for users.