Re: Installed python-numeric 17.1.2-1 (all source i386)

Doh, found a problem and am still trying to figure out what the best way to fix it is. In Src/arrayobject.c, starting at around line 70: int do_sliced_copy(char *dest, int *dest_strides, int *dest_dimensions, int dest_nd, char *src, int *src_strides, int *src_dimensions, int src_nd, int elsize, int copies) { int i, j; if (src_nd == 0 && dest_nd == 0) { switch(elsize) { case sizeof(char): memset(dest, *src, copies); break; case sizeof(short): for(j=copies; j; --j, dest += sizeof(short)) *(short*)dest = *(short*)src; break; case sizeof(long): for(j=copies; j; --j, dest += sizeof(int)) *(int*)dest = *(int*)src; break; case sizeof(double): for(j=copies; j; --j, dest += sizeof(double)) *(double*)dest = *(double*)src; break; default: for(j=copies; j; --j, dest += elsize) memcpy(dest, src, elsize); } return 0; } The problem is, that sizeof(long) = sizeof(double) on Alpha (and probably on the other 64-bit archs). So, what do you think the best method of handling this is? I don't know the package well anymore or else I'd fix it :-P C
participants (1)
-
Christopher C. Chimelis