mirror of
https://github.com/partic2/libffi
synced 2026-11-10 10:07:19 +00:00
Fix two "return" issues in x86/ffi64.c (#431)
Issue #70 pointed out that at least one compiler didn't like: return ffi_call_efi64(cif, fn, rvalue, avalue); ... where the return type is "void". This patch splits the statement into two. I also noticed that ffi_call_go here seems to do a double call. I suspect a "return" is missing here, so this patch adds it as well.
This commit is contained in:
committed by
Anthony Green
parent
ed3ed4d801
commit
4c2206ace0
+8
-2
@@ -678,7 +678,10 @@ ffi_call (ffi_cif *cif, void (*fn)(void), void *rvalue, void **avalue)
|
|||||||
{
|
{
|
||||||
#ifndef __ILP32__
|
#ifndef __ILP32__
|
||||||
if (cif->abi == FFI_EFI64)
|
if (cif->abi == FFI_EFI64)
|
||||||
return ffi_call_efi64(cif, fn, rvalue, avalue);
|
{
|
||||||
|
ffi_call_efi64(cif, fn, rvalue, avalue);
|
||||||
|
return;
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
ffi_call_int (cif, fn, rvalue, avalue, NULL);
|
ffi_call_int (cif, fn, rvalue, avalue, NULL);
|
||||||
}
|
}
|
||||||
@@ -695,7 +698,10 @@ ffi_call_go (ffi_cif *cif, void (*fn)(void), void *rvalue,
|
|||||||
{
|
{
|
||||||
#ifndef __ILP32__
|
#ifndef __ILP32__
|
||||||
if (cif->abi == FFI_EFI64)
|
if (cif->abi == FFI_EFI64)
|
||||||
ffi_call_go_efi64(cif, fn, rvalue, avalue, closure);
|
{
|
||||||
|
ffi_call_go_efi64(cif, fn, rvalue, avalue, closure);
|
||||||
|
return;
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
ffi_call_int (cif, fn, rvalue, avalue, closure);
|
ffi_call_int (cif, fn, rvalue, avalue, closure);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user