https://issues.dlang.org/show_bug.cgi?id=21862
--- Comment #4 from Eyal <e...@weka.io> --- The type of a delegate's "funcptr" should either be a "void*" or a new kind of non-callable "ret delegatefuncptr(args)" type. That will allow everything correct to happen while making the incorrectly typed programs at least take some effort. If changing the funcptr type to void* causes problems - those are better problems to have/solve than this problem. --