Page MenuHomePhabricator

ckandeler (Christian Kandeler)
User

Projects

User does not belong to any projects.

User Details

User Since
May 19 2020, 5:48 AM (133 w, 2 d)

Recent Activity

Tue, Dec 6

ckandeler added a comment to D136594: [clangd] Add support for semantic token type "operator".

For my part, I still need to understand why we want the builtin/UserModified modifier. (The operator highlight kind seems obvious to me).

Tue, Dec 6, 3:39 AM · Restricted Project, Restricted Project

Mon, Dec 5

ckandeler added a comment to D136594: [clangd] Add support for semantic token type "operator".

ping

Mon, Dec 5, 2:23 AM · Restricted Project, Restricted Project

Mon, Nov 28

ckandeler added a comment to D136594: [clangd] Add support for semantic token type "operator".

Now seems to do what we want. Should I switch the modifier around?

Mon, Nov 28, 12:52 AM · Restricted Project, Restricted Project
ckandeler updated the diff for D136594: [clangd] Add support for semantic token type "operator".

Using operators on expressions with dependent types now considered "complex",

Mon, Nov 28, 12:51 AM · Restricted Project, Restricted Project

Fri, Nov 25

ckandeler added inline comments to D136594: [clangd] Add support for semantic token type "operator".
Fri, Nov 25, 5:07 AM · Restricted Project, Restricted Project
ckandeler added a comment to D136594: [clangd] Add support for semantic token type "operator".
Fri, Nov 25, 4:51 AM · Restricted Project, Restricted Project
ckandeler updated the diff for D136594: [clangd] Add support for semantic token type "operator".

Added template example.

Fri, Nov 25, 4:41 AM · Restricted Project, Restricted Project
ckandeler added a comment to D136594: [clangd] Add support for semantic token type "operator".

The current patch will produce an operator token in the operator case but not the declarator case, thereby achieving an effect that client-side highlighting couldn't. As such, I guess it does make sense for this to be a semantic token (i.e. produced even with with augmentsSyntaxTokens=true) even in the built-in case?

Fri, Nov 25, 1:41 AM · Restricted Project, Restricted Project

Tue, Nov 22

ckandeler added a comment to D136594: [clangd] Add support for semantic token type "operator".

Should I perhaps add the augmentsSyntaxTokens option and rebase this patch to make it its first user?

Tue, Nov 22, 6:52 AM · Restricted Project, Restricted Project
ckandeler updated the diff for D136594: [clangd] Add support for semantic token type "operator".

Make highlighting of built-in operators conditional

Tue, Nov 22, 6:49 AM · Restricted Project, Restricted Project

Mon, Nov 21

ckandeler committed rG699a59aa5865: [clangd] Mark "override" and "final" as modifiers (authored by ckandeler).
[clangd] Mark "override" and "final" as modifiers
Mon, Nov 21, 1:01 PM · Restricted Project, Restricted Project
ckandeler closed D137943: [clangd] Mark "override" and "final" as modifiers.
Mon, Nov 21, 1:01 PM · Restricted Project, Restricted Project
ckandeler updated the diff for D137943: [clangd] Mark "override" and "final" as modifiers.

Incorporated review comments.

Mon, Nov 21, 3:29 AM · Restricted Project, Restricted Project
ckandeler added inline comments to D136594: [clangd] Add support for semantic token type "operator".
Mon, Nov 21, 1:52 AM · Restricted Project, Restricted Project
ckandeler added a comment to D136594: [clangd] Add support for semantic token type "operator".

A couple of high-level thoughts on this:

  1. Based on the discussion in https://github.com/clangd/clangd/issues/1115, I believe highlighting of built-in operators should be out of scope for semantic highlighting, at least in the default mode; client-side highlighting should be sufficient for these, similar to strings and literals.
  2. An alternative to assigning (user-provided) operators a new token kind would be to assign them the same token kind as the entity they invoke (i.e. function or method). Both approaches have their advantages:
    • If we use the function/method kinds, then uses of user-provided operators will be highlighted differently from built-in operators even when using a default / standard theme that doesn't know about clangd-specific token types.
    • If we use a dedicated operator kind, users can configure different styles for operators vs. function/methods (and they may want different styles given that syntactically the two look quite different).

      One way to get the best of both worlds could be to use the function/method kinds in combination with an operator modifier. That would color overloaded operators out of the box while also allowing users to customize the style based on the presence of the modifier. What do you think about this approach?
Mon, Nov 21, 12:37 AM · Restricted Project, Restricted Project

Mon, Nov 14

ckandeler requested review of D137943: [clangd] Mark "override" and "final" as modifiers.
Mon, Nov 14, 6:18 AM · Restricted Project, Restricted Project

Nov 7 2022

ckandeler committed rG2bf960aef08e: [clangd] Add "usedAsMutablePointer" highlighting modifier (authored by ckandeler).
[clangd] Add "usedAsMutablePointer" highlighting modifier
Nov 7 2022, 2:58 AM · Restricted Project, Restricted Project
ckandeler closed D130015: [clangd] Add "usedAsMutablePointer" highlighting modifier.
Nov 7 2022, 2:58 AM · Restricted Project, Restricted Project
ckandeler updated the diff for D130015: [clangd] Add "usedAsMutablePointer" highlighting modifier.

Rebased and updated comment as indicated in review.

Nov 7 2022, 2:05 AM · Restricted Project, Restricted Project
ckandeler added inline comments to D130015: [clangd] Add "usedAsMutablePointer" highlighting modifier.
Nov 7 2022, 1:39 AM · Restricted Project, Restricted Project

Oct 24 2022

ckandeler requested review of D136594: [clangd] Add support for semantic token type "operator".
Oct 24 2022, 5:53 AM · Restricted Project, Restricted Project

Oct 22 2022

ckandeler committed rG6ed4a543b8b3: [clangd] Make file limit for textDocument/rename configurable (authored by ckandeler).
[clangd] Make file limit for textDocument/rename configurable
Oct 22 2022, 1:18 AM · Restricted Project, Restricted Project
ckandeler closed D136454: [clangd] Make file limit for textDocument/rename configurable.
Oct 22 2022, 1:17 AM · Restricted Project, Restricted Project

Oct 21 2022

ckandeler requested review of D136454: [clangd] Make file limit for textDocument/rename configurable.
Oct 21 2022, 7:34 AM · Restricted Project, Restricted Project
ckandeler committed rG8b3668754c88: [clangd] Add highlighting modifier "constructorOrDestructor" (authored by ckandeler).
[clangd] Add highlighting modifier "constructorOrDestructor"
Oct 21 2022, 6:15 AM · Restricted Project, Restricted Project
ckandeler closed D134728: [clangd] Add highlighting modifier "constructorOrDestructor".
Oct 21 2022, 6:14 AM · Restricted Project, Restricted Project

Oct 18 2022

ckandeler updated the diff for D134728: [clangd] Add highlighting modifier "constructorOrDestructor".

Now uses just one modifier instead of two, as discussed.

Oct 18 2022, 2:53 AM · Restricted Project, Restricted Project
ckandeler added a comment to D127403: [clangd] Implement semantic token modifier "definition".

Fixed in https://reviews.llvm.org/rGd5a99bf5e134, and confirmed via a local build and test run that the tests are passing. Apologies for the breakage.

Oct 18 2022, 12:31 AM · Restricted Project, Restricted Project

Oct 17 2022

ckandeler added a comment to D127403: [clangd] Implement semantic token modifier "definition".

Could you please land it for me? I don't have the privileges. (How does one attain those, by the way?)

Oct 17 2022, 2:58 AM · Restricted Project, Restricted Project
ckandeler added a comment to D127403: [clangd] Implement semantic token modifier "definition".

Everything good now?

Oct 17 2022, 2:04 AM · Restricted Project, Restricted Project

Oct 11 2022

ckandeler updated the diff for D127403: [clangd] Implement semantic token modifier "definition".

Template parameters are definitions

Oct 11 2022, 1:48 AM · Restricted Project, Restricted Project

Oct 10 2022

ckandeler requested review of D127403: [clangd] Implement semantic token modifier "definition".
Oct 10 2022, 8:17 AM · Restricted Project, Restricted Project
ckandeler updated the diff for D127403: [clangd] Implement semantic token modifier "definition".

Use modifier also for parameters,

Oct 10 2022, 8:15 AM · Restricted Project, Restricted Project
ckandeler added a comment to D127403: [clangd] Implement semantic token modifier "definition".

So, is this okay to merge now?

Oct 10 2022, 3:27 AM · Restricted Project, Restricted Project

Sep 30 2022

ckandeler added inline comments to D127403: [clangd] Implement semantic token modifier "definition".
Sep 30 2022, 12:56 AM · Restricted Project, Restricted Project
ckandeler updated the diff for D127403: [clangd] Implement semantic token modifier "definition".

Adapted according to latest comments.

Sep 30 2022, 12:55 AM · Restricted Project, Restricted Project

Sep 29 2022

ckandeler added a comment to D134728: [clangd] Add highlighting modifier "constructorOrDestructor".

If the distinction isn't important, maybe we should add a single "constructor or destructor" modifier...

Sep 29 2022, 12:55 AM · Restricted Project, Restricted Project

Sep 28 2022

ckandeler added a comment to D134728: [clangd] Add highlighting modifier "constructorOrDestructor".

It doesn't scale very well though: we're limited to 30 modifiers in total, this patch brings us up to 16, if we followed this class.constructor precedent for function.operator, class.constructor.copy enum.scoped etc we could end up exhausting this.

Sep 28 2022, 11:25 PM · Restricted Project, Restricted Project

Sep 27 2022

ckandeler requested review of D134728: [clangd] Add highlighting modifier "constructorOrDestructor".
Sep 27 2022, 4:34 AM · Restricted Project, Restricted Project

Sep 12 2022

ckandeler added inline comments to D127403: [clangd] Implement semantic token modifier "definition".
Sep 12 2022, 2:14 AM · Restricted Project, Restricted Project

Aug 22 2022

ckandeler added a reviewer for D127403: [clangd] Implement semantic token modifier "definition": dgoldman.
Aug 22 2022, 5:40 AM · Restricted Project, Restricted Project

Aug 18 2022

ckandeler added a comment to D131175: [clangd] Use the "macro" semantic token for pre-defined identifiers.

By the way: How do I change the commit message when using arc? It seems to ignore all subsequent changes other than in the code itself, and now the patch is in the repo with a misleading commit message.

Aug 18 2022, 8:10 AM · Restricted Project, Restricted Project
ckandeler accepted D132135: [clangd] Support hover on __func__ etc (PredefinedExpr).

Works fine for me.

Aug 18 2022, 8:05 AM · Restricted Project, Restricted Project
ckandeler added a comment to D131175: [clangd] Use the "macro" semantic token for pre-defined identifiers.

Thanks for the review. Can you please merge it?

Aug 18 2022, 7:10 AM · Restricted Project, Restricted Project
ckandeler updated the diff for D131175: [clangd] Use the "macro" semantic token for pre-defined identifiers.

Use variable instead of macro.

Aug 18 2022, 6:45 AM · Restricted Project, Restricted Project
ckandeler added inline comments to D131175: [clangd] Use the "macro" semantic token for pre-defined identifiers.
Aug 18 2022, 5:54 AM · Restricted Project, Restricted Project

Aug 15 2022

ckandeler added a comment to D127403: [clangd] Implement semantic token modifier "definition".

ping

Aug 15 2022, 3:15 AM · Restricted Project, Restricted Project

Aug 10 2022

ckandeler added inline comments to D130015: [clangd] Add "usedAsMutablePointer" highlighting modifier.
Aug 10 2022, 4:54 AM · Restricted Project, Restricted Project
ckandeler updated the diff for D130015: [clangd] Add "usedAsMutablePointer" highlighting modifier.

Fixed style issues.

Aug 10 2022, 4:54 AM · Restricted Project, Restricted Project

Aug 5 2022

ckandeler added a comment to D130015: [clangd] Add "usedAsMutablePointer" highlighting modifier.

IMO the relevant point is the (non-)const-ness of the corresponding parameter, i.e. can the passed object get mutated or not. The fact that there's an ampersand at the call site (which is not even the case if the variable is itself a pointer) does not tell me that.

Aug 5 2022, 2:08 AM · Restricted Project, Restricted Project

Aug 4 2022

ckandeler requested review of D131175: [clangd] Use the "macro" semantic token for pre-defined identifiers.
Aug 4 2022, 8:57 AM · Restricted Project, Restricted Project
ckandeler added a comment to D130015: [clangd] Add "usedAsMutablePointer" highlighting modifier.

ping?

Aug 4 2022, 2:06 AM · Restricted Project, Restricted Project

Aug 2 2022

ckandeler added reviewers for D127403: [clangd] Implement semantic token modifier "definition": nridge, kadircet.
Aug 2 2022, 1:43 AM · Restricted Project, Restricted Project

Jul 29 2022

ckandeler updated the diff for D127403: [clangd] Implement semantic token modifier "definition".

Addressed remaining Objective-C issues

Jul 29 2022, 9:11 AM · Restricted Project, Restricted Project
ckandeler added a reviewer for D130015: [clangd] Add "usedAsMutablePointer" highlighting modifier: kadircet.
Jul 29 2022, 7:30 AM · Restricted Project, Restricted Project

Jul 22 2022

ckandeler added a reviewer for D130015: [clangd] Add "usedAsMutablePointer" highlighting modifier: nridge.
Jul 22 2022, 8:02 AM · Restricted Project, Restricted Project

Jul 18 2022

ckandeler added a reviewer for D130015: [clangd] Add "usedAsMutablePointer" highlighting modifier: sammccall.
Jul 18 2022, 9:12 AM · Restricted Project, Restricted Project
ckandeler requested review of D130015: [clangd] Add "usedAsMutablePointer" highlighting modifier.
Jul 18 2022, 8:06 AM · Restricted Project, Restricted Project

Jul 8 2022

ckandeler added a comment to D128977: [clangd] Support "usedAsMutableReference" in member initializations.

Yes, I plan to. I'm just building it locally to verify the tests are passing. (And sometimes, for reasons I don't understand, LLVM's build system triggers a full rebuild even though I've only applied a patch that touches a couple of files...)

Jul 8 2022, 1:53 AM · Restricted Project, Restricted Project
ckandeler added a comment to D128977: [clangd] Support "usedAsMutableReference" in member initializations.

Can you please merge it as well?

Jul 8 2022, 1:49 AM · Restricted Project, Restricted Project

Jul 7 2022

ckandeler added a comment to D128977: [clangd] Support "usedAsMutableReference" in member initializations.

Note that the build failure seems unrelated, as it's due to a failing clang-tidy test.

Jul 7 2022, 8:24 AM · Restricted Project, Restricted Project

Jul 5 2022

ckandeler added inline comments to D128977: [clangd] Support "usedAsMutableReference" in member initializations.
Jul 5 2022, 4:20 AM · Restricted Project, Restricted Project
ckandeler updated the diff for D128977: [clangd] Support "usedAsMutableReference" in member initializations.

Implemented reviewer suggestions.

Jul 5 2022, 4:20 AM · Restricted Project, Restricted Project

Jul 4 2022

ckandeler added a reviewer for D128977: [clangd] Support "usedAsMutableReference" in member initializations: nridge.
Jul 4 2022, 3:40 AM · Restricted Project, Restricted Project

Jul 1 2022

ckandeler requested review of D128977: [clangd] Support "usedAsMutableReference" in member initializations.
Jul 1 2022, 2:47 AM · Restricted Project, Restricted Project

Jun 30 2022

ckandeler added a reviewer for D128892: [clangd] Also mark output arguments of array subscript expressions: nridge.
Jun 30 2022, 2:08 AM · Restricted Project, Restricted Project
ckandeler requested review of D128892: [clangd] Also mark output arguments of array subscript expressions.
Jun 30 2022, 1:41 AM · Restricted Project, Restricted Project

Jun 29 2022

ckandeler added a comment to D128329: [clangd] Also mark output arguments of operator call expressions.

I'm going to take the liberty of approving this, as it seems straightforward and unlikely to be contentious in any way.

Jun 29 2022, 2:05 AM · Restricted Project, Restricted Project

Jun 28 2022

ckandeler updated the diff for D128329: [clangd] Also mark output arguments of operator call expressions.

Improvements as per review comments.

Jun 28 2022, 9:09 AM · Restricted Project, Restricted Project

Jun 22 2022

ckandeler added a reviewer for D128329: [clangd] Also mark output arguments of operator call expressions: sammccall.
Jun 22 2022, 3:01 AM · Restricted Project, Restricted Project
ckandeler requested review of D128329: [clangd] Also mark output arguments of operator call expressions.
Jun 22 2022, 1:53 AM · Restricted Project, Restricted Project

Jun 14 2022

ckandeler updated the diff for D127403: [clangd] Implement semantic token modifier "definition".

Objective-C improvements.

Jun 14 2022, 12:21 AM · Restricted Project, Restricted Project

Jun 12 2022

ckandeler added inline comments to D127403: [clangd] Implement semantic token modifier "definition".
Jun 12 2022, 11:53 PM · Restricted Project, Restricted Project

Jun 9 2022

ckandeler added a reviewer for D127403: [clangd] Implement semantic token modifier "definition": sammccall.
Jun 9 2022, 8:56 AM · Restricted Project, Restricted Project
ckandeler updated the diff for D127403: [clangd] Implement semantic token modifier "definition".

Addressed clang-format complaints.

Jun 9 2022, 8:24 AM · Restricted Project, Restricted Project
ckandeler updated the diff for D127403: [clangd] Implement semantic token modifier "definition".

Indentation.

Jun 9 2022, 7:40 AM · Restricted Project, Restricted Project
ckandeler requested review of D127403: [clangd] Implement semantic token modifier "definition".
Jun 9 2022, 7:38 AM · Restricted Project, Restricted Project
ckandeler added a comment to D127397: [pseudo] Fix unit test build.

Can you please merge it? I don't have the rights.

Jun 9 2022, 5:23 AM · Restricted Project, Restricted Project
ckandeler requested review of D127397: [pseudo] Fix unit test build.
Jun 9 2022, 4:50 AM · Restricted Project, Restricted Project
ckandeler added a comment to D127217: [include-cleaner] Fix build error in unit test.

Can you please merge it? I don't have the rights.

Jun 9 2022, 12:36 AM · Restricted Project, Restricted Project

Jun 8 2022

ckandeler added a reviewer for D127217: [include-cleaner] Fix build error in unit test: nridge.
Jun 8 2022, 7:54 AM · Restricted Project, Restricted Project

Jun 7 2022

ckandeler requested review of D127217: [include-cleaner] Fix build error in unit test.
Jun 7 2022, 7:30 AM · Restricted Project, Restricted Project

Feb 7 2022

ckandeler added a comment to D118976: clangd: Set a diagnostic on a code action resulting from a tweak.

It'd be great if you could merge this, as I don't have the necessary privileges.

Feb 7 2022, 5:00 AM · Restricted Project
ckandeler updated the diff for D118976: clangd: Set a diagnostic on a code action resulting from a tweak.

Fixed Lint complaints

Feb 7 2022, 2:11 AM · Restricted Project

Feb 4 2022

ckandeler abandoned D118782: clangd: Add a break for every case in the PopulateSwitch tweak.

Fair enough.

Feb 4 2022, 5:56 AM · Restricted Project
ckandeler updated the diff for D118976: clangd: Set a diagnostic on a code action resulting from a tweak.

Simplified code.

Feb 4 2022, 5:13 AM · Restricted Project
ckandeler added inline comments to D118976: clangd: Set a diagnostic on a code action resulting from a tweak.
Feb 4 2022, 3:20 AM · Restricted Project
ckandeler updated the diff for D118976: clangd: Set a diagnostic on a code action resulting from a tweak.

Formatting & logic.

Feb 4 2022, 3:19 AM · Restricted Project
ckandeler added a comment to D118976: clangd: Set a diagnostic on a code action resulting from a tweak.

This is assuming a semantic connection that we don't know exists.
Without any more specific reason to draw this connection, this seems like a heuristic that could equally be applied by the client.

Feb 4 2022, 2:33 AM · Restricted Project
ckandeler updated the diff for D118782: clangd: Add a break for every case in the PopulateSwitch tweak.

Improved code as per review comment.

Feb 4 2022, 1:54 AM · Restricted Project
ckandeler requested review of D118976: clangd: Set a diagnostic on a code action resulting from a tweak.
Feb 4 2022, 1:43 AM · Restricted Project

Feb 2 2022

ckandeler updated the diff for D118782: clangd: Add a break for every case in the PopulateSwitch tweak.

Fixed unintentional whitespace change.

Feb 2 2022, 5:57 AM · Restricted Project
ckandeler requested review of D118782: clangd: Add a break for every case in the PopulateSwitch tweak.
Feb 2 2022, 5:55 AM · Restricted Project

Nov 9 2021

ckandeler updated the diff for D112996: [CodeCompletion] Generally consider header files without extension.

Added test cases.

Nov 9 2021, 7:54 AM · Restricted Project
ckandeler added a comment to D112996: [CodeCompletion] Generally consider header files without extension.

Can someone please merge this?

Nov 9 2021, 1:09 AM · Restricted Project

Nov 8 2021

ckandeler updated the diff for D112996: [CodeCompletion] Generally consider header files without extension.

Addressed formatting comments.

Nov 8 2021, 4:25 AM · Restricted Project

Nov 3 2021

ckandeler added a comment to D112996: [CodeCompletion] Generally consider header files without extension.

can we the tests again though?

Nov 3 2021, 9:19 AM · Restricted Project
ckandeler added inline comments to D112996: [CodeCompletion] Generally consider header files without extension.
Nov 3 2021, 9:19 AM · Restricted Project
ckandeler updated the diff for D112996: [CodeCompletion] Generally consider header files without extension.

Addressed comments.

Nov 3 2021, 9:09 AM · Restricted Project
ckandeler added a comment to D112996: [CodeCompletion] Generally consider header files without extension.

For framework builds, the directory would be "Headers", which also seems safe.

I agree extensionless headers in frameworks seem fine to show.
We already know which includepath entries are frameworks, so we can just use that info directly (see line 9674)

Nov 3 2021, 5:45 AM · Restricted Project