aboutsummaryrefslogtreecommitdiff
path: root/lib/Format/Format.cpp
diff options
context:
space:
mode:
authorDaniel Jasper <djasper@google.com>2013-01-17 13:31:52 +0000
committerDaniel Jasper <djasper@google.com>2013-01-17 13:31:52 +0000
commit60ca75d4d1878f8a45799316f462d4d0114238b4 (patch)
treed8cef0c3db5ef6365d49dfddeb425308b4a99e3d /lib/Format/Format.cpp
parentdf96e022e95b8540c51e1bdaed03f66d851c6f93 (diff)
Allow breaking after the trailing const after a function declaration.
Before: void aaaaaaaaaaaa(int aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa) const GUARDED_BY( aaaaaaaaaaaaa); After: void aaaaaaaaaaaa(int aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa) const GUARDED_BY(aaaaaaaaaaaaa); git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@172718 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Format/Format.cpp')
-rw-r--r--lib/Format/Format.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/Format/Format.cpp b/lib/Format/Format.cpp
index 108ae7a736..f8e185086d 100644
--- a/lib/Format/Format.cpp
+++ b/lib/Format/Format.cpp
@@ -1390,6 +1390,13 @@ private:
// change the "binding" behavior of a comment.
return false;
+ // Allow breaking after a trailing 'const', e.g. after a method declaration,
+ // unless it is follow by ';', '{' or '='.
+ if (Left.is(tok::kw_const) && Left.Parent != NULL &&
+ Left.Parent->is(tok::r_paren))
+ return Right.isNot(tok::l_brace) && Right.isNot(tok::semi) &&
+ Right.isNot(tok::equal);
+
// We only break before r_brace if there was a corresponding break before
// the l_brace, which is tracked by BreakBeforeClosingBrace.
if (Right.is(tok::r_brace))