clang-format: Handle trailing commas in column layout of braced list.
Before, this was causing errors.
Also exit early in breakProtrudingToken() (before the expensive call to
SourceManager::getSpellingColumnNumber()). This makes formatting huge
(100k+-item) braced lists possible.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@189094 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/unittests/Format/FormatTest.cpp b/unittests/Format/FormatTest.cpp
index 252364e..94d7b34 100644
--- a/unittests/Format/FormatTest.cpp
+++ b/unittests/Format/FormatTest.cpp
@@ -4178,6 +4178,15 @@
" 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1\n"
"};",
getLLVMStyleWithColumns(40));
+
+ // Trailing commas.
+ verifyFormat("vector<int> x = { 1, 1, 1, 1,\n"
+ " 1, 1, 1, 1, };",
+ getLLVMStyleWithColumns(39));
+ verifyFormat("vector<int> x = {\n"
+ " 1, 1, 1, 1, 1, 1, 1, 1, //\n"
+ "};",
+ getLLVMStyleWithColumns(39));
}
TEST_F(FormatTest, PullTrivialFunctionDefinitionsIntoSingleLine) {