<br><br><div class="gmail_quote">On Sat, Aug 6, 2011 at 1:11 PM, Douglas Gregor <span dir="ltr"><<a href="mailto:dgregor@apple.com">dgregor@apple.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<div style="word-wrap:break-word"><br><div><div><div></div><div class="h5"><div>On Aug 4, 2011, at 4:43 PM, Kaelyn Uhrain wrote:</div><br></div></div><blockquote type="cite"><div><div></div><div class="h5"><div class="gmail_quote">
On Thu, Aug 4, 2011 at 4:41 PM, Kaelyn Uhrain <span dir="ltr"><<a href="mailto:rikka@google.com" target="_blank">rikka@google.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div><div></div><div><br><br><div class="gmail_quote">On Thu, Aug 4, 2011 at 4:36 PM, Chandler Carruth <span dir="ltr"><<a href="mailto:chandlerc@google.com" target="_blank">chandlerc@google.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div><div class="gmail_quote">On Thu, Aug 4, 2011 at 4:35 PM, Kaelyn Uhrain <span dir="ltr"><<a href="mailto:rikka@google.com" target="_blank">rikka@google.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">



I've committed the fix and test cases as r136943, and rebased my patch against that revision.</blockquote></div><br></div><div>Missing attachment? (not a big deal, easy to review the original patch)</div>
</blockquote></div><br></div></div>Grr....<br>
</blockquote></div><br>WTF?! I've attached the patch TWICE now in gmail only to not have it go out. :(  Let's try a third time... <br><br>Wait... dammit, I screwed up generating the patch and tried attaching a 0-byte file. :'(<br>

</div></div><span><typo-correction-template-overload.diff></span></blockquote></div><br><div><div>@@ -1458,10 +1459,13 @@ bool Sema::DiagnoseEmptyLookup(Scope *S, CXXScopeSpec &SS, LookupResult &R,</div><div>
                                         CDEnd = Corrected.end();</div><div>              CD != CDEnd; ++CD) {</div><div>           if (FunctionDecl *FD = dyn_cast<FunctionDecl>(*CD))</div><div>-            AddOverloadCandidate(FD, DeclAccessPair::make(*CD, AS_none),</div>
<div>+            AddOverloadCandidate(FD, DeclAccessPair::make(FD, AS_none),</div><div>                                  Args, NumArgs, OCS);</div><div>-          // TODO: Handle FunctionTemplateDecl and other Decl types that</div>
<div>-          // support overloading and could be corrected by CorrectTypo.</div><div>+          else if (FunctionTemplateDecl *FTD =</div><div>+                   dyn_cast<FunctionTemplateDecl>(*CD))</div><div>+            AddTemplateOverloadCandidate(</div>
<div>+                FTD, DeclAccessPair::make(FTD, AS_none), ExplicitTemplateArgs,</div><div>+                Args, NumArgs, OCS);</div></div><div><br></div><div>The FunctionTemplateDecl path looks good. Note that, if there are explicit template arguments, we should not add FunctionDecls to the overload candidate set.</div>
</div></blockquote><div><br>Ah, good point. I'll go ahead and check in the one-line change adding " if (!ExplicitTemplateArgs || ExplicitTemplateArgs->size() == 0)" just before the call to AddOverloadCandidate so that FunctionDecls aren't added when there are explicit template arguments.<br>
<br>Thanks,<br>Kaelyn<br></div></div><br>