[PATCH] D127695: [clang] Implement Template Specialization Resugaring
Matheus Izvekov via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Sun Oct 9 08:43:55 PDT 2022
mizvekov added a comment.
In D127695#3829020 <https://reviews.llvm.org/D127695#3829020>, @davrec wrote:
> The larger issues:
>
> 1. Performance - can we see some numbers? and
There are still work left to do on a couple of enablers, and some other changes, in order to get performance on a level which is meaningful to discuss.
The next bit of work here is to get rid of deducing partial specializations during resugaring, which hits some test cases specially bad.
> 1. There are a lot of FIXMEs introduced - understandable because of the scale, but it would be nice to hear you commit to eventually getting to those because otherwise they will probably remain indefinitely.
>From the MR desciption, I am sorry that it's not clear that this is not finished and not really ready for review at that level of detail.
So I am leaving some dumps and other stuff meanwhile, but will clean this up when it's almost there. And I will add the much needed patch description.
The tool that I am using to handle phabricator (moz-phab) is really finicky about leaving the "Changes planned" status, so this was lost here.
I addressed most of your comments though.
For the other comments, some other work has to be finished first in order to address them.
> @aaron.ballman should probably weigh in/sign off on this one given the number of FIXMEs, which probably can't be handled before @mizvekov 's deadline (when is that again?).
I am not counting anymore that I will have everything merged by the beginning of November. Don't worry too much about deadlines, we have done a lot as part of the GSoC already, much thanks to you for helping push the reviews :)
The work will continue afterwards in any case.
================
Comment at: clang/lib/Sema/SemaTemplate.cpp:95
+TemplateDecl *getTemplateDecl(NamedDecl *D) {
+ switch (D->getKind()) {
----------------
davrec wrote:
> static/move to namespace {} below. Or make it a public method of Decl? `Decl::getOriginalDescribedTemplate()` or something like that? (If you go that route then best to fall back to getDescribedTemplate instead of the unreachable.)
This function will disappear soon, after a few other changes.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D127695/new/
https://reviews.llvm.org/D127695
More information about the cfe-commits
mailing list