2

I installed the LSP client for C++ development using the plugin manager "packer" in neovim. My lua config was almost exclusively copied from this website:

LSP in Neovim

When working with modern CPP however, I get warning messages. The native LSP client does not support modern CPP apparently?

For example this line of code uses nested namespaces:

namespace Tuple::Person

The warning message I get looks like this: Nested namespace definition is a C++17 extension; define each namespace separately.

Structured bindings also don't work:

auto [name, age] = Tuple::Person::getPersonData();

The warning message: Decomposition declarations are a C++17 extension.

Does anyone know how to fix this? In case you don't, do you have other recommendations on how to integrate clangd, clangtidy or in general C++ auto completion in neovim? I tried using YouCompleteMe, but that didn't work for me as well. Thanks for any help or recommendations in advance!

0 Answers0