Reason of OpenAL uses ccall, even on WinDoze ....

Duncan Coutts duncan.coutts at
Sat Oct 22 11:24:31 EDT 2005

On Sat, 2005-10-22 at 16:40 +0200, Sven Panne wrote:

> I am not sure if we are talking about the same problem here: As I've recently 
> noticed to my surprise, the API entries in openal32.dll use the _cdecl 
> calling convention! AFAIK this is very unusual for a WinDoze DLL, so the 
> above commit makes sure that the Haskell binding always uses ccall, even on 
> WinDoze.
> I've raised this issue on the OpenAL developer's list and asked for the 
> rationale behind this, but got no real answer:
> My personal guess is that this just happened by accident. :-)

I thought it was rather the other way around. I was under the impression
that most Win32 DLLs use the ccall calling convention and that it was
only the windows system dlls that use the stdcall convention.

I know that the Gtk+ dlls use ccall on win32. Furthermore they can be
used from programs compiled with MSVC; that is they follow the MSVC ABI
(including the MSVC bitfield packing convention).


More information about the Libraries mailing list