On Thu, Mar 14, 2013 at 7:00 AM, Daniel Jasper <[email protected]> wrote:
> Author: djasper > Date: Thu Mar 14 09:00:17 2013 > New Revision: 177075 > > URL: http://llvm.org/viewvc/llvm-project?rev=177075&view=rev > Log: > Slightly improve formatting of longer pipe statements. > > The stronger binding of a string ending in :/= does not really make > sense if it is the only character. > > Before: > llvm::outs() << aaaaaaaaaaaaaaaaaaaaaaaa > << "=" << bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb; > > After: > llvm::outs() << aaaaaaaaaaaaaaaaaaaaaaaa << "=" > << bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb; > > 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=177075&r1=177074&r2=177075&view=diff > > ============================================================================== > --- cfe/trunk/lib/Format/TokenAnnotator.cpp (original) > +++ cfe/trunk/lib/Format/TokenAnnotator.cpp Thu Mar 14 09:00:17 2013 > @@ -934,10 +934,11 @@ unsigned TokenAnnotator::splitPenalty(co > > if (Right.is(tok::lessless)) { > if (Left.is(tok::string_literal)) { > - char LastChar = > - StringRef(Left.FormatTok.Tok.getLiteralData(), > - > Left.FormatTok.TokenLength).drop_back(1).rtrim().back(); > - if (LastChar == ':' || LastChar == '=') > + StringRef Content = StringRef(Left.FormatTok.Tok.getLiteralData(), > + Left.FormatTok.TokenLength); > + Content = Content.drop_back(1).drop_front(1).trim(); > + if (Content.size() > 1 && > + (Content.back() == ':' || Content.back() == '=')) > At some point we'll want to add tests for non-narrow and raw string literals, in which case Content[0] doesn't have to be '"'. > return 100; > } > return prec::Shift; > > Modified: cfe/trunk/unittests/Format/FormatTest.cpp > URL: > http://llvm.org/viewvc/llvm-project/cfe/trunk/unittests/Format/FormatTest.cpp?rev=177075&r1=177074&r2=177075&view=diff > > ============================================================================== > --- cfe/trunk/unittests/Format/FormatTest.cpp (original) > +++ cfe/trunk/unittests/Format/FormatTest.cpp Thu Mar 14 09:00:17 2013 > @@ -1628,6 +1628,8 @@ TEST_F(FormatTest, AlignsPipes) { > " << \"ccccccccccccccccc = \" << ccccccccccccccccc\n" > " << \"ddddddddddddddddd = \" << ddddddddddddddddd\n" > " << \"eeeeeeeeeeeeeeeee = \" << eeeeeeeeeeeeeeeee;"); > + verifyFormat("llvm::outs() << aaaaaaaaaaaaaaaaaaaaaaaa << \"=\"\n" > + " << bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb;"); > } > > TEST_F(FormatTest, UnderstandsEquals) { > > > _______________________________________________ > cfe-commits mailing list > [email protected] > http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits >
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
