[PATCH] D39224: Moved QualTypeNames.h from Tooling to AST.
Ilya Biryukov via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Wed Oct 25 01:01:15 PDT 2017
ilya-biryukov added a comment.
In https://reviews.llvm.org/D39224#905431, @rnk wrote:
> Can you remind me why `NamedDecl::printQualifiedName` is not appropriate for your needs?
The use-case in code completion (see https://reviews.llvm.org/D38538, the interesting bit is in `SemaCodeComplete.cpp`) creates a `QualType` that is being pretty-printed later on.
There does not seem to be a way to rewrite it to use `printQualifiedName`for that particular case without messing up the code. I was initially planning to simply create `ElaborateType` with proper `NestedNameSpecifier`, but that's essentially what the code in `QualTypeNames` does already (it has logic to create both the `NestedNameSpecifier` and `ElaboratedType` out of it), so we should definitely reuse it.
In general, helpers like this look somewhat useful when writing features that present code to the user and the usage in `SemaCodeComplete` feels natural, at least from my perspective.
More information about the cfe-commits