Pass the right SourceLocation to Actions.ActOnOverloadedOperatorReferenceExpr and Actions.ActOnConversionOperatorReferenceExpr. Update incomplete-call.cpp test.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@84026 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Parse/ParseExpr.cpp b/lib/Parse/ParseExpr.cpp
index d10e38c..72e30e3 100644
--- a/lib/Parse/ParseExpr.cpp
+++ b/lib/Parse/ParseExpr.cpp
@@ -983,12 +983,14 @@
       } else if (getLang().CPlusPlus && Tok.is(tok::kw_operator)) {
         // We have a reference to a member operator, e.g., t.operator int or
         // t.operator+.
+        SourceLocation OperatorLoc = Tok.getLocation();
+        
         if (OverloadedOperatorKind Op = TryParseOperatorFunctionId()) {
           if (!LHS.isInvalid())
             LHS = Actions.ActOnOverloadedOperatorReferenceExpr(CurScope,
                                                                move(LHS), OpLoc,
                                                                OpKind,
-                                                           Tok.getLocation(),
+                                                               OperatorLoc,
                                                                Op, &SS);
           // TryParseOperatorFunctionId already consumed our token, so
           // don't bother
@@ -997,7 +999,7 @@
             LHS = Actions.ActOnConversionOperatorReferenceExpr(CurScope,
                                                                move(LHS), OpLoc,
                                                                OpKind,
-                                                           Tok.getLocation(),
+                                                               OperatorLoc,
                                                                ConvType, &SS);
         } else {
           // Don't emit a diagnostic; ParseConversionFunctionId does it for us