Landing: 9d02b118ee10
Project / Subsystem
gcc / libstdc++
Date
2026-03-11
Author
Jonathan Wakely
Commit
9d02b118ee10506f90c7cf0e439108f48d370fc1
Source
github
Impact
7/10
Perf win
No
Breaking
No
All attributes
- project
- gcc
- subsystem
- libstdc++
- patch_id
- —
- commit_hash
- 9d02b118ee10506f90c7cf0e439108f48d370fc1
- source_type
- github
- headline
- Libstdc++: Ensure module initialization functions are present in the library.
- tldr
- Adds module initialization functions to libstdc++.so and libstdc++.a, ensuring users of std and std.compat modules don't need manual linking.
- why_it_matters
- Simplifies the use of C++23 modules by ensuring that necessary initialization functions are automatically included in the library, reducing manual configuration.
- author
- Jonathan Wakely
- impact_score
- 7
- impact_rationale
- Improves the user experience when working with C++23 modules by streamlining the linking process.
- outcome
- committed
- performance_win
- false
- breaking_change
- false
- series_id
- —
- series_parts
- []
- tags
-
- • libstdc++
- • modules
- • C++23
- • linking
- discussion_id_link
- —
- bugzilla_pr
- —
- date
- 2026-03-11T00:00:00.000Z
This commit aims to ensure that the module initialization functions are present in libstdc++.so and libstdc++.a. This prevents users of the std and std.compat modules from needing to manually link to std.o and/or std.compat.o. To avoid breaking bootstrap on some platforms, the commit allows the module compilation to fail, in which case an empty translation unit will be used instead.