diff options
| author | Daniel Jasper <djasper@google.com> | 2013-08-01 13:46:58 +0000 |
|---|---|---|
| committer | Daniel Jasper <djasper@google.com> | 2013-08-01 13:46:58 +0000 |
| commit | 9688ff197e99734015c4225de9ffe528c5ffdaec (patch) | |
| tree | 9d5ddda540486c60881b9a9827c2abaf1d6ea051 | |
| parent | b1266b5447e566e79252ef2b026b9da142801de0 (diff) | |
| download | bcm5719-llvm-9688ff197e99734015c4225de9ffe528c5ffdaec.tar.gz bcm5719-llvm-9688ff197e99734015c4225de9ffe528c5ffdaec.zip | |
clang-format: Improve line breaks in @property.
Before:
@property(nonatomic, assign,
readonly) NSString *looooooooooooooooooooooooooooongName;
After:
@property(nonatomic, assign, readonly)
NSString *looooooooooooooooooooooooooooongName;
llvm-svn: 187577
| -rw-r--r-- | clang/lib/Format/TokenAnnotator.cpp | 4 | ||||
| -rw-r--r-- | clang/unittests/Format/FormatTest.cpp | 5 |
2 files changed, 8 insertions, 1 deletions
diff --git a/clang/lib/Format/TokenAnnotator.cpp b/clang/lib/Format/TokenAnnotator.cpp index b9d26ca5219..e0e24e27488 100644 --- a/clang/lib/Format/TokenAnnotator.cpp +++ b/clang/lib/Format/TokenAnnotator.cpp @@ -1060,7 +1060,7 @@ unsigned TokenAnnotator::splitPenalty(const AnnotatedLine &Line, } // Breaking before a trailing 'const' or not-function-like annotation is bad. - if (Left.is(tok::r_paren) && + if (Left.is(tok::r_paren) && Line.Type != LT_ObjCProperty && (Right.is(tok::kw_const) || (Right.is(tok::identifier) && Right.Next && Right.Next->isNot(tok::l_paren)))) return 150; @@ -1253,6 +1253,8 @@ bool TokenAnnotator::canBreakBefore(const AnnotatedLine &Line, return true; if (Right.Type == TT_ObjCSelectorName) return true; + if (Left.is(tok::r_paren) && Line.Type == LT_ObjCProperty) + return true; if (Left.ClosesTemplateDeclaration) return true; if (Right.Type == TT_ConditionalExpr || Right.is(tok::question)) diff --git a/clang/unittests/Format/FormatTest.cpp b/clang/unittests/Format/FormatTest.cpp index d5b9f27699d..6a5f0228fc4 100644 --- a/clang/unittests/Format/FormatTest.cpp +++ b/clang/unittests/Format/FormatTest.cpp @@ -4663,6 +4663,11 @@ TEST_F(FormatTest, FormatObjCProtocol) { "@optional\n" "@property(assign) int madProp;\n" "@end\n"); + + verifyFormat("@property(nonatomic, assign, readonly)\n" + " int *looooooooooooooooooooooooooooongNumber;\n" + "@property(nonatomic, assign, readonly)\n" + " NSString *looooooooooooooooooooooooooooongName;"); } TEST_F(FormatTest, FormatObjCMethodDeclarations) { |

