clang-format: Recognize braced lists with trailing function call.

Before:
  int count = set<int> { f(), g(), h() }
      .size();

After:
  int count = set<int>{f(), g(), h()}.size();

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195417 91177308-0d34-0410-b5e6-96231b3b80d8
clang-format: Fix bug in alignment of complex template parameters.

Before:
  template <typename aaaaaaaaaaa, typename bbbbbbbbbbbbb, template <typename>
            class cccccccccccccccccccccc, typename ddddddddddddd>
  class C {};

After:
  template <typename aaaaaaaaaaa, typename bbbbbbbbbbbbb,
            template <typename> class cccccccccccccccccccccc,
            typename ddddddddddddd>
  class C {};

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195418 91177308-0d34-0410-b5e6-96231b3b80d8
Make ASTUnit structure stable with NDEBUG

ASTUnit instances are allocated infrequently so it's fine to keep this field
around in all build configurations.

Assigns null to silence -Wunused-private-field in Release.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@195419 91177308-0d34-0410-b5e6-96231b3b80d8