fix calling with cdecl calling convention