aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorDaniel Jasper <djasper@google.com>2013-01-09 10:40:23 +0000
committerDaniel Jasper <djasper@google.com>2013-01-09 10:40:23 +0000
commit3fc0bb779e751de71166c20a365cd5c28c3de8ed (patch)
treef09df1a015223a83b19cc52b9139fc240fd21798 /lib
parentceb99ab9d721848c0851c59f3fdd9c1ca85c58be (diff)
Only align after assignments on the top level.
This fixes llvm.org/PR14870 and we no longer mess up: template <typename T1, typename T2 = char, typename T3 = char, typename T4 = char> void f(); It removes the nice aligment for assignments inside other expressions, but I am not sure those are actually practically relevant. If so, we can fix those later. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@171966 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r--lib/Format/Format.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/Format/Format.cpp b/lib/Format/Format.cpp
index 53dc97abec..1854d70d90 100644
--- a/lib/Format/Format.cpp
+++ b/lib/Format/Format.cpp
@@ -333,7 +333,9 @@ private:
if (!DryRun)
replaceWhitespace(Current, 0, Spaces);
- if (RootToken.isNot(tok::kw_for) &&
+ // FIXME: Do we need to do this for assignments nested in other
+ // expressions?
+ if (RootToken.isNot(tok::kw_for) && ParenLevel == 0 &&
(getPrecedence(Previous) == prec::Assignment ||
Previous.is(tok::kw_return)))
State.Indent[ParenLevel] = State.Column + Spaces;