[llvm-branch-commits] [clang] [libcxx] [clang] Preserve Qualifiers and type sugar in TemplateNames (PR #93433)
Ilya Biryukov via llvm-branch-commits
llvm-branch-commits at lists.llvm.org
Mon May 27 01:57:53 PDT 2024
================
@@ -9304,7 +9299,8 @@ TemplateName ASTContext::getAssumedTemplateName(DeclarationName Name) const {
TemplateName ASTContext::getQualifiedTemplateName(NestedNameSpecifier *NNS,
bool TemplateKeyword,
TemplateName Template) const {
- assert(NNS && "Missing nested-name-specifier in qualified template name");
----------------
ilya-biryukov wrote:
Does that mean we will start creating `QualifiedTemplateName` with a nullptr qualifier?
That's a big change in contract and there is quite a bit of code that does not check for null when accessing this member.
Could you explain a bit why we need this change? What are we trying to represent?
Are there any alternative AST nodes we could use or even add?
https://github.com/llvm/llvm-project/pull/93433
More information about the llvm-branch-commits
mailing list