On 09/05/2011 04:57 AM, Andrej Mitrovic wrote:
I'm looking at compare() in class TypeInfo_Array and it's defined as:override int compare(in void* p1, in void* p2) { void[] a1 = *cast(void[]*)p1; void[] a2 = *cast(void[]*)p2; size_t sz = value.tsize(); size_t len = a1.length; if (a2.length< len) len = a2.length; for (size_t u = 0; u< len; u++) { int result = value.compare(a1.ptr + u * sz, a2.ptr + u * sz); if (result) return result; } return cast(int)a1.length - cast(int)a2.length; } Shouldn't that return line be: return cast(int)(a1.length - a2.length); To make it 64-bit safe?
Both are not 64-bit safe.
