Adding attributes to the IndirectFieldDecl that we generate for anonymous struct/union fields. This fixes PR20930.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@219807 91177308-0d34-0410-b5e6-96231b3b80d8
[libclang] Add function to retrieve storage class in libclang.

Patch by guibufolo!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@219809 91177308-0d34-0410-b5e6-96231b3b80d8
Fix late template parsing leak with incremental processing

Add a second late template parser callback meant to cleanup any
resources allocated by late template parsing.  Call it from the
Sema::ActOnEndOfTranslationUnit method after all pending template
instantiations have been completed.  Teach Parser::ParseTopLevelDecl to
install the cleanup callback when incremental processing is enabled so
that Parser::TemplateIds can be freed.

Patch by Brad King!

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@219810 91177308-0d34-0410-b5e6-96231b3b80d8
[analyzer] Perl scripts are run differently from makefiles. Sometimes additional utilities are involved, e.g. 'env' utility that present in MSYS but is missing in MinGW. The patch unifies launch of "c++-analyzer" and "ccc-analyzer".

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@219812 91177308-0d34-0410-b5e6-96231b3b80d8
Revert "Fix late template parsing leak with incremental processing"

This reverts commit r219810.

The test suite appears broken.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@219813 91177308-0d34-0410-b5e6-96231b3b80d8
Drop unneccessary default case from switch introduced in r219809

This silences:
../tools/clang/tools/libclang/CIndex.cpp:6451:3: warning: default label
in switch which covers all enumeration values [-Wcovered-switch-default]

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