Formatter: Don't insert a space before unary operators after selector names.

Before:
  [color getRed: &r green: &g blue: &b alpha: &a];

Now:
  [color getRed:&r green:&g blue:&b alpha:&a];



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172337 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Format/Format.cpp b/lib/Format/Format.cpp
index 9411932..29debe5 100644
--- a/lib/Format/Format.cpp
+++ b/lib/Format/Format.cpp
@@ -1165,8 +1165,9 @@
       return false;
     if (Tok.Type == TT_UnaryOperator)
       return Tok.Parent->isNot(tok::l_paren) &&
-             Tok.Parent->isNot(tok::l_square) &&
-             Tok.Parent->isNot(tok::at);
+             Tok.Parent->isNot(tok::l_square) && Tok.Parent->isNot(tok::at) &&
+             (Tok.Parent->isNot(tok::colon) ||
+              Tok.Parent->Type != TT_ObjCMethodExpr);
     if (Tok.Parent->is(tok::greater) && Tok.is(tok::greater)) {
       return Tok.Type == TT_TemplateCloser && Tok.Parent->Type ==
              TT_TemplateCloser && Style.SplitTemplateClosingGreater;