Mike Parker <[email protected]> wrote:
For starters, your first delegate is declared in an extern(C) block,
meaning it has C linkage. The second is declared outside of the block,
meaning it has D linkage. So they are two different types of delegates.
If this is correct, the problem should be fixable by writing
extern(C) void d_foo_add_event_handler(Foo, void delegate());
or (not entirely sure about this one)
alias void delegate() voidDelegate;
extern(C) {
void d_foo_add_event_handler(Foo, voidDelegate);
}
--
Simen