Indentation fixes for clang-format.

- Fix behavior of memoization together with optimization
- Correctly attribute the PenaltyIndentLevel (breaking directly after "(" did
  not count towards the inner level)
- Recognize more tokens as assignments

Review: http://llvm-reviews.chandlerc.com/D172

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@169384 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Format/UnwrappedLineParser.cpp b/lib/Format/UnwrappedLineParser.cpp
index bdea42a..c2cb5b8 100644
--- a/lib/Format/UnwrappedLineParser.cpp
+++ b/lib/Format/UnwrappedLineParser.cpp
@@ -106,6 +106,12 @@
 }
 
 void UnwrappedLineParser::parseStatement() {
+  // Consume leading line comments, e.g. for branches without compounds.
+  while (FormatTok.Tok.is(tok::comment)) {
+    nextToken();
+    addUnwrappedLine();
+  }
+
   switch (FormatTok.Tok.getKind()) {
   case tok::kw_public:
   case tok::kw_protected: