diff options
Diffstat (limited to 'clang')
| -rw-r--r-- | clang/lib/Format/Format.cpp | 4 | ||||
| -rw-r--r-- | clang/unittests/Format/FormatTest.cpp | 3 |
2 files changed, 7 insertions, 0 deletions
diff --git a/clang/lib/Format/Format.cpp b/clang/lib/Format/Format.cpp index 5367106535d..4075ccdc8cf 100644 --- a/clang/lib/Format/Format.cpp +++ b/clang/lib/Format/Format.cpp @@ -1121,6 +1121,10 @@ private: if (Previous.Children.size() > 1) return false; + // Cannot merge into one line if this line ends on a comment. + if (Previous.is(tok::comment)) + return false; + // We can't put the closing "}" on a line with a trailing comment. if (Previous.Children[0]->Last->isTrailingComment()) return false; diff --git a/clang/unittests/Format/FormatTest.cpp b/clang/unittests/Format/FormatTest.cpp index b932b274d70..5f44c5bb2b5 100644 --- a/clang/unittests/Format/FormatTest.cpp +++ b/clang/unittests/Format/FormatTest.cpp @@ -8161,6 +8161,9 @@ TEST_F(FormatTest, FormatsLambdas) { " x.end(), //\n" " [&](int, int) { return 1; });\n" "}\n"); + verifyFormat("SomeFunction([]() { // A cool function...\n" + " return 43;\n" + "});"); // Lambdas with return types. verifyFormat("int c = []() -> int { return 2; }();\n"); |

