aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/Format/Format.cpp3
-rw-r--r--unittests/Format/FormatTest.cpp2
2 files changed, 4 insertions, 1 deletions
diff --git a/lib/Format/Format.cpp b/lib/Format/Format.cpp
index 5140639d00..e4dc291312 100644
--- a/lib/Format/Format.cpp
+++ b/lib/Format/Format.cpp
@@ -969,7 +969,8 @@ private:
Tok.Parent->Type == TT_CastRParen)
return TT_UnaryOperator;
- if (PrevToken.Tok.isLiteral() || NextToken.Tok.isLiteral() ||
+ if (PrevToken.Tok.isLiteral() || PrevToken.Tok.is(tok::r_paren) ||
+ PrevToken.Tok.is(tok::r_square) || NextToken.Tok.isLiteral() ||
NextToken.Tok.is(tok::plus) || NextToken.Tok.is(tok::minus) ||
NextToken.Tok.is(tok::plusplus) || NextToken.Tok.is(tok::minusminus) ||
NextToken.Tok.is(tok::tilde) || NextToken.Tok.is(tok::exclaim) ||
diff --git a/unittests/Format/FormatTest.cpp b/unittests/Format/FormatTest.cpp
index 9106a1fc7f..e5dbd63020 100644
--- a/unittests/Format/FormatTest.cpp
+++ b/unittests/Format/FormatTest.cpp
@@ -1014,6 +1014,8 @@ TEST_F(FormatTest, UnderstandsUsesOfStarAndAmp) {
verifyFormat("a * -b;");
verifyFormat("a * ++b;");
verifyFormat("a * --b;");
+ verifyFormat("a[4] * b;");
+ verifyFormat("f() * b;");
verifyFormat("int *pa = (int *)&a;");
verifyFormat("InvalidRegions[*R] = 0;");