On Wednesday, 11 November 2020 at 01:05:21 UTC, SealabJaster wrote:
Please see the code at https://run.dlang.io/is/Yjidek

As I understand the error is caused by trying to provide a delegate when there's no context to provide. Not complaining about that.

However what I am complaining about is about the error message: `onlineapp.d(31): Error: delegate onlineapp.S.__lambda2 cannot be struct members`

I'm not sure if it's just me, but that error message makes absolutely no sense to me. Should that message be improved?

Yeah, that message is really bad. The actual problem is that the compiler isn't able to figure out the type of the lambda you've provided. If you change the argument to `(string str)`, it'll work.

The real question is, why does type inference fail for the UDA when it works for the normal constructor call?

Reply via email to