Commit a80f916
committed
[cling] Use SuppressUnwrittenScope to strip anonymous namespace names
Since LLVM12, suppressing inline and anonymous namespaces were separated
into distinct flags:
- SuppressUnwrittenScope: suppresses anonymous namespaces
- SuppressInlineNamespace: suppresses redundant inline namespaces
See: llvm/llvm-project@5f12f4ff
Add `SuppressUnwrittenScope = true` to strip anonymous namespace prefixes
Without this, types in anonymous namespaces are printed as
'::(anonymous namespace)::EvNavHandler' which is invalid C++ and causes
compilation failures in rootcling-generated dictionary code as seen when
building dd4hep against ROOT LLVM22.
We were relying on `SuppressScope` which was removed in LLVM22.
Also update the Transform.C test to reflect the corrected output1 parent 8701053 commit a80f916
2 files changed
Lines changed: 11 additions & 7 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
660 | 660 | | |
661 | 661 | | |
662 | 662 | | |
663 | | - | |
664 | | - | |
| 663 | + | |
| 664 | + | |
| 665 | + | |
| 666 | + | |
665 | 667 | | |
666 | 668 | | |
667 | 669 | | |
| |||
4231 | 4233 | | |
4232 | 4234 | | |
4233 | 4235 | | |
4234 | | - | |
4235 | | - | |
| 4236 | + | |
| 4237 | + | |
| 4238 | + | |
4236 | 4239 | | |
4237 | 4240 | | |
4238 | 4241 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
231 | 231 | | |
232 | 232 | | |
233 | 233 | | |
234 | | - | |
235 | | - | |
| 234 | + | |
| 235 | + | |
| 236 | + | |
236 | 237 | | |
237 | 238 | | |
238 | 239 | | |
239 | 240 | | |
240 | 241 | | |
241 | 242 | | |
242 | 243 | | |
243 | | - | |
| 244 | + | |
244 | 245 | | |
245 | 246 | | |
246 | 247 | | |
| |||
0 commit comments