On 9/18/25 10:18 PM, Steven Schveighoffer wrote:
> On Thursday, 18 September 2025 at 18:10:13 UTC, Ali Çehreli wrote:

>>     // Not a delegate:
>>     static assert(is (typeof(twice) == function));

> You are mistaking the is expression for a function test with the
> function pointer type.

I disagree because it is impossible to mistake much from the documentation of the is expression:

  https://dlang.org/spec/expression.html#is_expression

I stress strongly that there is not enough information there to take anything incorrectly. The reader has to construct a consistent mental model from that documentation. I did and my mental model is intact.

I did test with 'function' against 'delegate' and it worked as I still understand it. For the example I wrote, 'is' expression succeeds for 'function' but not for 'delegate' if the nested function makes use of local scope.

Ali

Reply via email to