From: Nico Weber Date: Fri, 11 Jan 2013 21:14:08 +0000 (+0000) Subject: Formatter: Format ObjC static and instance methods consistently, add a test for that. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=67015ed2f40d6f69ee9e15d79aa88530f4b4afe2;p=clang Formatter: Format ObjC static and instance methods consistently, add a test for that. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172254 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Format/Format.cpp b/lib/Format/Format.cpp index cee587bf32..77fba1fbf1 100644 --- a/lib/Format/Format.cpp +++ b/lib/Format/Format.cpp @@ -1342,8 +1342,9 @@ private: Last->Tok.isNot(tok::kw_do) && Last->Tok.isNot(tok::r_brace) && Last->Tok.isNot(tok::kw_else) && Last->Tok.isNot(tok::kw_try) && Last->Tok.isNot(tok::kw_catch) && Last->Tok.isNot(tok::kw_for) && - // This gets rid of all ObjC @ keywords and - based definitions. - Last->Tok.isNot(tok::at) && Last->Tok.isNot(tok::minus); + // This gets rid of all ObjC @ keywords and methods. + Last->Tok.isNot(tok::at) && Last->Tok.isNot(tok::minus) && + Last->Tok.isNot(tok::plus); while (!Last->Children.empty()) Last = &Last->Children.back(); if (!Last->Tok.is(tok::l_brace)) diff --git a/unittests/Format/FormatTest.cpp b/unittests/Format/FormatTest.cpp index a0cfeee90b..2c1c9ee659 100644 --- a/unittests/Format/FormatTest.cpp +++ b/unittests/Format/FormatTest.cpp @@ -1388,6 +1388,9 @@ TEST_F(FormatTest, FormatObjCImplementation) { "- (int)answerWith:(int)i {\n" " return i;\n" "}\n" + "+ (int)answerWith:(int)i {\n" + " return i;\n" + "}\n" "@end"); verifyFormat("@implementation Foo\n" @@ -1397,6 +1400,7 @@ TEST_F(FormatTest, FormatObjCImplementation) { verifyFormat("@implementation Foo : Bar\n" "+ (id)init {}\n" + "- (void)foo {}\n" "@end"); verifyFormat("@implementation Foo {\n"