On Wednesday, 11 February 2015 at 22:24:53 UTC, anonymous wrote:
On Wednesday, 11 February 2015 at 22:14:44 UTC, MrSmith wrote:
http://dpaste.dzfl.pl/5f1d5d5d9e19

Instead I need to use template constraint which is less compact.
http://dpaste.dzfl.pl/571ae84d783e

Why such behavior happens?

Seems to work when you add an empty template argument list to `accepter()`, making it `accepter!()()`: http://dpaste.dzfl.pl/2ec186453907

So, compiler bug, I guess? The error message says it tried "!()()", but explicit "!()()" actually works. And the empty template argument list should be optional anyway.

It would be a compiler bug. As far as I know, accepter() and accepter!()() has no difference in IFTI.

I filed the issue in bugzilla.
https://issues.dlang.org/show_bug.cgi?id=14174

Kenji Hara

Reply via email to