@@ -56,7 +56,8 @@ Improvements to clangd
56
56
Inlay hints
57
57
^^^^^^^^^^^
58
58
59
- - Added `DefaultArguments ` Inlay Hints option.
59
+ - Added support for inlay hints for default arguments, enabled using the
60
+ `DefaultArguments ` config option (#GH95712)
60
61
61
62
Diagnostics
62
63
^^^^^^^^^^^
@@ -67,35 +68,81 @@ Semantic Highlighting
67
68
Compile flags
68
69
^^^^^^^^^^^^^
69
70
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
+
70
75
Hover
71
76
^^^^^
72
77
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
+
73
82
Code completion
74
83
^^^^^^^^^^^^^^^
75
84
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)
76
93
- 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)
77
96
78
97
Code actions
79
98
^^^^^^^^^^^^
80
99
81
100
- Added `Swap operands ` tweak for certain binary operators.
82
-
83
101
- Improved the extract-to-function code action to allow extracting statements
84
102
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)
85
107
86
108
Signature help
87
109
^^^^^^^^^^^^^^
88
110
89
111
Cross-references
90
112
^^^^^^^^^^^^^^^^
91
113
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
+
92
124
Objective-C
93
125
^^^^^^^^^^^
94
126
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
+
95
140
Miscellaneous
96
141
^^^^^^^^^^^^^
97
142
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
99
146
100
147
Improvements to clang-doc
101
148
-------------------------
0 commit comments