efriedma-quic wrote:

I suspect the handling for non-call-operator methods on lambdas isn't what we 
want.

Defaulted special member functions are automatically immediate-escalating.  
That implicitly everything except the lambdas's conversion operator, I think.  
Probably the conversion operator should also be immediate-escalating.  (I think 
this is a gap in the standard: the standard says the function F is immediate if 
the call operator is immediate, but it doesn't mention anything about the 
conversion operator itself.)

Example:

```
auto a = []consteval{return 3;};
constexpr auto b = (+a)();
```

https://github.com/llvm/llvm-project/pull/232458
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to