Addi formatting tests for pointer template parameters.

Fix spacing before ",".

llvm-svn: 169746
This commit is contained in:
Daniel Jasper 2012-12-10 18:59:13 +00:00
parent 66859ae0f6
commit a4396865d0
2 changed files with 12 additions and 2 deletions

View File

@ -689,6 +689,8 @@ private:
}
bool spaceRequiredBetween(Token Left, Token Right) {
if (Right.is(tok::r_paren) || Right.is(tok::semi) || Right.is(tok::comma))
return false;
if (Left.is(tok::kw_template) && Right.is(tok::less))
return true;
if (Left.is(tok::arrow) || Right.is(tok::arrow))
@ -725,8 +727,6 @@ private:
return false;
if (Left.is(tok::hash))
return false;
if (Right.is(tok::r_paren) || Right.is(tok::semi) || Right.is(tok::comma))
return false;
if (Right.is(tok::l_paren)) {
return !Left.isAnyIdentifier() || isIfForOrWhile(Left);
}

View File

@ -478,7 +478,17 @@ TEST_F(FormatTest, UnderstandsUsesOfStar) {
verifyFormat("int a = b * *c;");
verifyFormat("int main(int argc, char **argv) {\n}");
// FIXME: Is this desired for LLVM? Fix if not.
verifyFormat("A<int *> a;");
verifyFormat("A<int **> a;");
verifyFormat("A<int *, int *> a;");
verifyFormat("A<int **, int **> a;");
verifyGoogleFormat("int main(int argc, char** argv) {\n}");
verifyGoogleFormat("A<int*> a;");
verifyGoogleFormat("A<int**> a;");
verifyGoogleFormat("A<int*, int*> a;");
verifyGoogleFormat("A<int**, int**> a;");
}
TEST_F(FormatTest, LineStartsWithSpecialCharacter) {