From: Nico Weber Date: Thu, 10 Jan 2013 19:36:35 +0000 (+0000) Subject: Formatter: Don't put a space in ObjC number literals like @+50 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=81ed2f1cd7202e84bf1f3868a60a36904499c94c;p=clang Formatter: Don't put a space in ObjC number literals like @+50 Before: @ -4.5 Now: @-4.5 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172095 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Format/Format.cpp b/lib/Format/Format.cpp index 406daac7a6..4d281047b8 100644 --- a/lib/Format/Format.cpp +++ b/lib/Format/Format.cpp @@ -946,7 +946,8 @@ private: if (Tok.Parent->is(tok::equal) || Tok.Parent->is(tok::l_paren) || Tok.Parent->is(tok::comma) || Tok.Parent->is(tok::l_square) || Tok.Parent->is(tok::question) || Tok.Parent->is(tok::colon) || - Tok.Parent->is(tok::kw_return) || Tok.Parent->is(tok::kw_case)) + Tok.Parent->is(tok::kw_return) || Tok.Parent->is(tok::kw_case) || + Tok.Parent->is(tok::at)) return TT_UnaryOperator; // There can't be to consecutive binary operators. @@ -1054,7 +1055,8 @@ private: return false; if (Tok.Type == TT_UnaryOperator) return Tok.Parent->isNot(tok::l_paren) && - Tok.Parent->isNot(tok::l_square); + Tok.Parent->isNot(tok::l_square) && + Tok.Parent->isNot(tok::at); if (Tok.Parent->is(tok::greater) && Tok.is(tok::greater)) { return Tok.Type == TT_TemplateCloser && Tok.Parent->Type == TT_TemplateCloser && Style.SplitTemplateClosingGreater; diff --git a/unittests/Format/FormatTest.cpp b/unittests/Format/FormatTest.cpp index 077c358c22..b55cad742e 100644 --- a/unittests/Format/FormatTest.cpp +++ b/unittests/Format/FormatTest.cpp @@ -1402,11 +1402,10 @@ TEST_F(FormatTest, ObjCAt) { verifyFormat("@throw"); verifyFormat("@try"); - // FIXME: Make the uncommented lines below pass. verifyFormat("@\"String\""); verifyFormat("@1"); - //verifyFormat("@+4.8"); - //verifyFormat("@-4"); + verifyFormat("@+4.8"); + verifyFormat("@-4"); verifyFormat("@1LL"); verifyFormat("@.5"); verifyFormat("@'c'");