Revision tags: llvmorg-21-init, llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5, llvmorg-19.1.4, llvmorg-19.1.3, llvmorg-19.1.2 |
|
#
b0c070e2 |
| 06-Oct-2024 |
Kazu Hirata <kazu@google.com> |
[clangd] Simplify ternary expressions with std::optional::value_or (NFC) (#111309)
|
Revision tags: llvmorg-19.1.1 |
|
#
f5838cc1 |
| 25-Sep-2024 |
Youngsuk Kim <youngsuk.kim@hpe.com> |
[clang-tools-extra] Don't flush llvm::raw_string_ostream (NFC)
Don't call raw_string_ostream::flush(), which is essentially a no-op. As specified in the docs, raw_string_ostream is always unbuffered
[clang-tools-extra] Don't flush llvm::raw_string_ostream (NFC)
Don't call raw_string_ostream::flush(), which is essentially a no-op. As specified in the docs, raw_string_ostream is always unbuffered. ( 65b13610a5226b84889b923bae884ba395ad084d for further reference )
show more ...
|
Revision tags: llvmorg-19.1.0, llvmorg-19.1.0-rc4, llvmorg-19.1.0-rc3, llvmorg-19.1.0-rc2, llvmorg-19.1.0-rc1, llvmorg-20-init, llvmorg-18.1.8 |
|
#
5f1adf04 |
| 07-Jun-2024 |
Utkarsh Saxena <usx@google.com> |
[clangd] Fix crash with null check for Token at Loc (#94528)
Fixes https://github.com/llvm/llvm-project/issues/94599
|
Revision tags: llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5, llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2, llvmorg-18.1.1 |
|
#
d1aec79a |
| 06-Mar-2024 |
Nathan Ridge <zeratul976@hotmail.com> |
[clangd] Remove calls to getFileLoc() in declToSym() (#83532)
toHalfOpenFileRange() already handles translating macro locations to
file locations, and it can provide a better result by knowing abou
[clangd] Remove calls to getFileLoc() in declToSym() (#83532)
toHalfOpenFileRange() already handles translating macro locations to
file locations, and it can provide a better result by knowing about both
ends of the range.
Fixes https://github.com/clangd/clangd/issues/1941
show more ...
|
Revision tags: llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init |
|
#
d5953e3e |
| 14-Dec-2023 |
Kazu Hirata <kazu@google.com> |
[clangd] Use StringRef::{starts,ends}_with (NFC)
This patch replaces uses of StringRef::{starts,ends}with with StringRef::{starts,ends}_with for consistency with std::{string,string_view}::{starts,e
[clangd] Use StringRef::{starts,ends}_with (NFC)
This patch replaces uses of StringRef::{starts,ends}with with StringRef::{starts,ends}_with for consistency with std::{string,string_view}::{starts,ends}_with in C++20.
I'm planning to deprecate and eventually remove StringRef::{starts,ends}with.
show more ...
|
Revision tags: llvmorg-17.0.6, llvmorg-17.0.5, llvmorg-17.0.4, llvmorg-17.0.3, llvmorg-17.0.2, llvmorg-17.0.1, llvmorg-17.0.0, llvmorg-17.0.0-rc4, llvmorg-17.0.0-rc3, llvmorg-17.0.0-rc2, llvmorg-17.0.0-rc1, llvmorg-18-init, llvmorg-16.0.6, llvmorg-16.0.5, llvmorg-16.0.4, llvmorg-16.0.3, llvmorg-16.0.2, llvmorg-16.0.1 |
|
#
57bfe255 |
| 19-Mar-2023 |
Nathan Ridge <zeratul976@hotmail.com> |
[clangd] Remove reundant use of getSpellingLoc()
getFileLoc() is guaranteed to return a file loc, and getSpellingLoc() on a file loc is a no-op.
Differential Revision: https://reviews.llvm.org/D146
[clangd] Remove reundant use of getSpellingLoc()
getFileLoc() is guaranteed to return a file loc, and getSpellingLoc() on a file loc is a no-op.
Differential Revision: https://reviews.llvm.org/D146377
show more ...
|
Revision tags: llvmorg-16.0.0, llvmorg-16.0.0-rc4, llvmorg-16.0.0-rc3, llvmorg-16.0.0-rc2, llvmorg-16.0.0-rc1, llvmorg-17-init, llvmorg-15.0.7 |
|
#
984b800a |
| 09-Jan-2023 |
serge-sans-paille <sguelton@mozilla.com> |
Move from llvm::makeArrayRef to ArrayRef deduction guides - last part
This is a follow-up to https://reviews.llvm.org/D140896, split into several parts as it touches a lot of files.
Differential Re
Move from llvm::makeArrayRef to ArrayRef deduction guides - last part
This is a follow-up to https://reviews.llvm.org/D140896, split into several parts as it touches a lot of files.
Differential Revision: https://reviews.llvm.org/D141298
show more ...
|
#
f71ffd3b |
| 08-Jan-2023 |
Kazu Hirata <kazu@google.com> |
[clang-tools-extra] Use std::optional instead of llvm::Optional (NFC)
This patch replaces (llvm::|)Optional< with std::optional<. I'll post a separate patch to clean up the "using" declarations, #i
[clang-tools-extra] Use std::optional instead of llvm::Optional (NFC)
This patch replaces (llvm::|)Optional< with std::optional<. I'll post a separate patch to clean up the "using" declarations, #include "llvm/ADT/Optional.h", etc.
This is part of an effort to migrate from llvm::Optional to std::optional:
https://discourse.llvm.org/t/deprecating-llvm-optional-x-hasvalue-getvalue-getvalueor/63716
show more ...
|
#
71f55735 |
| 08-Jan-2023 |
Kazu Hirata <kazu@google.com> |
[clang-tools-extra] Add #include <optional> (NFC)
This patch adds #include <optional> to those files containing llvm::Optional<...> or Optional<...>.
I'll post a separate patch to actually replace
[clang-tools-extra] Add #include <optional> (NFC)
This patch adds #include <optional> to those files containing llvm::Optional<...> or Optional<...>.
I'll post a separate patch to actually replace llvm::Optional with std::optional.
This is part of an effort to migrate from llvm::Optional to std::optional:
https://discourse.llvm.org/t/deprecating-llvm-optional-x-hasvalue-getvalue-getvalueor/63716
show more ...
|
#
b0de3630 |
| 14-Dec-2022 |
Fangrui Song <i@maskray.me> |
[clang] Remove uses of ::testing::Matcher<const Optional<T> &>
Change a few functions (getCheckTraversalKind, some clang/Tooling/ API, etc) from llvm::Optional to std::optional.
|
#
059a23c0 |
| 03-Dec-2022 |
Kazu Hirata <kazu@google.com> |
[clang-tools-extra] Use std::nullopt instead of None (NFC)
This patch mechanically replaces None with std::nullopt where the compiler would warn if None were deprecated. The intent is to reduce the
[clang-tools-extra] Use std::nullopt instead of None (NFC)
This patch mechanically replaces None with std::nullopt where the compiler would warn if None were deprecated. The intent is to reduce the amount of manual work required in migrating from Optional to std::optional.
This is part of an effort to migrate from llvm::Optional to std::optional:
https://discourse.llvm.org/t/deprecating-llvm-optional-x-hasvalue-getvalue-getvalueor/63716
show more ...
|
Revision tags: llvmorg-15.0.6, llvmorg-15.0.5, llvmorg-15.0.4, llvmorg-15.0.3, working, llvmorg-15.0.2, llvmorg-15.0.1, llvmorg-15.0.0, llvmorg-15.0.0-rc3, llvmorg-15.0.0-rc2, llvmorg-15.0.0-rc1, llvmorg-16-init, llvmorg-14.0.6, llvmorg-14.0.5, llvmorg-14.0.4, llvmorg-14.0.3, llvmorg-14.0.2, llvmorg-14.0.1, llvmorg-14.0.0, llvmorg-14.0.0-rc4, llvmorg-14.0.0-rc3, llvmorg-14.0.0-rc2 |
|
#
4d006520 |
| 26-Feb-2022 |
Sam McCall <sam.mccall@gmail.com> |
[clangd] Clean up unused includes. NFCI
Add includes where needed to fix build. Haven't systematically added used headers, so there is still accidental dependency on transitive includes.
|
Revision tags: llvmorg-14.0.0-rc1, llvmorg-15-init, llvmorg-13.0.1, llvmorg-13.0.1-rc3, llvmorg-13.0.1-rc2 |
|
#
c0e3c893 |
| 13-Dec-2021 |
Christian Kühnel <kuhnel@google.com> |
[NFC][clangd] cleaning up llvm-qualified-auto
This is a cleanup of all llvm-qualified-auto findings. This patch was created by automatically applying the fixes from clang-tidy.
Differential Revisio
[NFC][clangd] cleaning up llvm-qualified-auto
This is a cleanup of all llvm-qualified-auto findings. This patch was created by automatically applying the fixes from clang-tidy.
Differential Revision: https://reviews.llvm.org/D113898
show more ...
|
Revision tags: llvmorg-13.0.1-rc1, llvmorg-13.0.0, llvmorg-13.0.0-rc4, llvmorg-13.0.0-rc3, llvmorg-13.0.0-rc2, llvmorg-13.0.0-rc1, llvmorg-14-init |
|
#
d75fb1ee |
| 12-Jul-2021 |
David Goldman <davg@google.com> |
[clangd] Support `#pragma mark` in the outline
Xcode uses `#pragma mark -` to draw a divider in the outline view and `#pragma mark Note` to add `Note` in the outline view. For more information, see
[clangd] Support `#pragma mark` in the outline
Xcode uses `#pragma mark -` to draw a divider in the outline view and `#pragma mark Note` to add `Note` in the outline view. For more information, see https://nshipster.com/pragma/.
Since the LSP spec doesn't contain dividers for the symbol outline, instead we treat `#pragma mark -` as a group with children - the decls that come after it, implicitly terminating when the symbol's parent ends.
The following code:
``` @implementation MyClass
- (id)init {}
- (int)foo; @end ```
Would give an outline like
``` MyClass > Overrides > init > Public Accessors > foo ```
Differential Revision: https://reviews.llvm.org/D105904
show more ...
|
#
45abbaf2 |
| 10-Aug-2021 |
Florian Mayer <fmayer@google.com> |
Revert "[clangd] Support `#pragma mark` in the outline"
This reverts commit ba06ac8b45ca2ad047131fb9cc9af922cb913ea1.
|
#
ba06ac8b |
| 12-Jul-2021 |
David Goldman <davg@google.com> |
[clangd] Support `#pragma mark` in the outline
Xcode uses `#pragma mark -` to draw a divider in the outline view and `#pragma mark Note` to add `Note` in the outline view. For more information, see
[clangd] Support `#pragma mark` in the outline
Xcode uses `#pragma mark -` to draw a divider in the outline view and `#pragma mark Note` to add `Note` in the outline view. For more information, see https://nshipster.com/pragma/.
Since the LSP spec doesn't contain dividers for the symbol outline, instead we treat `#pragma mark -` as a group with children - the decls that come after it, implicitly terminating when the symbol's parent ends.
The following code:
``` @implementation MyClass
- (id)init {}
- (int)foo; @end ```
Would give an outline like
``` MyClass > Overrides > init > Public Accessors > foo ```
Differential Revision: https://reviews.llvm.org/D105904
show more ...
|
Revision tags: llvmorg-12.0.1, llvmorg-12.0.1-rc4, llvmorg-12.0.1-rc3, llvmorg-12.0.1-rc2, llvmorg-12.0.1-rc1, llvmorg-12.0.0, llvmorg-12.0.0-rc5, llvmorg-12.0.0-rc4 |
|
#
f71404c3 |
| 22-Mar-2021 |
Kadir Cetinkaya <kadircet@google.com> |
[clangd] Replace usages of dummy with more descriptive words
Dummy is a word with inappropriate associations. This patch updates the references to it in clangd code base with more precise ones.
The
[clangd] Replace usages of dummy with more descriptive words
Dummy is a word with inappropriate associations. This patch updates the references to it in clangd code base with more precise ones.
The only user-visible change is the default variable name used when extracting a variable. It will be named as `placeholder` from now on.
Differential Revision: https://reviews.llvm.org/D99065
show more ...
|
Revision tags: llvmorg-12.0.0-rc3 |
|
#
188373fb |
| 02-Mar-2021 |
Kadir Cetinkaya <kadircet@google.com> |
[clangd] Make WorkspaceSymbols request work with empty queries
Clangd uses codecompletion limit as the limit for workspacesymbols, so in theory this should only be an order of magnitude slower than
[clangd] Make WorkspaceSymbols request work with empty queries
Clangd uses codecompletion limit as the limit for workspacesymbols, so in theory this should only be an order of magnitude slower than a codecompletion request with empty identifier (as code completion limits the available symbols).
This is also what LSP suggests "Clients may send an empty string here to request all symbols.". Clangd doesn't really fulfill the "all" part of that statement, but we never do unless user set the index query limit to zero explicitly.
Differential Revision: https://reviews.llvm.org/D97773
show more ...
|
#
91679c95 |
| 26-Feb-2021 |
Sam McCall <sam.mccall@gmail.com> |
[clangd] Include macro expansions in documentSymbol hierarchy
Browsing macro-generated symbols is confusing. On the one hand, it seems very *useful* to be able to see the summary of symbols that wer
[clangd] Include macro expansions in documentSymbol hierarchy
Browsing macro-generated symbols is confusing. On the one hand, it seems very *useful* to be able to see the summary of symbols that were generated. On the other hand, some macros spew a lot of confusing symbols into the namespace and when used repeatedly (ABSL_FLAG) can create a lot of spam that's hard to navigate.
Design constraints: - the macro expansion tree need not align with the AST, though it often does in practice. We address this by defining the nesting based on the *primary* location of decls, rather than their ranges. - DocumentSymbol.children[*].range should nest within DocumentSymbol.range (This constraint is not in LSP "breadcrumbs" breaks without it) We adjust macro ranges so they cover their "children", rather than just the macro expansion - LSP does not have a "macro expansion" symbolkind, nor does it allow a symbol to have no kind. I've arbitrarily picked "null" as this is unlikely to conflict with anything useful.
This patch makes all macros and children visible for simplicity+consistency, though in some cases it may be better to elide the macro node. We may consider adding heuristics for this in future (e.g. when it expands to one decl only?) but it doesn't seem clear-cut to me.
Differential Revision: https://reviews.llvm.org/D97615
show more ...
|
Revision tags: llvmorg-12.0.0-rc2 |
|
#
5a2141e3 |
| 12-Feb-2021 |
David Goldman <davg@google.com> |
[clangd] Improve document symbols support for Objective-C categories and methods
- Categories will now show up as `MyClass(Category)` instead of `Category` and `MyCategory()` instead of `(anonymou
[clangd] Improve document symbols support for Objective-C categories and methods
- Categories will now show up as `MyClass(Category)` instead of `Category` and `MyCategory()` instead of `(anonymous)` in document symbols
- Methods will now be shown as `-selector:` or `+selector:` instead of `selector:` to differentiate between instance and class methods in document symbols
Differential Revision: https://reviews.llvm.org/D96612
show more ...
|
#
2e851c41 |
| 18-Feb-2021 |
lightmelodies <lightmelodies@outlook.com> |
[clangd] Populate detail field in document symbols
This commit fix https://github.com/clangd/clangd/issues/520 and https://github.com/clangd/clangd/issues/601. {F15544293}
Reviewed By: sammccall
D
[clangd] Populate detail field in document symbols
This commit fix https://github.com/clangd/clangd/issues/520 and https://github.com/clangd/clangd/issues/601. {F15544293}
Reviewed By: sammccall
Differential Revision: https://reviews.llvm.org/D96751
show more ...
|
Revision tags: llvmorg-11.1.0, llvmorg-11.1.0-rc3, llvmorg-12.0.0-rc1, llvmorg-13-init, llvmorg-11.1.0-rc2 |
|
#
a1d4649a |
| 15-Jan-2021 |
Kadir Cetinkaya <kadircet@google.com> |
[clangd] Fix division by zero when computing scores
NameMatch could be a float close to zero, in such cases we were dividing by zero and moreover propogating a "NaN" to clients, which is invalid per
[clangd] Fix division by zero when computing scores
NameMatch could be a float close to zero, in such cases we were dividing by zero and moreover propogating a "NaN" to clients, which is invalid per JSON.
This fixes the issue by only using Quality scores whenever the NameMatch is low, as we do in CodeCompletion ranking.
Fixes https://github.com/clangd/clangd/issues/648.
Differential Revision: https://reviews.llvm.org/D94755
show more ...
|
#
9cc221b9 |
| 15-Jan-2021 |
Ilya Golovenko <ilya.golovenko@huawei.com> |
[clangd] exclude symbols from document outline which do not originate from the main file
Differential Revision: https://reviews.llvm.org/D94753
|
Revision tags: llvmorg-11.1.0-rc1, llvmorg-11.0.1, llvmorg-11.0.1-rc2, llvmorg-11.0.1-rc1 |
|
#
1704704e |
| 26-Oct-2020 |
Kirill Bobyrev <kbobyrev@google.com> |
[clangd] NFC: Update FIXME comment regarding lack of c/dtor support
Both `SymbolKind` and `indexSymbolKindToSymbolKind` support constructors and separate them into a different category from regular
[clangd] NFC: Update FIXME comment regarding lack of c/dtor support
Both `SymbolKind` and `indexSymbolKindToSymbolKind` support constructors and separate them into a different category from regular methods.
Reviewed By: kadircet
Differential Revision: https://reviews.llvm.org/D89935
show more ...
|
Revision tags: llvmorg-11.0.0, llvmorg-11.0.0-rc6, llvmorg-11.0.0-rc5, llvmorg-11.0.0-rc4, llvmorg-11.0.0-rc3 |
|
#
b764edc5 |
| 22-Sep-2020 |
Nathan Ridge <zeratul976@hotmail.com> |
[clangd] Try harder to get accurate ranges for documentSymbols in macros
Fixes https://github.com/clangd/clangd/issues/500
Differential Revision: https://reviews.llvm.org/D88463
|