jtbandes added a comment.

Thanks for the feedback, I'll work on making those changes.

In https://reviews.llvm.org/D32475#738425, @djasper wrote:

> What happens if the function call where this happens actually does not have 
> multiple parameters but one parameter with many operands, e.g. changing your 
> test case to:
>
>   arg3____________________________ + is + quite + long + so + it
>       + f(arguments << of << its << subexpressions << lengthy << as << they
>                     << may << or__ << may)


I don't think this is relevant to what I am trying to fix. The issue being 
fixed is specifically with multiple arguments: I don't want 
BinPackArguments=false to affect bin-packing of an individual argument. For 
completeness, though, I can include a test case with one argument.



================
Comment at: lib/Format/ContinuationIndenter.cpp:923
+    // Don't propagate AvoidBinPacking into subexpressions of arg/param lists.
+    if (Current.FakeLParens.size() > 0 &&
+        Current.FakeLParens.back() > prec::Comma) {
----------------
djasper wrote:
> I think you cannot get here if .size() is 0 as this is iterating over the 
> elements.
Good point, thanks.


================
Comment at: unittests/Format/FormatTest.cpp:2596
+  FormatStyle Style = getLLVMStyle();
+  Style.AlignAfterOpenBracket = FormatStyle::BAS_AlwaysBreak;
+  Style.BreakBeforeBinaryOperators = FormatStyle::BOS_NonAssignment;
----------------
djasper wrote:
> Is this important?
Not really. I can remove it.


https://reviews.llvm.org/D32475



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to