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

Reply via email to