+2008-07-24 Anthony Green <green@redhat.com>
+
+ * testsuite/libffi.call/cls_dbls_struct.c,
+ testsuite/libffi.call/cls_double_va.c,
+ testsuite/libffi.call/cls_longdouble.c,
+ testsuite/libffi.call/cls_longdouble_va.c,
+ testsuite/libffi.call/cls_pointer.c,
+ testsuite/libffi.call/cls_pointer_stack.c,
+ testsuite/libffi.call/err_bad_abi.c: Clean up failures from
+ compiler warnings.
+
2008-07-17 Anthony Green <green@redhat.com>
* configure.ac: Bump version to 3.0.6.
-This is ../libffi/doc/libffi.info, produced by makeinfo version 4.11
-from ../libffi/doc/libffi.texi.
+This is doc/libffi.info, produced by makeinfo version 4.11 from
+./doc/libffi.texi.
This manual is for Libffi, a portable foreign-function interface
library.
\1f
Tag Table:
-Node: Top\7f688
-Node: Introduction\7f1424
-Node: Using libffi\7f3060
-Node: The Basics\7f3495
-Node: Simple Example\7f6102
-Node: Types\7f7129
-Node: Primitive Types\7f7412
-Node: Structures\7f9232
-Node: Type Example\7f10092
-Node: Multiple ABIs\7f11315
-Node: The Closure API\7f11686
-Node: Missing Features\7f14606
-Node: Index\7f15099
+Node: Top\7f670
+Node: Introduction\7f1406
+Node: Using libffi\7f3042
+Node: The Basics\7f3477
+Node: Simple Example\7f6084
+Node: Types\7f7111
+Node: Primitive Types\7f7394
+Node: Structures\7f9214
+Node: Type Example\7f10074
+Node: Multiple ABIs\7f11297
+Node: The Closure API\7f11668
+Node: Missing Features\7f14588
+Node: Index\7f15081
\1f
End Tag Table
}
void
-closure_test_gn(ffi_cif* cif,void* resp,void** args, void* userdata)
+closure_test_gn(ffi_cif* cif __UNUSED__, void* resp __UNUSED__,
+ void** args, void* userdata __UNUSED__)
{
closure_test_fn(*(Dbls*)args[0]);
}
-int main(int argc, char** argv)
+int main(int argc __UNUSED__, char** argv __UNUSED__)
{
ffi_cif cif;
#include "ffitest.h"
static void
-cls_double_va_fn(ffi_cif* cif, void* resp, void** args, void* userdata)
+cls_double_va_fn(ffi_cif* cif __UNUSED__, void* resp,
+ void** args, void* userdata __UNUSED__)
{
char* format = *(char**)args[0];
double doubleValue = *(double*)args[1];
ffi_call(&cif, FFI_FN(printf), &res, args);
// { dg-output "7.0" }
- printf("res: %d\n", res);
+ printf("res: %d\n", (int) res);
// { dg-output "\nres: 4" }
CHECK(ffi_prep_closure(pcl, &cif, cls_double_va_fn, NULL) == FFI_OK);
res = ((int(*)(char*, double))(pcl))(format, doubleArg);
// { dg-output "\n7.0" }
- printf("res: %d\n", res);
+ printf("res: %d\n", (int) res);
// { dg-output "\nres: 4" }
exit(0);
}
static void
-cls_ldouble_gn(ffi_cif* cif, void* resp, void** args, void* userdata)
+cls_ldouble_gn(ffi_cif* cif __UNUSED__, void* resp,
+ void** args, void* userdata __UNUSED__)
{
long double a1 = *(long double*)args[0];
long double a2 = *(long double*)args[1];
#include "ffitest.h"
static void
-cls_longdouble_va_fn(ffi_cif* cif, void* resp, void** args, void* userdata)
+cls_longdouble_va_fn(ffi_cif* cif __UNUSED__, void* resp,
+ void** args, void* userdata __UNUSED__)
{
char* format = *(char**)args[0];
long double ldValue = *(long double*)args[1];
ffi_call(&cif, FFI_FN(printf), &res, args);
// { dg-output "7.0" }
- printf("res: %d\n", res);
+ printf("res: %d\n", (int) res);
// { dg-output "\nres: 4" }
CHECK(ffi_prep_closure(pcl, &cif, cls_longdouble_va_fn, NULL) == FFI_OK);
res = ((int(*)(char*, long double))(pcl))(format, ldArg);
// { dg-output "\n7.0" }
- printf("res: %d\n", res);
+ printf("res: %d\n", (int) res);
// { dg-output "\nres: 4" }
exit(0);
{
void* result = (void*)((long)a1 + (long)a2);
- printf("0x%08x 0x%08x: 0x%08x\n", a1, a2, result);
+ printf("0x%08x 0x%08x: 0x%08x\n",
+ (unsigned int) a1, (unsigned int) a2, (unsigned int) result);
return result;
}
static void
-cls_pointer_gn(ffi_cif* cif, void* resp, void** args, void* userdata)
+cls_pointer_gn(ffi_cif* cif __UNUSED__, void* resp,
+ void** args, void* userdata __UNUSED__)
{
void* a1 = *(void**)(args[0]);
void* a2 = *(void**)(args[1]);
ffi_call(&cif, FFI_FN(cls_pointer_fn), &res, args);
/* { dg-output "0x12345678 0x89abcdef: 0x9be02467" } */
- printf("res: 0x%08x\n", res);
+ printf("res: 0x%08x\n", (unsigned int) res);
/* { dg-output "\nres: 0x9be02467" } */
CHECK(ffi_prep_closure(pcl, &cif, cls_pointer_gn, NULL) == FFI_OK);
res = (ffi_arg)((void*(*)(void*, void*))(pcl))(arg1, arg2);
/* { dg-output "\n0x12345678 0x89abcdef: 0x9be02467" } */
- printf("res: 0x%08x\n", res);
+ printf("res: 0x%08x\n", (unsigned int) res);
/* { dg-output "\nres: 0x9be02467" } */
exit(0);
void* result = (void*)((long)a1 + (long)a2);
- printf("0x%08x 0x%08x: 0x%08x\n", a1, a2, result);
+ printf("0x%08x 0x%08x: 0x%08x\n",
+ (unsigned int) a1, (unsigned int) a2, (unsigned int) result);
return result;
}
}
static void
-cls_pointer_gn(ffi_cif* cif, void* resp, void** args, void* userdata)
+cls_pointer_gn(ffi_cif* cif __UNUSED__, void* resp,
+ void** args, void* userdata __UNUSED__)
{
void* a1 = *(void**)(args[0]);
void* a2 = *(void**)(args[1]);
printf("\n");
ffi_call(&cif, FFI_FN(cls_pointer_fn1), &res, args);
- printf("res: 0x%08x\n", res);
+ printf("res: 0x%08x\n", (unsigned int) res);
// { dg-output "\n0x01234567 0x89abcdef: 0x8acf1356" }
// { dg-output "\n0x8acf1356 0x01234567: 0x8bf258bd" }
// { dg-output "\nres: 0x8bf258bd" }
res = (ffi_arg)((void*(*)(void*, void*))(pcl))(arg1, arg2);
- printf("res: 0x%08x\n", res);
+ printf("res: 0x%08x\n", (unsigned int) res);
// { dg-output "\n0x01234567 0x89abcdef: 0x8acf1356" }
// { dg-output "\n0x8acf1356 0x01234567: 0x8bf258bd" }
// { dg-output "\nres: 0x8bf258bd" }
#include "ffitest.h"
static void
-dummy_fn(ffi_cif* cif, void* resp, void** args, void* userdata)
+dummy_fn(ffi_cif* cif __UNUSED__, void* resp __UNUSED__,
+ void** args __UNUSED__, void* userdata __UNUSED__)
{}
int main (void)