[clangd] Handle additional includes while parsing ASTs
authorKadir Cetinkaya <kadircet@google.com>
Thu, 2 Apr 2020 08:53:45 +0000 (10:53 +0200)
committerKadir Cetinkaya <kadircet@google.com>
Fri, 29 May 2020 10:20:23 +0000 (12:20 +0200)
commitb742eaa321219fa3444e3bcd33eda441bea6b73a
tree26a6faa54bd41bf1c85097cdb88d5dd3b8928c5e
parentb9bb3ad3ed3b13607d15472a0b881da9fb00fc03
[clangd] Handle additional includes while parsing ASTs

Summary:
Enables building ASTs with stale preambles by handling additional preamble
includes. Sets the correct location information for those imaginary includes so
that features like gotodef/documentlink keeps functioning propoerly.

Reviewers: sammccall

Subscribers: ilya-biryukov, MaskRay, jkorous, mgrang, arphaman, usaxena95, cfe-commits

Tags: #clang

Differential Revision: https://reviews.llvm.org/D77644
clang-tools-extra/clangd/CodeComplete.cpp
clang-tools-extra/clangd/ParsedAST.cpp
clang-tools-extra/clangd/Preamble.cpp
clang-tools-extra/clangd/Preamble.h
clang-tools-extra/clangd/unittests/FindSymbolsTests.cpp
clang-tools-extra/clangd/unittests/ParsedASTTests.cpp
clang-tools-extra/clangd/unittests/PreambleTests.cpp