Am 10.10.2013 16:13, schrieb Namespace:
I have this function:
----
void foo(T)(void function(T*) test) { }
----
And want to call it with a C function:
----
foo!(SDL_Surface)(SDL_FreeSurface);
----
but I get:
Fehler 1 Error: foo (void function(SDL_Surface*) test) is not
callable using argument types (extern (C) void function(SDL_Surface*)
nothrow)
What would be the smartest solution?
If you can change the signature of foo just add a extern(c) to the
function pointer declaration.
Otherwise just wrap the SDL_FreeSurface call into a delegate on the
caller side.
--
Kind Regards
Benjamin Thaut