mizvekov wrote: > You should at minimum be able to layer the `NestedNameSpecifier` change on > top of the `TagType` change. I can't see why that wouldn't work. > > 1. Add the structure for sugary `TagType`s. > 2. Replace `ElaboratedType` with sugary `TagType`s. > 3. Change the representation of NNS.
Well it's not just TagTypes which were changed in order to not need ElaboratedType, everything else too (TypedefTypes, TemplateSpecializationTypes, etc). It would be really annoying to remove ElaboratedType from just TagType, leave it on everything else, while making every test pass, due for example how complicated some AST matchers would become in the intermediary state. If you meant splitting the ElaboratedType removal from the NestedNameSpecifier representation change, that's easier to do, but still its a lot of work to make it in a way which every test passes. If you would be happy to have dependent patches which must still be tested together, I can certainly split this patch (part 1) into NestedNameSpecifier changes and ElaboratedType changes, if that helps. https://github.com/llvm/llvm-project/pull/147835 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits