diff options
author | Douglas Gregor <dgregor@apple.com> | 2011-01-05 00:13:17 +0000 |
---|---|---|
committer | Douglas Gregor <dgregor@apple.com> | 2011-01-05 00:13:17 +0000 |
commit | 66990031e2951e649a684e5a752cf657fc6a9986 (patch) | |
tree | e3d79e9bb826b373528253a921600cb80fb5ef66 /clang/lib/Sema/SemaTemplateDeduction.cpp | |
parent | f8a791263321d3d64c898ef7854d2182fc64e271 (diff) | |
download | bcm5719-llvm-66990031e2951e649a684e5a752cf657fc6a9986.tar.gz bcm5719-llvm-66990031e2951e649a684e5a752cf657fc6a9986.zip |
Many of the built-in operator candidates introduced into overload
resolution require that the pointed-to type be an object type, but we
weren't filtering out non-object types. Do so, fixing PR7851.
llvm-svn: 122853
Diffstat (limited to 'clang/lib/Sema/SemaTemplateDeduction.cpp')
-rw-r--r-- | clang/lib/Sema/SemaTemplateDeduction.cpp | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/clang/lib/Sema/SemaTemplateDeduction.cpp b/clang/lib/Sema/SemaTemplateDeduction.cpp index bad30b3265d..18bfee301ba 100644 --- a/clang/lib/Sema/SemaTemplateDeduction.cpp +++ b/clang/lib/Sema/SemaTemplateDeduction.cpp @@ -1515,10 +1515,8 @@ FinishTemplateArgumentDeduction(Sema &S, = ClassTemplate->getTemplateParameters(); for (unsigned I = 0, E = TemplateParams->size(); I != E; ++I) { TemplateArgument InstArg = ConvertedInstArgs.data()[I]; - Decl *Param = TemplateParams->getParam(I); - if (!isSameTemplateArg(S.Context, TemplateArgs[I], InstArg)) { - Info.Param = makeTemplateParameter(Param); + Info.Param = makeTemplateParameter(TemplateParams->getParam(I)); Info.FirstArg = TemplateArgs[I]; Info.SecondArg = InstArg; return Sema::TDK_NonDeducedMismatch; |