Lsp RPC error codes printed at neovim exit (starting from 0.8.0 ?)

Starting from may be 0.8.0 release, neovim with clangd lsp enabled (working fine on 0.7.2) starts to print multiple messages on exit in the form of

RPC[Error] code_name = UnknownErrorCode, message = “Failed to parse includes”

The C project I’m parsing has some issues with some header paths (benign) but I don’t think it ever prints these to the stderr. Shouldn’t these be printed to the lsp logs instead ? Sometimes I get tones of these messages on nvim exist which is annoying.

Anyone seen this recently?

2 Likes

Hi, so in my case, I solved it accidentally: it was to delete ‘clangd’ that I had downloaded via Mason. nvim-lspconfig already had a clangd, it was somehow conflicting with mason clangd and that was causing this problem!

Sometimes compile_commands.json has some information which clangd cannot support. You should make sure that clangd’s “–query-driver” includes compilers needed(escpecailly cross-compiler toolchians), and compile options in the compile_commands.json are supported by clangd.
More details can be found in the lsp.log.

Hi, where is lsp.log, I tried :help lsp.log

I am not able to reproduce my earlier solution, mason auto installs clangd on startup of a cpp file.