On Sat, Apr 18, 2009 at 7:57 AM, Dag Sverre Seljebotn <[email protected]> wrote: > Dag Sverre Seljebotn wrote: >> Kurt Smith wrote: >>> The current numpy_test.pyx file fails for PowerPC macs due to >>> endianness issues in the dtype. This is a small fix to make it work >>> (and make all tests pass on my machine). It also adds an explicit >>> big-endian test to the doctest. >>> >>> diff -r fc73225aaea1 tests/run/numpy_test.pyx >>> --- a/tests/run/numpy_test.pyx Fri Apr 17 09:11:16 2009 +0200 >>> +++ b/tests/run/numpy_test.pyx Fri Apr 17 15:43:11 2009 -0500 >>> @@ -132,13 +132,20 @@ >>> >>> test_recordarray() >>> >>> >>> test_nested_dtypes(np.zeros((3,), dtype=np.dtype([\ >>> - ('a', np.dtype('i,i')),\ >>> - ('b', np.dtype('i,i'))\ >>> + ('a', np.dtype('<i,<i')),\ >>> + ('b', np.dtype('<i,<i'))\ >>> ]))) >>> array([((0, 0), (0, 0)), ((1, 2), (1, 4)), ((1, 2), (1, 4))], >>> dtype=[('a', [('f0', '<i4'), ('f1', '<i4')]), ('b', [('f0', >>> '<i4'), ('f1', '<i4')])]) >> >> Any ideas on why this particular case actually passes on your machine? >> The Cython code alwayws works with big-endian on your machine, so I >> wouldn't expect to see ((1, 2), (1, 4)) there, but the byteswapped >> versions of those numbers... >> > > Ahh right; the only value read from the input array (in the test > function) is zero, which is the same in both endians, and you added > explicit byteswap on the output.
Sorry -- can't devote the time to address these questions right now but I'll get to them as soon as I can (Monday?). Thanks, Kurt _______________________________________________ Cython-dev mailing list [email protected] http://codespeak.net/mailman/listinfo/cython-dev
