#
462def25 |
| 15-Jun-2022 |
Furkan Usta <furkanusta17@gmail.com> |
[clang] Use correct visibility parameters when following a Using declaration
Fixes https://github.com/clangd/clangd/issues/1137
Reviewed By: kadircet
Differential Revision: https://reviews.llvm.or
[clang] Use correct visibility parameters when following a Using declaration
Fixes https://github.com/clangd/clangd/issues/1137
Reviewed By: kadircet
Differential Revision: https://reviews.llvm.org/D127629
show more ...
|
#
ee852408 |
| 19-May-2022 |
Alex Lorenz <arphaman@gmail.com> |
[libclang] add supporting for indexing/visiting C++ concepts
This commit builds upon recently added indexing support for C++ concepts from https://reviews.llvm.org/D124441 by extending libclang to s
[libclang] add supporting for indexing/visiting C++ concepts
This commit builds upon recently added indexing support for C++ concepts from https://reviews.llvm.org/D124441 by extending libclang to support indexing and visiting concepts, constraints and requires expressions as well.
Differential Revision: https://reviews.llvm.org/D126031
show more ...
|
#
7fde4e22 |
| 16-Apr-2022 |
Jun Zhang <jun@junz.org> |
Add some helpers to better check Scope's kind. NFC
Signed-off-by: Jun Zhang <jun@junz.org>
|
#
0b09b5d4 |
| 15-Apr-2022 |
Jan Svoboda <jan_svoboda@apple.com> |
[clang][lex] NFC: Use FileEntryRef in PreprocessorLexer::getFileEntry()
This patch changes the return type of `PreprocessorLexer::getFileEntry()` so that its clients may stop using the deprecated AP
[clang][lex] NFC: Use FileEntryRef in PreprocessorLexer::getFileEntry()
This patch changes the return type of `PreprocessorLexer::getFileEntry()` so that its clients may stop using the deprecated APIs of `FileEntry`.
Reviewed By: bnbarham
Differential Revision: https://reviews.llvm.org/D123772
show more ...
|
#
5d2ce766 |
| 18-Mar-2022 |
Benjamin Kramer <benny.kra@googlemail.com> |
Use llvm::append_range instead of push_back loops where applicable. NFCI.
|
#
ef865d16 |
| 17-Mar-2022 |
Simon Pilgrim <llvm-dev@redking.me.uk> |
[clang] AddObjCKeyValueCompletions - use castAs<> instead of getAs<> to avoid dereference of nullptr
The pointers are always dereferenced, so assert the cast is correct instead of returning nullptr
|
#
1e645900 |
| 11-Feb-2022 |
Simon Pilgrim <llvm-dev@redking.me.uk> |
[clang][sema] - remove CodeCompleter nullptr checks
All paths have already dereferenced the CodeCompleter pointer in the ResultBuilder constructor
|
#
33c3ef2f |
| 30-Dec-2021 |
Sam McCall <sam.mccall@gmail.com> |
[CodeCompletion][clangd] Clean __uglified parameter names in completion & hover
Underscore-uglified identifiers are used in standard library implementations to guard against collisions with macros,
[CodeCompletion][clangd] Clean __uglified parameter names in completion & hover
Underscore-uglified identifiers are used in standard library implementations to guard against collisions with macros, and they hurt readability considerably. (Consider `push_back(Tp_ &&__value)` vs `push_back(Tp value)`. When we're describing an interface, the exact names of parameters are not critical so we can drop these prefixes.
This patch adds a new PrintingPolicy flag that can applies this stripping when recursively printing pieces of AST. We set it in code completion/signature help, and in clangd's hover display. All three features also do a bit of manual poking at names, so fix up those too.
Fixes https://github.com/clangd/clangd/issues/736
Differential Revision: https://reviews.llvm.org/D116387
show more ...
|
#
653b007d |
| 21-Jan-2022 |
Sam McCall <sam.mccall@gmail.com> |
[CodeComplete] fix nullptr crash in 612f5ed8823120
|
#
612f5ed8 |
| 11-Jan-2022 |
Kadir Cetinkaya <kadircet@google.com> |
[clang][CodeComplete] Perform approximate member search in bases
Differential Revision: https://reviews.llvm.org/D117037
|
#
bbf234b5 |
| 06-Jan-2022 |
Sam McCall <sam.mccall@gmail.com> |
[CodeCompletion] Complete designators for fields in anonymous structs/unions
Fixes https://github.com/clangd/clangd/issues/836
Differential Revision: https://reviews.llvm.org/D116717
|
#
40446663 |
| 09-Jan-2022 |
Kazu Hirata <kazu@google.com> |
[clang] Use true/false instead of 1/0 (NFC)
Identified with modernize-use-bool-literals.
|
#
229c95ab |
| 28-Dec-2021 |
Sam McCall <sam.mccall@gmail.com> |
[CodeCompletion] Signature help for aggregate initialization.
The "parameter list" is the list of fields which should be initialized. We introduce a new OverloadCandidate kind for this. It starts to
[CodeCompletion] Signature help for aggregate initialization.
The "parameter list" is the list of fields which should be initialized. We introduce a new OverloadCandidate kind for this. It starts to become harder for CC consumers to handle all the cases for params, so I added some extra APIs on OverloadCandidate to abstract them.
Includes some basic support for designated initializers. The same aggregate signature is shown, the current arg jumps after the one you just initialized. This follows C99 semantics for mixed designated/positional initializers (which clang supports in C++ as an extension) and is also a useful prompt for C++ as C++ designated initializers must be in order.
Related bugs: - https://github.com/clangd/clangd/issues/965 - https://github.com/clangd/clangd/issues/306
Differential Revision: https://reviews.llvm.org/D116326
show more ...
|
#
2a92efd0 |
| 04-Jan-2022 |
Sam McCall <sam.mccall@gmail.com> |
[CodeComplete] drop unused Scope param. NFC
|
#
db77f7a0 |
| 03-Jan-2022 |
Aaron Ballman <aaron@aaronballman.com> |
Silence a "not all control paths return a value" warning; NFC
|
#
92417eaf |
| 27-Dec-2021 |
Sam McCall <sam.mccall@gmail.com> |
[CodeCompletion] Signature help for braced constructor calls
Implementation is based on the "expected type" as used for designated-initializers in braced init lists. This means it can deduce the typ
[CodeCompletion] Signature help for braced constructor calls
Implementation is based on the "expected type" as used for designated-initializers in braced init lists. This means it can deduce the type in some cases where it's not written:
void foo(Widget); foo({ /*help here*/ });
Only basic constructor calls are in scope of this patch, excluded are: - aggregate initialization (no help is offered for aggregates) - initializer_list initialization (no help is offered for these constructors)
Fixes https://github.com/clangd/clangd/issues/306
Differential Revision: https://reviews.llvm.org/D116317
show more ...
|
#
cd45e8c7 |
| 29-Dec-2021 |
Sam McCall <sam.mccall@gmail.com> |
[CodeCompletion] Signature help for template argument lists
Provide signature while typing template arguments: Foo< ^here > Here the parameters are e.g. "typename x", and the result type is e.g. "st
[CodeCompletion] Signature help for template argument lists
Provide signature while typing template arguments: Foo< ^here > Here the parameters are e.g. "typename x", and the result type is e.g. "struct" (class template) or "int" (variable template) or "bool (std::string)" (function template).
Multiple overloads are possible when a template name is used for several overloaded function templates.
Fixes https://github.com/clangd/clangd/issues/299
Differential Revision: https://reviews.llvm.org/D116352
show more ...
|
#
d677a7cb |
| 02-Jan-2022 |
Kazu Hirata <kazu@google.com> |
[clang] Remove redundant member initialization (NFC)
Identified with readability-redundant-member-init.
|
#
2d303e67 |
| 25-Dec-2021 |
Kazu Hirata <kazu@google.com> |
Remove redundant return and continue statements (NFC)
Identified with readability-redundant-control-flow.
|
#
55a79318 |
| 06-Oct-2021 |
Adam Czachorowski <adamcz@google.com> |
[clang][clangd] Improve signature help for variadic functions.
This covers both C-style variadic functions and template variadic w/ parameter packs.
Previously we would return no signatures when wo
[clang][clangd] Improve signature help for variadic functions.
This covers both C-style variadic functions and template variadic w/ parameter packs.
Previously we would return no signatures when working with template variadic functions once activeParameter reached the position of the parameter pack (except when it was the only param, then we'd still show it when no arguments were given). With this commit, we now show signathure help correctly.
Additionally, this commit fixes the activeParameter value in LSP output of clangd in the presence of variadic functions (both kinds). LSP does not allow the activeParamter to be higher than the number of parameters in the active signature. With "..." or parameter pack being just one argument, for all but first argument passed to "..." we'd report incorrect activeParameter value. Clients such as VSCode would then treat it as 0, as suggested in the spec) and highlight the wrong parameter.
In the future, we should add support for per-signature activeParamter value, which exists in LSP since 3.16.0. This is not part of this commit.
Differential Revision: https://reviews.llvm.org/D111318
show more ...
|
#
f7500a4e |
| 09-Nov-2021 |
Christian Kandeler <christian.kandeler@qt.io> |
[CodeCompletion] Generally consider header files without extension
Real-world use case: The Qt framework's headers have the same name as the respective class defined in them, and Qt's traditional qm
[CodeCompletion] Generally consider header files without extension
Real-world use case: The Qt framework's headers have the same name as the respective class defined in them, and Qt's traditional qmake build tool uses -I (rather than -isystem) to pull them in.
Reviewed By: sammccall
Differential Revision: https://reviews.llvm.org/D112996
show more ...
|
#
7063b76b |
| 06-Oct-2021 |
Richard Smith <richard@metafoo.co.uk> |
PR50644: Do not warn on a declaration of `operator"" _foo`.
Also do not warn on `#define _foo` or `#undef _foo`.
Only global scope names starting with _[a-z] are reserved, not the use of such an id
PR50644: Do not warn on a declaration of `operator"" _foo`.
Also do not warn on `#define _foo` or `#undef _foo`.
Only global scope names starting with _[a-z] are reserved, not the use of such an identifier in any other context.
show more ...
|
Revision tags: llvmorg-13.0.0, llvmorg-13.0.0-rc4 |
|
#
bde305ba |
| 20-Sep-2021 |
Nico Weber <thakis@chromium.org> |
[clang] Fix a few comment more typos to cycle bots
|
Revision tags: llvmorg-13.0.0-rc3, llvmorg-13.0.0-rc2 |
|
#
cab7c52a |
| 13-Aug-2021 |
Sam McCall <sam.mccall@gmail.com> |
[CodeCompletion] Provide placeholders for known attribute arguments
Completion now looks more like function/member completion:
used alias(Aliasee) abi_tag(Tags...)
Differential Revision: htt
[CodeCompletion] Provide placeholders for known attribute arguments
Completion now looks more like function/member completion:
used alias(Aliasee) abi_tag(Tags...)
Differential Revision: https://reviews.llvm.org/D108109
show more ...
|
#
a1ebae08 |
| 16-Aug-2021 |
Sam McCall <sam.mccall@gmail.com> |
[CodeComplete] Only complete attributes that match the current LangOpts
Differential Revision: https://reviews.llvm.org/D108111
|