DebugInfo: Correct the location of array accesses

Especially relevant to ASan when dealing with complex expressions
containing multiple array accesses. See PR21737.

git-svn-id: http://llvm.org/svn/llvm-project/cfe/trunk@223872 91177308-0d34-0410-b5e6-96231b3b80d8
DebugInfo: Fix another case of array access line information

git-svn-id: http://llvm.org/svn/llvm-project/cfe/trunk@223897 91177308-0d34-0410-b5e6-96231b3b80d8
Made the ASTImporter resilient if it can't import
SourceLocations.  LLDB rarely has the same files
mapped into the target AST context as the source
AST context, so the ASTImporter shouldn't expect
to see those files there.

This started to become a problem when importing
entities from modules -- these have proper source
locations, in contrast to all the ASTs LLDB
creates which have empty ones.


git-svn-id: http://llvm.org/svn/llvm-project/cfe/trunk@223900 91177308-0d34-0410-b5e6-96231b3b80d8
DebugInfo: Correct location information for array accesses to elements of variable array type.

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