Transitioning libgomp from C to C++ implementation
Project / Subsystem
gcc / gcc
Date
2026-05-07
Proposer
Thomas Schwinge <tschwinge@baylibre.com>
Source type
public_inbox
Consensus
Proposed
Sentiment
—/10
Technical tradeoffs
- • Potential for increased code complexity due to C++ features.
- • Risk of introducing performance regressions.
- • Need to maintain ABI compatibility with existing C interface.
- • Increased build time due to C++ compilation.
- • Learning curve for developers unfamiliar with C++.
All attributes
- project
- gcc
- subsystem
- gcc
- patch_id
- —
- discussion_id
- 87ik8zzcyc.fsf@euler.schwinge.ddns.net
- source_type
- public_inbox
- title
- Transitioning libgomp from C to C++ implementation
- headline
- Transitioning libgomp from C to C++ implementation
- tldr
- Thomas Schwinge proposes transitioning libgomp from C to C++ to improve type safety and enable better OpenMP OMPT implementation.
- proposer
- Thomas Schwinge <tschwinge@baylibre.com>
- consensus
- Proposed
- outcome
- proposed
- sentiment_score
- —
- technical_tradeoffs
-
- • Potential for increased code complexity due to C++ features.
- • Risk of introducing performance regressions.
- • Need to maintain ABI compatibility with existing C interface.
- • Increased build time due to C++ compilation.
- • Learning curve for developers unfamiliar with C++.
- series_id
- —
- series_role
- standalone
- series_parts
- []
- tags
-
- • libgomp
- • OpenMP
- • OMPT
- • C++
- • ABI
- bugzilla_url
- —
- date
- 2026-05-07T00:00:00.000Z
Transitioning libgomp from C to C++ implementation
Thomas Schwinge proposes transitioning libgomp, the GNU Offloading and Multi Processing Runtime Library, from C to C++. The goal is to enhance type safety, refactor data structures, and improve the implementation of OpenMP OMPT (OpenMP Tools) by using C++ boolean templates. The transition will avoid libstdc++ dependencies, RTTI, and C++ exceptions, and performance will be evaluated to ensure negligible overhead when OMPT is not loaded.