Version française
Home     About     Download     Resources     Contact us    
Browse thread
[Caml-list] Binding C libraries which use variable arguments (stdarg.h)
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Florian Weimer <fw@d...>
Subject: Re: [Caml-list] Binding C libraries which use variable arguments (stdarg.h)
* Adrien:

> On 01/11/2009, Florian Weimer <fw@deneb.enyo.de> wrote:
>> * Adrien:
>>
>>> It turned out it worked on linux x86_32, linux x86_64, netbsd sparc64
>>> with 32-bit userland, debian's kfreebsd amd64 and ppc32. There's
>>> windows which I haven't checked yet though.
>>
>> x86_64 has different calling conventions for varargs and non-varargs
>> functions.  If it works for you, it's only by accident (e.g. because
>> you aren't passing floating-point arguments).
>>
>
> I tried a few things with "double" at first since I'm on x86_64 and
> got no warning and no problem whatsoever.

Could you check if libffi sets the %rax register to the number of
floating-point arguments?  (I've seen this working by mere chance in
many cases.)