[llvm-branch-commits] [clang-tools-extra] [clangd] Add clangd 20 release notes (PR #127358)

Chuanqi Xu via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Sun Feb 16 17:41:45 PST 2025


================
@@ -67,35 +68,84 @@ Semantic Highlighting
 Compile flags
 ^^^^^^^^^^^^^
 
+- Fixed a bug where clangd would unnecessarily reparse open files whose
+  compile command did not change when receiving a new compile command
+  via an LSP `workspace/configuration` request (#GH115438)
+
 Hover
 ^^^^^
 
+- Hovering over a function name now shows the function's documentation
+  comment even if the comment is written above the function's out-of-line
+  definition in a different source file (#GH67802)
+
 Code completion
 ^^^^^^^^^^^^^^^
 
+- Added an `ArgumentLists` config option under `Completion`. This is a more
+  flexible version of the `--function-arg-placeholders` command line flag,
+  allowing users more detailed control of what is inserted in argument list
+  position when clangd completes the name of a function in a function call
+  context. (#GH111322)
+- Clangd now supports configuring which headers should be inserted using 
+  `<>` vs. `""` syntax using the `QuotedHeaders` and `AngledHeaders` config
+  options under `Style` (#GH67749)
 - Added completion for C++20 keywords.
+- Clangd's `HeuristicResolver` component was upstreamed to `libSema` where
+  code completion can take advantage of it, resulting in improved code
+  completion in templated code
+- Code completion proposals for symbols defined in included headers now
+  include documentation comments (#GH120099)
 
 Code actions
 ^^^^^^^^^^^^
 
 - Added `Swap operands` tweak for certain binary operators.
-
 - Improved the extract-to-function code action to allow extracting statements
   with overloaded operators like ``<<`` of ``std::ostream``.
+- `Define outline` now handles member functions of class templates, and
+  member function templates.
+- `Extract variable` can now operate on the top-level expression in an
+  expression statement (#GH112525)
 
 Signature help
 ^^^^^^^^^^^^^^
 
 Cross-references
 ^^^^^^^^^^^^^^^^
 
+- Clangd now supports the "outgoing calls" direction of call hierarchy
+  (#GH77556)
+- Call hierarchy can now be invoked on fields and namespace-scope
+  variables (#GH113900)
+- Improved heuristics for filtering out generated Protobuf symbol names
+  during indexing (#GH110091)
+- Compiler intrinsics defined in `*intrin.h` system headers are now
+  indexed even if they have reserved names (#GH119735)
+- Various improvements to go-to-definition in templated code
+
 Objective-C
 ^^^^^^^^^^^
 
+Clang-tidy integration
+^^^^^^^^^^^^^^^^^^^^^^
+
+- Improved robustness in handling clang-tidy check names (#GH109421)
+
+C++20 Modules Support
----------------
ChuanqiXu9 wrote:

I think the current wording is fine. Or we can say we improved the efficiency of support for modules in clangd20.

https://github.com/llvm/llvm-project/pull/127358


More information about the llvm-branch-commits mailing list