Add a main function to the clang-format.py vim integration.

This will allow using an early return statement in a subsequent change.

git-svn-id: http://llvm.org/svn/llvm-project/cfe/trunk@203501 91177308-0d34-0410-b5e6-96231b3b80d8
RTTI symbols for visible local types may need weak linkage.

Previously, we would always emit them with internal linkage,
but with hidden visibility when the function was hidden, which
is an illegal combination, which could lead LLVM to actually
emit them as strong hidden symbols with hilarious results.

rdar://16265084

git-svn-id: http://llvm.org/svn/llvm-project/cfe/trunk@203503 91177308-0d34-0410-b5e6-96231b3b80d8
Turn on the uncovered umbrella header warning by default

This warning (under -Wincomplete-umbrella) diagnoses cases that are
difficult to understand without the compiler's help, since the symptom
is likely to be that you are missing the contents of headers that are
mistakenly omitted from a module.  This seems like a good thing to have
on by default (with the usual caveat for -Wsystem-headers).

git-svn-id: http://llvm.org/svn/llvm-project/cfe/trunk@203506 91177308-0d34-0410-b5e6-96231b3b80d8
[analyzer] Eliminate memory leak in BugReporter::emitReport()

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