[PATCH] D58922: [clang-format] broken after lambda with return type template with boolean literal

MyDeveloperDay via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon Mar 4 23:40:16 PST 2019


MyDeveloperDay added a comment.

In D58922#1417605 <https://reviews.llvm.org/D58922#1417605>, @jkorous wrote:

> BTW I suggest you also add the original test case since the test cases you added fail the expectation at FormatTest.cpp:74 and the message is a bit unclear whether the testcase or the actual implementation is at fault.
>
>   EXPECT_EQ(Expected.str(), format(Expected, Style))
>       << "Expected code is not stable";
>   
>
> The original reported case IMO gives a better idea what is broken since it duplicates the end-of-namespace comment.
>  https://bugs.llvm.org/show_bug.cgi?id=40910


do you mean this case? as this seems to work for me?

  verifyFormat("namespace bar {\n"
                 "auto foo{[]() -> foo<false> { ; }};\n"
                 "} // namespace bar");



  $ ./tools/clang/unittests/Format/FormatTests.exe --gtest_filter=FormatTest.FormatsLambdas*
  Note: Google Test filter = FormatTest.FormatsLambdas*
  [==========] Running 1 test from 1 test case.
  [----------] Global test environment set-up.
  [----------] 1 test from FormatTest
  [ RUN      ] FormatTest.FormatsLambdas
  [       OK ] FormatTest.FormatsLambdas (1353 ms)
  [----------] 1 test from FormatTest (1354 ms total)
  
  [----------] Global test environment tear-down
  [==========] 1 test from 1 test case ran. (1362 ms total)
  [  PASSED  ] 1 test.

BTW if you want me to land this before you land D58934: [clang-format] Fix lambdas returning template specialization that contains operator in parameter <https://reviews.llvm.org/D58934> I need someone to mark this as accepted in Phabricator.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D58922/new/

https://reviews.llvm.org/D58922





More information about the cfe-commits mailing list