|
Revision tags: llvmorg-20.1.0, llvmorg-20.1.0-rc3, llvmorg-20.1.0-rc2, llvmorg-20.1.0-rc1, 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, llvmorg-19.1.1, 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, 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, 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, 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, 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, llvmorg-15.0.6, llvmorg-15.0.5, llvmorg-15.0.4, llvmorg-15.0.3, 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 |
|
| #
2eba08fd |
| 18-Jul-2022 |
Nathan Ridge <[email protected]> |
[clangd] Do not try to use $0 as a placeholder in completion snippets
$0 can only be used as a tab stop, not as a placeholder (e.g. `${0:expression}` is not valid)
Fixes https://github.com/clangd/c
[clangd] Do not try to use $0 as a placeholder in completion snippets
$0 can only be used as a tab stop, not as a placeholder (e.g. `${0:expression}` is not valid)
Fixes https://github.com/clangd/clangd/issues/1190
Differential Revision: https://reviews.llvm.org/D128621
show more ...
|
|
Revision tags: 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 <[email protected]> |
[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, 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, llvmorg-12.0.1, llvmorg-12.0.1-rc4, llvmorg-12.0.1-rc3, llvmorg-12.0.1-rc2, llvmorg-12.0.1-rc1 |
|
| #
2a030e68 |
| 19-Apr-2021 |
David Goldman <[email protected]> |
[clangd][ObjC] Fix issue completing a method decl by name
When completing an Objective-C method declaration by name, we need to preserve the leading text as a `qualifier` so we insert it properly be
[clangd][ObjC] Fix issue completing a method decl by name
When completing an Objective-C method declaration by name, we need to preserve the leading text as a `qualifier` so we insert it properly before the first typed text chunk.
Differential Revision: https://reviews.llvm.org/D100798
show more ...
|
|
Revision tags: llvmorg-12.0.0, llvmorg-12.0.0-rc5, llvmorg-12.0.0-rc4, llvmorg-12.0.0-rc3, llvmorg-12.0.0-rc2, llvmorg-11.1.0, llvmorg-11.1.0-rc3, llvmorg-12.0.0-rc1, llvmorg-13-init, llvmorg-11.1.0-rc2, llvmorg-11.1.0-rc1, llvmorg-11.0.1, llvmorg-11.0.1-rc2, llvmorg-11.0.1-rc1, llvmorg-11.0.0, llvmorg-11.0.0-rc6 |
|
| #
216af81c |
| 30-Sep-2020 |
Sam McCall <[email protected]> |
[clangd] Fix invalid UTF8 when extracting doc comments.
Differential Revision: https://reviews.llvm.org/D88567
|
|
Revision tags: llvmorg-11.0.0-rc5, llvmorg-11.0.0-rc4, llvmorg-11.0.0-rc3, llvmorg-11.0.0-rc2, llvmorg-11.0.0-rc1, llvmorg-12-init, llvmorg-10.0.1, llvmorg-10.0.1-rc4, llvmorg-10.0.1-rc3, llvmorg-10.0.1-rc2, llvmorg-10.0.1-rc1, llvmorg-10.0.0, llvmorg-10.0.0-rc6, llvmorg-10.0.0-rc5, llvmorg-10.0.0-rc4, llvmorg-10.0.0-rc3, llvmorg-10.0.0-rc2, llvmorg-10.0.0-rc1, llvmorg-11-init, llvmorg-9.0.1, llvmorg-9.0.1-rc3, llvmorg-9.0.1-rc2, llvmorg-9.0.1-rc1, llvmorg-9.0.0, llvmorg-9.0.0-rc6, llvmorg-9.0.0-rc5, llvmorg-9.0.0-rc4, llvmorg-9.0.0-rc3, llvmorg-9.0.0-rc2 |
|
| #
0e8dd4a8 |
| 07-Aug-2019 |
Sam McCall <[email protected]> |
Code completion should not ignore default parameters in functions.
Summary: Inorder to display the default arguments we must process the CK_Optional chunks of CodeCompletionString while creating the
Code completion should not ignore default parameters in functions.
Summary: Inorder to display the default arguments we must process the CK_Optional chunks of CodeCompletionString while creating the Signature.
We do not create placeholders for default arguments.
Reviewers: sammccall
Reviewed By: sammccall
Subscribers: jkorous, arphaman, kadircet, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D65866
llvm-svn: 368186
show more ...
|
|
Revision tags: llvmorg-9.0.0-rc1, llvmorg-10-init, llvmorg-8.0.1, llvmorg-8.0.1-rc4, llvmorg-8.0.1-rc3, llvmorg-8.0.1-rc2 |
|
| #
8534675c |
| 28-May-2019 |
Ilya Biryukov <[email protected]> |
[clangd] Place cursor better after completing patterns
Summary: By producing the $0 marker in the snippets at the last placeholder. This produces nicer results in most cases, e.g. for namespace <
[clangd] Place cursor better after completing patterns
Summary: By producing the $0 marker in the snippets at the last placeholder. This produces nicer results in most cases, e.g. for namespace <#name#> { <#decls#> }
we now produce ${0:decls} instead of ${2:decls} and the final cursor placement is more convenient.
Reviewers: hokein
Reviewed By: hokein
Subscribers: MaskRay, jkorous, arphaman, kadircet, cfe-commits
Tags: #clang
Differential Revision: https://reviews.llvm.org/D62389
llvm-svn: 361841
show more ...
|
|
Revision tags: llvmorg-8.0.1-rc1, llvmorg-8.0.0, llvmorg-8.0.0-rc5, llvmorg-8.0.0-rc4, llvmorg-8.0.0-rc3, llvmorg-7.1.0, llvmorg-7.1.0-rc1, llvmorg-8.0.0-rc2, llvmorg-8.0.0-rc1 |
|
| #
2946cd70 |
| 19-Jan-2019 |
Chandler Carruth <[email protected]> |
Update the file headers across all of the LLVM projects in the monorepo to reflect the new license.
We understand that people may be surprised that we're moving the header entirely to discuss the ne
Update the file headers across all of the LLVM projects in the monorepo to reflect the new license.
We understand that people may be surprised that we're moving the header entirely to discuss the new license. We checked this carefully with the Foundation's lawyer and we believe this is the correct approach.
Essentially, all code in the project is now made available by the LLVM project under our new license, so you will see that the license headers include that license only. Some of our contributors have contributed code under our old license, and accordingly, we have retained a copy of our old license notice in the top-level files in each project and repository.
llvm-svn: 351636
show more ...
|
| #
f2001aa7 |
| 07-Jan-2019 |
Ilya Biryukov <[email protected]> |
[clangd] Remove 'using namespace llvm' from .cpp files. NFC
The new guideline is to qualify with 'llvm::' explicitly both in '.h' and '.cpp' files. This simplifies moving the code between header and
[clangd] Remove 'using namespace llvm' from .cpp files. NFC
The new guideline is to qualify with 'llvm::' explicitly both in '.h' and '.cpp' files. This simplifies moving the code between header and source files and is easier to keep consistent.
llvm-svn: 350531
show more ...
|
| #
22fa465a |
| 03-Jan-2019 |
Ilya Biryukov <[email protected]> |
[clangd] clang-format everything. NFC
llvm-svn: 350303
|
|
Revision tags: llvmorg-7.0.1, llvmorg-7.0.1-rc3 |
|
| #
39e86fa5 |
| 14-Nov-2018 |
Sam McCall <[email protected]> |
[clangd] Improve code completion for ObjC methods
Summary: Previously code completion did not work well for Objective-C methods which contained multiple arguments as clangd did not expect to see mul
[clangd] Improve code completion for ObjC methods
Summary: Previously code completion did not work well for Objective-C methods which contained multiple arguments as clangd did not expect to see multiple typed-text chunks when handling code completion.
Note that even with this change, we do not consider selector fragments from previous arguments to be part of the signature (although we could in the future).
Reviewers: sammccall
Reviewed By: sammccall
Subscribers: ilya-biryukov, ioeric, MaskRay, jkorous, arphaman, jfb, kadircet, cfe-commits
Differential Revision: https://reviews.llvm.org/D53934
llvm-svn: 346836
show more ...
|
|
Revision tags: llvmorg-7.0.1-rc2, llvmorg-7.0.1-rc1 |
|
| #
c008af64 |
| 20-Oct-2018 |
Sam McCall <[email protected]> |
[clangd] Namespace style cleanup in cpp files. NFC.
Standardize on the most common namespace setup in our *.cpp files: using namespace llvm; namespace clang { namespace clangd { void foo(Str
[clangd] Namespace style cleanup in cpp files. NFC.
Standardize on the most common namespace setup in our *.cpp files: using namespace llvm; namespace clang { namespace clangd { void foo(StringRef) { ... } And remove redundant llvm:: qualifiers. (Except for cases like make_unique where this causes problems with std:: and ADL).
This choice is pretty arbitrary, but some broad consistency is nice. This is going to conflict with everything. Sorry :-/
Squash the other configurations:
A) using namespace llvm; using namespace clang; using namespace clangd; void clangd::foo(StringRef); This is in some of the older files. (It prevents accidentally defining a new function instead of one in the header file, for what that's worth).
B) namespace clang { namespace clangd { void foo(llvm::StringRef) { ... } This is fine, but in practice the using directive often gets added over time.
C) namespace clang { namespace clangd { using namespace llvm; // inside the namespace This was pretty common, but is a bit misleading: name lookup preferrs clang::clangd::foo > clang::foo > llvm:: foo (no matter where the using directive is).
llvm-svn: 344850
show more ...
|
|
Revision tags: llvmorg-7.0.0, llvmorg-7.0.0-rc3, llvmorg-7.0.0-rc2 |
|
| #
5f4a3513 |
| 17-Aug-2018 |
Ilya Biryukov <[email protected]> |
[clangd] Show function documentation in signature help
Summary: Previously, clangd was trying to show documentation for the active parameter instead, which is wrong per LSP specification.
Moreover,
[clangd] Show function documentation in signature help
Summary: Previously, clangd was trying to show documentation for the active parameter instead, which is wrong per LSP specification.
Moreover, the code path that attempts to get parameter comments never succeds, because no attempt is made to parse function doc comment and extract parameter-specific parts out of it. So we also remove the code that claims to fetch parameter comments: it is not used anymore and is incorrect.
Reviewers: hokein, ioeric, kadircet
Reviewed By: ioeric
Subscribers: MaskRay, jkorous, arphaman, cfe-commits
Differential Revision: https://reviews.llvm.org/D50726
llvm-svn: 340004
show more ...
|
| #
8e35f1e7 |
| 14-Aug-2018 |
Kirill Bobyrev <[email protected]> |
NFC: Enforce good formatting across multiple clang-tools-extra files
This patch improves readability of multiple files in clang-tools-extra and enforces LLVM Coding Guidelines.
Reviewed by: ioeric
NFC: Enforce good formatting across multiple clang-tools-extra files
This patch improves readability of multiple files in clang-tools-extra and enforces LLVM Coding Guidelines.
Reviewed by: ioeric
Differential Revision: https://reviews.llvm.org/D50707
llvm-svn: 339687
show more ...
|
| #
43465bf3 |
| 09-Aug-2018 |
Stephen Kelly <[email protected]> |
Port getLocStart -> getBeginLoc
Reviewers: javed.absar
Subscribers: nemanjai, kbarton, ilya-biryukov, ioeric, jkorous, arphaman, jfb, cfe-commits
Differential Revision: https://reviews.llvm.org/D5
Port getLocStart -> getBeginLoc
Reviewers: javed.absar
Subscribers: nemanjai, kbarton, ilya-biryukov, ioeric, jkorous, arphaman, jfb, cfe-commits
Differential Revision: https://reviews.llvm.org/D50354
llvm-svn: 339400
show more ...
|
|
Revision tags: llvmorg-7.0.0-rc1 |
|
| #
74f2655d |
| 26-Jul-2018 |
Ilya Biryukov <[email protected]> |
[clangd] Fix (most) naming warnings from clang-tidy. NFC
llvm-svn: 338021
|
| #
6f33b330 |
| 09-Jul-2018 |
Ilya Biryukov <[email protected]> |
[clangd] Do not write comments into Preamble PCH
Summary: To avoid wasting time deserializing them on code completion and further reparses.
We do not use the comments anyway, because we cannot rely
[clangd] Do not write comments into Preamble PCH
Summary: To avoid wasting time deserializing them on code completion and further reparses.
We do not use the comments anyway, because we cannot rely on the file contents staying the same for reparses that reuse the prebuilt preamble PCH.
Reviewers: sammccall
Reviewed By: sammccall
Subscribers: ioeric, MaskRay, jkorous, cfe-commits
Differential Revision: https://reviews.llvm.org/D48943
llvm-svn: 336540
show more ...
|
| #
da8dd8b8 |
| 27-Jun-2018 |
Ilya Biryukov <[email protected]> |
[clangd] Do not show namespace comments.
Summary: Comments from namespaces that clangd produces are too noisy and often not useful.
Namespaces have too many redecls and we don't have a good way of
[clangd] Do not show namespace comments.
Summary: Comments from namespaces that clangd produces are too noisy and often not useful.
Namespaces have too many redecls and we don't have a good way of determining which of the comments are relevant and which should be ignored (e.g. because they come from code generators like the protobuf compiler).
Reviewers: sammccall
Reviewed By: sammccall
Subscribers: ioeric, MaskRay, jkorous, cfe-commits
Differential Revision: https://reviews.llvm.org/D48211
llvm-svn: 335718
show more ...
|
| #
a68951e3 |
| 22-Jun-2018 |
Sam McCall <[email protected]> |
[clangd] More precise representation of symbol names/labels in the index.
Summary: Previously, the strings matched LSP completion pretty closely. The completion label was a single string, for instan
[clangd] More precise representation of symbol names/labels in the index.
Summary: Previously, the strings matched LSP completion pretty closely. The completion label was a single string, for instance. This made implementing completion itself easy but makes it hard to use the names in other way, e.g. pretty-printed name in synthesized documentation/hover.
It also limits our introspection into completion items, which can only be as precise as the indexed symbols. This change is a prerequisite to improvements to overload bundling which need to inspect e.g. signature structure.
Reviewers: ioeric
Subscribers: ilya-biryukov, MaskRay, jkorous, cfe-commits
Differential Revision: https://reviews.llvm.org/D48475
llvm-svn: 335360
show more ...
|
| #
032db94a |
| 22-Jun-2018 |
Sam McCall <[email protected]> |
[clangd] Remove FilterText from the index.
Summary: It's almost always identical to Name, and in fact we never used it (we used name instead). The only case where they differ is objc method selector
[clangd] Remove FilterText from the index.
Summary: It's almost always identical to Name, and in fact we never used it (we used name instead). The only case where they differ is objc method selectors (foo: vs foo:bar:). We can live with the latter for both name and filterText, so I've made that change too.
Reviewers: ioeric
Subscribers: ilya-biryukov, MaskRay, jkorous, cfe-commits
Differential Revision: https://reviews.llvm.org/D48375
llvm-svn: 335321
show more ...
|
| #
89fcf6b2 |
| 15-Jun-2018 |
Ilya Biryukov <[email protected]> |
[clangd] Do not report comments that only have special chars.
Summary: Like the following: // ------- // ======= // *******
It does not cover all the cases, but those are definitely not very
[clangd] Do not report comments that only have special chars.
Summary: Like the following: // ------- // ======= // *******
It does not cover all the cases, but those are definitely not very useful.
Reviewers: sammccall, ioeric, hokein
Reviewed By: sammccall
Subscribers: MaskRay, jkorous, cfe-commits
Differential Revision: https://reviews.llvm.org/D48171
llvm-svn: 334807
show more ...
|
|
Revision tags: llvmorg-6.0.1, llvmorg-6.0.1-rc3, llvmorg-6.0.1-rc2 |
|
| #
30b04b18 |
| 28-May-2018 |
Ilya Biryukov <[email protected]> |
[clangd] Workaround the comments crash, reenable the test.
This fix is still quite fragile, the underlying problem is that the code should not rely on source ranges coming from the preamble to be co
[clangd] Workaround the comments crash, reenable the test.
This fix is still quite fragile, the underlying problem is that the code should not rely on source ranges coming from the preamble to be correct when reading from the text buffers. This is probably not possible to achieve in practice, so we would probably have to keep the contents of old headers around for the lifetime of the preamble.
llvm-svn: 333369
show more ...
|
| #
be0eb8f4 |
| 24-May-2018 |
Ilya Biryukov <[email protected]> |
[clangd] Serve comments for headers decls from dynamic index only
Summary: To fix a crash in code completion that occurrs when reading doc comments from files that were updated after the preamble wa
[clangd] Serve comments for headers decls from dynamic index only
Summary: To fix a crash in code completion that occurrs when reading doc comments from files that were updated after the preamble was computed. In that case, the files on disk could've been changed and we can't rely on finding the comment text with the same range anymore.
The current workaround is to not provide comments from the headers at all and rely on the dynamic index instead.
A more principled solution would be to store contents of the files read inside the preamble, but it is way harder to implement properly, given that it would definitely increase the sizes of the preamble.
Together with D47272, this should fix all preamble-related crashes we're aware of.
Reviewers: sammccall
Reviewed By: sammccall
Subscribers: klimek, ioeric, MaskRay, jkorous, cfe-commits
Differential Revision: https://reviews.llvm.org/D47274
llvm-svn: 333189
show more ...
|
| #
43714504 |
| 16-May-2018 |
Ilya Biryukov <[email protected]> |
[clangd] Retrieve minimally formatted comment text in completion.
Summary: Previous implementation used to extract brief text from doxygen comments. Brief text parsing slows down completion and is n
[clangd] Retrieve minimally formatted comment text in completion.
Summary: Previous implementation used to extract brief text from doxygen comments. Brief text parsing slows down completion and is not suited for non-doxygen comments.
This commit switches to providing comments that mimic the ones originally written in the source code, doing minimal reindenting and removing the comments markers to make the output more user-friendly.
It means we lose support for doxygen-specific features, e.g. extracting brief text, but provide useful results for non-doxygen comments. Switching the doxygen support back is an option, but I suggest to see whether the current approach gives more useful results.
Reviewers: sammccall, hokein, ioeric
Reviewed By: sammccall
Subscribers: klimek, MaskRay, jkorous, cfe-commits
Differential Revision: https://reviews.llvm.org/D45999
llvm-svn: 332459
show more ...
|
|
Revision tags: llvmorg-6.0.1-rc1, llvmorg-5.0.2, llvmorg-5.0.2-rc2, llvmorg-5.0.2-rc1, llvmorg-6.0.0, llvmorg-6.0.0-rc3, llvmorg-6.0.0-rc2, llvmorg-6.0.0-rc1 |
|
| #
63696e14 |
| 20-Dec-2017 |
Eric Liu <[email protected]> |
[clangd] Pull CodeCompletionString handling logic into its own file and add unit test.
Reviewers: sammccall
Subscribers: klimek, mgorny, ilya-biryukov, cfe-commits
Differential Revision: https://r
[clangd] Pull CodeCompletionString handling logic into its own file and add unit test.
Reviewers: sammccall
Subscribers: klimek, mgorny, ilya-biryukov, cfe-commits
Differential Revision: https://reviews.llvm.org/D41450
llvm-svn: 321193
show more ...
|