[PATCH] D127351: clang: fix early substitution of alias templates

2022-06-22 Thread Matheus Izvekov via Phabricator via cfe-commits
mizvekov updated this revision to Diff 439241. mizvekov added a comment. rebase Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D127351/new/ https://reviews.llvm.org/D127351 Files: clang/include/clang/Sema/Template.h clang/lib/Sema/SemaTemplateIn

[PATCH] D127351: clang: fix early substitution of alias templates

2022-06-17 Thread Matheus Izvekov via Phabricator via cfe-commits
mizvekov updated this revision to Diff 437905. mizvekov added a comment. rebase Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D127351/new/ https://reviews.llvm.org/D127351 Files: clang/include/clang/Sema/Template.h clang/lib/Sema/SemaTemplateIn

[PATCH] D127351: clang: fix early substitution of alias templates

2022-06-11 Thread Matheus Izvekov via Phabricator via cfe-commits
mizvekov added inline comments. Comment at: clang/lib/Sema/SemaTemplateInstantiate.cpp:1872 QualType Result = getSema().Context.getTemplateTypeParmType( - T->getDepth() - TemplateArgs.getNumSubstitutedLevels(), T->getIndex(), - T->isParameterPack(), NewTTPDecl); +

[PATCH] D127351: clang: fix early substitution of alias templates

2022-06-11 Thread Matheus Izvekov via Phabricator via cfe-commits
mizvekov updated this revision to Diff 436155. mizvekov added a comment. - much smaller patch, puts the new flag as a mutable member of MultiLevelTemplateArgumentList Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D127351/new/ https://reviews.llvm.o

[PATCH] D127351: clang: fix early substitution of alias templates

2022-06-10 Thread Matheus Izvekov via Phabricator via cfe-commits
mizvekov added inline comments. Comment at: clang/lib/Sema/SemaTemplateInstantiate.cpp:1872 QualType Result = getSema().Context.getTemplateTypeParmType( - T->getDepth() - TemplateArgs.getNumSubstitutedLevels(), T->getIndex(), - T->isParameterPack(), NewTTPDecl); +

[PATCH] D127351: clang: fix early substitution of alias templates

2022-06-10 Thread Matheus Izvekov via Phabricator via cfe-commits
mizvekov added inline comments. Comment at: clang/lib/Sema/SemaTemplateInstantiate.cpp:1872 QualType Result = getSema().Context.getTemplateTypeParmType( - T->getDepth() - TemplateArgs.getNumSubstitutedLevels(), T->getIndex(), - T->isParameterPack(), NewTTPDecl); +

[PATCH] D127351: clang: fix early substitution of alias templates

2022-06-10 Thread Richard Smith - zygoloid via Phabricator via cfe-commits
rsmith added inline comments. Comment at: clang/lib/Sema/SemaTemplateInstantiate.cpp:1872 QualType Result = getSema().Context.getTemplateTypeParmType( - T->getDepth() - TemplateArgs.getNumSubstitutedLevels(), T->getIndex(), - T->isParameterPack(), NewTTPDecl); +

[PATCH] D127351: clang: fix early substitution of alias templates

2022-06-08 Thread Matheus Izvekov via Phabricator via cfe-commits
mizvekov added inline comments. Comment at: clang/lib/Sema/SemaTemplateInstantiateDecl.cpp:1060 LocalInstantiationScope Scope(SemaRef); + auto EarlySubstitutionScope = getEarlySubstitutionRAII(); mark Repository: rG LLVM Github Monorepo CHANGES SINCE L

[PATCH] D127351: clang: fix early substitution of alias templates

2022-06-08 Thread Matheus Izvekov via Phabricator via cfe-commits
mizvekov added a comment. @rsmith , I have marked the few spots where the change is meaningful. Comment at: clang/include/clang/Sema/Template.h:488-497 +bool EarlySubstitution; + public: TemplateDeclInstantiator(Sema &SemaRef, DeclContext *Owner, -