I'm trying to complete the implementation in the cpp file by writing the part of the member function or the free function. I'm getting different responses in textDocument/completion request in clangd-15 and clangd-16+ versions (logs and versions are provided below). The only thing I change is a symlink to clangd, everything else (editor, plugins etc) are not changed between runs.
Note the insertText field, only clangd-15 gives the parameters in it, while clangd-16..18 gives only function name. And it looks fine in free function completion, while the member function completion differs and feels broken in clangd-16+.
Consider this piece of code from the header file:
I'm trying to complete the implementation in the cpp file by writing the part of the member function or the free function. I'm getting different responses in
textDocument/completion
request in clangd-15 and clangd-16+ versions (logs and versions are provided below). The only thing I change is a symlink to clangd, everything else (editor, plugins etc) are not changed between runs. Note theinsertText
field, only clangd-15 gives the parameters in it, while clangd-16..18 gives only function name. And it looks fine in free function completion, while the member function completion differs and feels broken in clangd-16+.Logs
clangd-15
clang-16..18
System information
Output of
clangd --version
: Ubuntu clangd version 15.0.7 Features: linux+grpc Platform: x86_64-pc-linux-gnuUbuntu clangd version 16.0.6 (23ubuntu4) Features: linux+grpc Platform: x86_64-pc-linux-gnu
Ubuntu clangd version 17.0.6 (9ubuntu1) Features: linux+grpc Platform: x86_64-pc-linux-gnu
Ubuntu clangd version 18.1.8 (++20240701074744+3b5b5c1ec4a3-1~exp1~20240701194905.84) Features: linux+grpc Platform: x86_64-pc-linux-gnu
Editor/LSP plugin: emacs + emacs-lsp
Operating system: xubuntu 24.04