aboutsummaryrefslogtreecommitdiff
path: root/unittests/Format/FormatTest.cpp
diff options
context:
space:
mode:
authorNico Weber <nicolasweber@gmx.de>2013-02-05 16:21:00 +0000
committerNico Weber <nicolasweber@gmx.de>2013-02-05 16:21:00 +0000
commitee0feec7362053f22b6c01d12e1bfa06fb3ac93f (patch)
treea728daa16b651143c8a99a712d057fcbe9bd5378 /unittests/Format/FormatTest.cpp
parent63d7cedca8616921c1908c88c2f23fcd67bbab99 (diff)
Formatter: Detect ObjC method expressions after unary operators.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@174384 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'unittests/Format/FormatTest.cpp')
-rw-r--r--unittests/Format/FormatTest.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/unittests/Format/FormatTest.cpp b/unittests/Format/FormatTest.cpp
index 7d9463603b..fc52e834aa 100644
--- a/unittests/Format/FormatTest.cpp
+++ b/unittests/Format/FormatTest.cpp
@@ -2236,6 +2236,22 @@ TEST_F(FormatTest, FormatObjCMethodExpr) {
verifyFormat("f(2, a ? b : c);");
verifyFormat("[[self initWithInt:4] bar:[baz quux:arrrr]];");
+ // Unary operators.
+ verifyFormat("int a = +[foo bar:baz];");
+ verifyFormat("int a = -[foo bar:baz];");
+ verifyFormat("int a = ![foo bar:baz];");
+ verifyFormat("int a = ~[foo bar:baz];");
+ verifyFormat("int a = ++[foo bar:baz];");
+ verifyFormat("int a = --[foo bar:baz];");
+ verifyFormat("int a = sizeof [foo bar:baz];");
+ verifyFormat("int a = alignof [foo bar:baz];");
+ // FIXME: no space after & and *.
+ verifyFormat("int a = & [foo bar:baz];");
+ verifyFormat("int a = * [foo bar:baz];");
+ // FIXME: Make casts work, without breaking f()[4].
+ //verifyFormat("int a = (int) [foo bar:baz];");
+
+ // Binary operators.
verifyFormat("[foo bar:baz], [foo bar:baz];");
verifyFormat("[foo bar:baz] = [foo bar:baz];");
verifyFormat("[foo bar:baz] *= [foo bar:baz];");