cor3ntin wrote:

> My patch needs modification so that use of `is_constant_evaluated` and 
> consteval-if NOT considered tautologically-true when they happen 
> `InConditionallyConstantEvaluateContext`, which is a few lines of change.

Hum, maybe to do that we need to set ahead of time whether we support VLAs or 
not because if we don't then it's not tautological... But if we do that then 
whether we get tautological warnings depend on the value of `Wvla` , which is 
interesting. At the same time, if user disable vla support they ought to have 
well behaving arrays so maybe that's our best option

> I was mostly thinking about cases where the array-bound expression appears 
> inside immediate function context.

I'll add a test. immediate contexts are recursive, constant evaluated contexts 
are not, i don't think there is a case where you would get an additional 
evaluation context that is not for a full expression, and if you have a full 
expression you do expect the immediate invocation to be called anyway - eg, 
lambda case.

http://eel.is/c++draft/expr#const-19


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

Reply via email to