From: Daniel Jasper Date: Mon, 28 Jan 2013 07:43:15 +0000 (+0000) Subject: Improve indentation after breaking at nested name specifiers. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=5f2173ee723fd17b758f2a35a5bb39ca74eca523;p=clang Improve indentation after breaking at nested name specifiers. These always represent a continuation and we should increase the ident. Before: aaaaaaaaa(aaaaaaaaaaaaaaaaaaaaa:: aaaaaaaaaaaaaaaaaaaa); After: aaaaaaaaa(aaaaaaaaaaaaaaaaaaaaa:: aaaaaaaaaaaaaaaaaaaa); git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@173675 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Format/Format.cpp b/lib/Format/Format.cpp index bae1bbb86d..99b2d545c2 100644 --- a/lib/Format/Format.cpp +++ b/lib/Format/Format.cpp @@ -550,9 +550,10 @@ private: State.Stack[ParenLevel].FirstLessLess != 0) { State.Column = State.Stack[ParenLevel].FirstLessLess; } else if (ParenLevel != 0 && - (Previous.is(tok::equal) || Current.is(tok::arrow) || - Current.is(tok::period) || Previous.is(tok::question) || - Previous.Type == TT_ConditionalExpr)) { + (Previous.is(tok::equal) || Previous.is(tok::coloncolon) || + Previous.is(tok::question) || + Previous.Type == TT_ConditionalExpr || + Current.is(tok::period) || Current.is(tok::arrow))) { // Indent and extra 4 spaces after if we know the current expression is // continued. Don't do that on the top level, as we already indent 4 // there. diff --git a/unittests/Format/FormatTest.cpp b/unittests/Format/FormatTest.cpp index d877dc29e5..e47c7a5196 100644 --- a/unittests/Format/FormatTest.cpp +++ b/unittests/Format/FormatTest.cpp @@ -1252,7 +1252,7 @@ TEST_F(FormatTest, WrapsAtNestedNameSpecifiers) { // "bbbbb..." here instead of what we are doing now. verifyFormat( "aaaaaaaaaaaaaaa(bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb::\n" - " cccccccccccccccccccccccccccccccccccccccccccccccccc());"); + " cccccccccccccccccccccccccccccccccccccccccccccc());"); // Breaking at nested name specifiers is generally not desirable. verifyFormat(