clangd
Fewer than 5 people recommend it so far, so there's no written verdict. Here is what commenters said.
4recommend
3warn against
Nov 1, 2025first mention
Jun 1, 2026latest mention
Why people recommend it
“clangd works wonderfully and has been working wonderfully for a few years”
“VS Code with clangd is what I use now when I need to code C++.”
Show 1 more
“Renaming symbols (variables / functions) via clangd works fine.”
Caveats and dissent
“that required me to frequently kill clangd”
Often compared with
Threads where it came up
- KDE at 30 1 mention
- Zed is 1.0 1 mention
- Two Years of Emacs Solo: 35 Modules, Zero External Packages, and a Full Refactor 1 mention
- Making Video Games in 2025 (without an engine) 1 mention
- Writing a blatant Telegram clone using Qt, QML and Rust. And C++ 1 mention
- Intellij IDEA now supports C/C++ 1 mention
Data: clangd.json. Quotes are verbatim; the verdict and theme labels are written by a model from these comments, and every clause links to its sources.
All comments 8
“coupled with clangd for C/C++ programming”
“clangd will choke badly”
“that required me to frequently kill clangd”
“clangd works wonderfully and has been working wonderfully for a few years”
Qt Creator also supports clangd: https://doc.qt.io/qtcreator/creator-preferences-cpp-clangd.html. Personally, I haven't tried it yet.
“VS Code with clangd is what I use now when I need to code C++.”
PMunch and summarity both already said this, but because maybe code speaks louder than words (like pictures?)... This works: from strutils as su import nil echo su.split "hi there" (You can put some parens () in there if you like, but that compiles.) So, you can do Python-style terse renames of imports with forced qualification. You just won't be able to say "hi there".(su.split) or .`su.split` or the like. You can r
“Renaming symbols (variables / functions) via clangd works fine.”