r213258 - clang-format: Fix parsing of conditional expressions.
Daniel Jasper
djasper at google.com
Thu Jul 17 05:22:05 PDT 2014
Author: djasper
Date: Thu Jul 17 07:22:04 2014
New Revision: 213258
URL: http://llvm.org/viewvc/llvm-project?rev=213258&view=rev
Log:
clang-format: Fix parsing of conditional expressions.
Before:
aaaaaa = aaaaaaaaaaaa ? aaaaaaaaaa ? aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
: aaaaaaaaaaaaaaaaaaaaaa
: aaaaaaaaaaaaaaaaaaaaaaaaaaaa;
After:
aaaaaa = aaaaaaaaaaaa
? aaaaaaaaaa ? aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
: aaaaaaaaaaaaaaaaaaaaaa
: aaaaaaaaaaaaaaaaaaaaaaaaaaaa;
Modified:
cfe/trunk/lib/Format/TokenAnnotator.cpp
cfe/trunk/unittests/Format/FormatTest.cpp
Modified: cfe/trunk/lib/Format/TokenAnnotator.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Format/TokenAnnotator.cpp?rev=213258&r1=213257&r2=213258&view=diff
==============================================================================
--- cfe/trunk/lib/Format/TokenAnnotator.cpp (original)
+++ cfe/trunk/lib/Format/TokenAnnotator.cpp Thu Jul 17 07:22:04 2014
@@ -1140,7 +1140,7 @@ private:
if (!Current || !Current->is(tok::question))
return;
next();
- parse(prec::LogicalOr);
+ parseConditionalExpr();
if (!Current || Current->Type != TT_ConditionalExpr)
return;
next();
Modified: cfe/trunk/unittests/Format/FormatTest.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/unittests/Format/FormatTest.cpp?rev=213258&r1=213257&r2=213258&view=diff
==============================================================================
--- cfe/trunk/unittests/Format/FormatTest.cpp (original)
+++ cfe/trunk/unittests/Format/FormatTest.cpp Thu Jul 17 07:22:04 2014
@@ -3941,6 +3941,11 @@ TEST_F(FormatTest, BreaksConditionalExpr
" aaaaaaaaaaaaaaaaaaaaa +\n"
" aaaaaaaaaaaaaaaaaaaaa\n"
" : aaaaaaaaaa;");
+ verifyFormat(
+ "aaaaaa = aaaaaaaaaaaa\n"
+ " ? aaaaaaaaaa ? aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\n"
+ " : aaaaaaaaaaaaaaaaaaaaaa\n"
+ " : aaaaaaaaaaaaaaaaaaaaaaaaaaaa;");
FormatStyle NoBinPacking = getLLVMStyle();
NoBinPacking.BinPackParameters = false;
More information about the cfe-commits
mailing list