[clang] Rework the printing of attributes (PR #87281)

Giuliano Belinassi via cfe-commits cfe-commits at lists.llvm.org
Tue Apr 9 06:19:47 PDT 2024


giulianobelinassi wrote:

> > > > > @erichkeane, thank you. What's the process of including this in the next release?
> > > > 
> > > > 
> > > > After CI is complete, you can click "Squash and Merge" below (if you cannot, let us know and someone can do it for you), and it'll be included in the 19.1 release this summer.
> > > 
> > > 
> > > I have commit access. I want this to be part of the 18.x releases as that breaks our downstream clients.
> > 
> > 
> > Ah, hmm... I am not sure this qualifies for inclusion in the current release branch. Perhaps @AaronBallman can comment here.
> 
> I'm not particularly comfortable putting this into 18.x; we should only be pushing very safe fixes to regressions and this one doesn't really qualify. It's debatable whether it's a regression (it sort of is, sort of isn't), but the changes are also relatively involved. I'd feel more comfortable with this in 19.x so we have more time to find and fix remaining edge cases.

How about this single-line fix? It would fix the override regression for now.
```
diff --git a/clang/include/clang/Basic/Attr.td b/clang/include/clang/Basic/Attr.td
index 80e607525a0a..a39288464040 100644
--- a/clang/include/clang/Basic/Attr.td
+++ b/clang/include/clang/Basic/Attr.td
@@ -2511,6 +2511,7 @@ def Overloadable : Attr {
 }
 
 def Override : InheritableAttr {
+  let CanPrintOnLeft = 0;
   let Spellings = [CustomKeyword<"override">];
   let SemaHandler = 0;
   // Omitted from docs, since this is language syntax, not an attribute, as far
   ```

https://github.com/llvm/llvm-project/pull/87281


More information about the cfe-commits mailing list