Landing: 98a6b0be1dda

Project / Subsystem

gcc / gcc/forwprop

Date

2026-08-23

Author

Andrea Pinski

Commit

98a6b0be1dda04d3155723f596041a41fc18678b

Source

github

Perf win

No

Breaking

No

All attributes

project
gcc
subsystem
gcc/forwprop
patch_id
—
commit_hash
98a6b0be1dda04d3155723f596041a41fc18678b
source_type
github
headline
forwprop: Wrap C++ enums/structs in anonymous namespace
tldr
Prevents ODR violations by localizing C++ types in the forward propagation pass.
author
Andrea Pinski
outcome
committed
performance_win
false
breaking_change
false
series_id
—
series_parts
[]
tags
  • • gcc
  • • refactor
  • • c++
discussion_id_link
—
bugzilla_pr
—
date
2026-08-23T00:00:00.000Z

This commit encapsulates the long_mul_kind enum, long_mul_extract enum, and long_mul_summand struct within an anonymous namespace in tree-ssa-forwprop.cc. This change prevents potential One Definition Rule (ODR) conflicts by ensuring these types are local to the translation unit, rather than polluting the global scope. This improves code modularity and avoids issues in larger projects where symbol name collisions could occur.