While linking against an library using libffi for structure support, I receive the following error
Error creating CIF for FOO::BAR: :BAD-ABI
I traced this down to ffitarget.h and ffiw64.c in libffi and found the issue to be an incorrect value for autowrap.libffi:+ffi-default-abi+. This is an enum and the libffi spec files specify its value incorrectly as 2.
The issue is that the generated spec files do not properly #define the flags used by libffi when building on Windows x64.
See ffitarget.h:80 for the definition of these enum values on the various platforms.
On Windows x64 this value should be 1, instead. Some other enum values should not be present, as well.
I suspect this issue affects other platforms, as well.
Hello,
While linking against an library using libffi for structure support, I receive the following error
Error creating CIF for FOO::BAR: :BAD-ABI
I traced this down to ffitarget.h and ffiw64.c in libffi and found the issue to be an incorrect value for
autowrap.libffi:+ffi-default-abi+
. This is an enum and the libffi spec files specify its value incorrectly as 2. The issue is that the generated spec files do not properly#define
the flags used by libffi when building on Windows x64.See ffitarget.h:80 for the definition of these enum values on the various platforms.
On Windows x64 this value should be
1
, instead. Some other enum values should not be present, as well. I suspect this issue affects other platforms, as well.Thanks!