Skip to content

Commit 794ba17

Browse files
[clangd] Add clangd 20 release notes (#127358)
1 parent f88a294 commit 794ba17

File tree

1 file changed

+50
-3
lines changed

1 file changed

+50
-3
lines changed

clang-tools-extra/docs/ReleaseNotes.rst

Lines changed: 50 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,8 @@ Improvements to clangd
5656
Inlay hints
5757
^^^^^^^^^^^
5858

59-
- Added `DefaultArguments` Inlay Hints option.
59+
- Added support for inlay hints for default arguments, enabled using the
60+
`DefaultArguments` config option (#GH95712)
6061

6162
Diagnostics
6263
^^^^^^^^^^^
@@ -67,35 +68,81 @@ Semantic Highlighting
6768
Compile flags
6869
^^^^^^^^^^^^^
6970

71+
- Fixed a bug where clangd would unnecessarily reparse open files whose
72+
compile command did not change when receiving a new compile command
73+
via an LSP `workspace/configuration` request (#GH115438)
74+
7075
Hover
7176
^^^^^
7277

78+
- Hovering over a function name now shows the function's documentation
79+
comment even if the comment is written above the function's out-of-line
80+
definition in a different source file (#GH67802)
81+
7382
Code completion
7483
^^^^^^^^^^^^^^^
7584

85+
- Added an `ArgumentLists` config option under `Completion`. This is a more
86+
flexible version of the `--function-arg-placeholders` command line flag,
87+
allowing users more detailed control of what is inserted in argument list
88+
position when clangd completes the name of a function in a function call
89+
context. (#GH111322)
90+
- Clangd now supports configuring which headers should be inserted using
91+
`<>` vs. `""` syntax using the `QuotedHeaders` and `AngledHeaders` config
92+
options under `Style` (#GH67749)
7693
- Added completion for C++20 keywords.
94+
- Improved code completion behaviour in dependent/templated code
95+
- Completion items now include documentation comments in more cases (#GH120099)
7796

7897
Code actions
7998
^^^^^^^^^^^^
8099

81100
- Added `Swap operands` tweak for certain binary operators.
82-
83101
- Improved the extract-to-function code action to allow extracting statements
84102
with overloaded operators like ``<<`` of ``std::ostream``.
103+
- `Define outline` now handles member functions of class templates, and
104+
member function templates.
105+
- `Extract variable` can now operate on the top-level expression in an
106+
expression statement (#GH112525)
85107

86108
Signature help
87109
^^^^^^^^^^^^^^
88110

89111
Cross-references
90112
^^^^^^^^^^^^^^^^
91113

114+
- Clangd now supports the "outgoing calls" direction of call hierarchy
115+
(#GH77556)
116+
- Call hierarchy can now be invoked on fields and namespace-scope
117+
variables (#GH113900)
118+
- Improved heuristics for filtering out generated Protobuf symbol names
119+
during indexing (#GH110091)
120+
- Compiler intrinsics defined in `*intrin.h` system headers are now
121+
indexed even if they have reserved names (#GH119735)
122+
- Various improvements to go-to-definition in templated code
123+
92124
Objective-C
93125
^^^^^^^^^^^
94126

127+
Clang-tidy integration
128+
^^^^^^^^^^^^^^^^^^^^^^
129+
130+
- Improved robustness in handling clang-tidy check names (#GH109421)
131+
132+
C++20 Modules Support
133+
^^^^^^^^^^^^^^^^^^^^^
134+
135+
- Support code completion for symbols defined in modules (#GH110083)
136+
- Improve performance when opening files that import modules (#GH106683)
137+
- Compile commands for modules now respect modifications specified in `.clangd`
138+
files (#GH122606)
139+
95140
Miscellaneous
96141
^^^^^^^^^^^^^
97142

98-
- The DefineOutline tweak now handles member functions of class templates.
143+
- Fixed an OOM affecting some versions of libcxx headers compiled in C++20
144+
mode (#GH108866)
145+
- Various other stability improvements, e.g. crash fixes
99146

100147
Improvements to clang-doc
101148
-------------------------

0 commit comments

Comments
 (0)