[cfe-commits] PATCH: Add support for resolving overloaded template functions in Sema::DiagnoseEmptyLookup
Douglas Gregor
dgregor at apple.com
Sat Aug 6 13:11:25 PDT 2011
On Aug 4, 2011, at 4:43 PM, Kaelyn Uhrain wrote:
> On Thu, Aug 4, 2011 at 4:41 PM, Kaelyn Uhrain <rikka at google.com> wrote:
>
>
> On Thu, Aug 4, 2011 at 4:36 PM, Chandler Carruth <chandlerc at google.com> wrote:
> On Thu, Aug 4, 2011 at 4:35 PM, Kaelyn Uhrain <rikka at google.com> wrote:
> I've committed the fix and test cases as r136943, and rebased my patch against that revision.
>
> Missing attachment? (not a big deal, easy to review the original patch)
>
> Grr....
>
> WTF?! I've attached the patch TWICE now in gmail only to not have it go out. :( Let's try a third time...
>
> Wait... dammit, I screwed up generating the patch and tried attaching a 0-byte file. :'(
> <typo-correction-template-overload.diff>
@@ -1458,10 +1459,13 @@ bool Sema::DiagnoseEmptyLookup(Scope *S, CXXScopeSpec &SS, LookupResult &R,
CDEnd = Corrected.end();
CD != CDEnd; ++CD) {
if (FunctionDecl *FD = dyn_cast<FunctionDecl>(*CD))
- AddOverloadCandidate(FD, DeclAccessPair::make(*CD, AS_none),
+ AddOverloadCandidate(FD, DeclAccessPair::make(FD, AS_none),
Args, NumArgs, OCS);
- // TODO: Handle FunctionTemplateDecl and other Decl types that
- // support overloading and could be corrected by CorrectTypo.
+ else if (FunctionTemplateDecl *FTD =
+ dyn_cast<FunctionTemplateDecl>(*CD))
+ AddTemplateOverloadCandidate(
+ FTD, DeclAccessPair::make(FTD, AS_none), ExplicitTemplateArgs,
+ Args, NumArgs, OCS);
The FunctionTemplateDecl path looks good. Note that, if there are explicit template arguments, we should not add FunctionDecls to the overload candidate set.
Everything else looks good, thanks!
- Doug
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20110806/0224ca48/attachment.html>
More information about the cfe-commits
mailing list