On 16/01/12 19:03, Thorsten Glaser wrote:
Alan Hourihane dixit:
Attached a patch to fix the err_bad_abi.c failure.
Right. That leaves us with:
Running /tmp/buildd/libffi-3.0.10/testsuite/libffi.call/call.exp ...
FAIL: libffi.call/nested_struct2.c -O0 -W -Wall execution test
FAIL: libffi.call/nested_struct2.c -O2 execution test
FAIL: libffi.call/return_sc.c -O2 execution test
FAIL: libffi.call/nested_struct2.c -O3 execution test
FAIL: libffi.call/return_sc.c -O3 execution test
FAIL: libffi.call/nested_struct2.c -Os execution test
FAIL: libffi.call/return_sc.c -Os execution test
FAIL: libffi.call/nested_struct2.c -O2 -fomit-frame-pointer execution test
FAIL: libffi.call/return_sc.c -O2 -fomit-frame-pointer execution test
Running /tmp/buildd/libffi-3.0.10/testsuite/libffi.special/special.exp ...
=== libffi Summary ===
# of expected passes 1635
# of unexpected failures 9
# of unsupported tests 15
The return_sc problem looks like it could be a GCC bug with optimizations as it
doesn't happen with -O0.
No idea wrt. that one. It would surely help if those
programmes emitted lots more diagnostics, to see where
exactly they fail at a glanceā¦
Fixed the test, as it was broken.
Attached.
Just nested_struct2.c failure now.
Alan.
--- testsuite/libffi.call/return_sc.c.old 2012-01-19 10:33:52.589474817 +0000
+++ testsuite/libffi.call/return_sc.c 2012-01-19 10:34:00.752759788 +0000
@@ -30,7 +30,7 @@
sc < (signed char) 127; sc++)
{
ffi_call(&cif, FFI_FN(return_sc), &rint, values);
- CHECK(rint == (ffi_arg) sc);
+ CHECK((signed char)rint == sc);
}
exit(0);
}