https://github.com/zyn0217 commented:

My two cents:

While I appreciate the value of inspecting more semantic information about 
lambdas, I still have mixed feelings about user experience.

Admittedly, presenting implicitly captured variables provides users with 
insight into ODR-used variables, but I'm unsure about our strategy: We would 
probably end up showing too many hints inside the lambda capture, which would 
visually elongate the lambda header and distract users from reading.

Indeed, we have a configuration entry to restrict the length, but I feel that's 
insufficient (Although we're baking it with TypeNameLimit currently, which is 
also inappropriate). For example, a user might have a lambda capturing several 
variables named in single letters e.g. a-z. As a result, we probably eventually 
display `[&: a, b, c, d, e, f, g, ...](...)`, which is IMO too spammy.

That said, I wonder if we can implement the capture stuff in hovers instead. 
>From what I can think of, we present something e.g.
```cpp
// implicitly captured by reference/copy:
int a;
std::string s;
...
```
when user hovers over the capture defaults.

(I don't have a strong opinion on the hints for default arguments. It would 
also be great to hear @HighCommander4 and @kadircet's input.)

https://github.com/llvm/llvm-project/pull/95712
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to