ilya-biryukov added a comment.

The new behavior looks reasonable for interactive tools like clangd, but I'm a 
bit worried that clang may emit too many irrelevant errors, because it may not 
cope nicely with those fatal errors, i.e. wasn't tested that thoroughly in that 
mode.
Nevertheless, I think this is moving clangd in the right direction and if we 
see too many irrelevant errors, we should look into improving clang to show 
less of those.



================
Comment at: test/clangd/missing-includes.test:1
+# RUN: clangd -lit-test < %s | FileCheck %s
+{"jsonrpc":"2.0","id":0,"method":"initialize","params":{"processId":123,"rootPath":"clangd","capabilities":{},"trace":"off"}}
----------------
This tests looks useful, but could we also unit-test (with a C++ gtest) that 
fatal errors do not block other errors when:
1. building the preamble (i.e. when calling `buildPreamble`),
2. building the AST (i.e. when calling `ParsedAST::build`).

To have a regression test for potential changes in those areas.


Repository:
  rCTE Clang Tools Extra

https://reviews.llvm.org/D50455



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

Reply via email to