Landing: 25a56748f2b5
Project / Subsystem
gcc / plugins
Date
2026-08-24
Author
Josef Melcr
Commit
25a56748f2b58270f4f6addecda004d5dea8e4a3
Source
github
Perf win
No
Breaking
No
All attributes
- project
- gcc
- subsystem
- plugins
- patch_id
- —
- commit_hash
- 25a56748f2b58270f4f6addecda004d5dea8e4a3
- source_type
- github
- headline
- Fix callback_info ODR violation
- tldr
- Resolves an ODR violation related to the callback_info struct when using LTO.
- author
- Josef Melcr
- outcome
- committed
- performance_win
- false
- breaking_change
- false
- series_id
- —
- series_parts
- []
- tags
-
- • plugins
- • LTO
- • ODR violation
- discussion_id_link
- —
- bugzilla_pr
- —
- date
- 2026-08-24T00:00:00.000Z
This commit fixes an ODR (One Definition Rule) violation that occurred due to a naming conflict with the callback_info struct. The struct, defined in plugin.cc, had the same name as another struct in plugin.cc itself (or possibly a different file included transitively). To resolve this, the callback_info struct is now placed within an anonymous namespace, ensuring its uniqueness and preventing ODR issues, particularly when compiling with Link-Time Optimization (LTO).