Fix two leaks found by LSan (one is test-only).

The result of llvm::MemoryBuffer::getMemBuffer() needs to be freed. Don't
pass "don't free" flag to overrideFileContents() to fix.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@207075 91177308-0d34-0410-b5e6-96231b3b80d8
Fix two leaks found by LSan.

A CursorPlatformAvailability can have several "unavailable" attributes, don't
leak all but the first.  I'm not sure if there can be several "deprecate"ds too,
but add the same logic there to keep the two code paths looking the same.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@207076 91177308-0d34-0410-b5e6-96231b3b80d8
Don't leak invalid RegexDirectives. Probably a small part of PR19520.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@207077 91177308-0d34-0410-b5e6-96231b3b80d8
Don't leak _all_ directives in -verify mode. Found by LSan, PR19520.


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