nridge added a comment.

In D153114#4630318 <https://reviews.llvm.org/D153114#4630318>, @ChuanqiXu wrote:

> However, I can't search the caller of `reparseOpenFilesIfNeeded` which 
> semantics matches the behavior. The two callers of  
> `reparseOpenFilesIfNeeded` I found are 
> `ClangdLSPServer::applyConfiguration()` and 
> `ClangdLSPServer::onDocumentDidSave()` and neither of them matches 
> description `files included in the  preamble have been modified`.
>
> So I want to ask what's the behavior when I update a header and where is the 
> corresponding code. Thanks.

I'm afraid `onDocumentDidSave()` is all we have for now. It detects changes to 
the header when editing the header in the client (when the header is saved). I 
don't believe we have a mechanism for detecting changes to the header made in 
other ways.

If/when we want to add such a mechanism, I think the way to do it is using 
didChangeWatchedFiles 
<https://microsoft.github.io/language-server-protocol/specifications/lsp/3.17/specification/#workspace_didChangeWatchedFiles>
 (there is some discussion there about why LSP recommends servers delegate 
file-watching to the client rather than implementing file-watching in the 
server).


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D153114/new/

https://reviews.llvm.org/D153114

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to