Provide a proper source location when building an implicit dereference. Fixes PR3600

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64993 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Sema/SemaOverload.cpp b/lib/Sema/SemaOverload.cpp
index f2c7de2..27e7db0 100644
--- a/lib/Sema/SemaOverload.cpp
+++ b/lib/Sema/SemaOverload.cpp
@@ -3705,7 +3705,7 @@
   if (MemExpr->isArrow())
     ObjectArg = new (Context) UnaryOperator(ObjectArg, UnaryOperator::Deref,
                      ObjectArg->getType()->getAsPointerType()->getPointeeType(),
-                     SourceLocation());
+                                            ObjectArg->getLocStart());
   CXXMethodDecl *Method = 0;
   if (OverloadedFunctionDecl *Ovl 
         = dyn_cast<OverloadedFunctionDecl>(MemExpr->getMemberDecl())) {