The very fact that you didn't have issues with size_t before compiling in 64 bit mode seems like a short-coming of D. It should be hard to write code that isn't platform independent. One would kind of hope that size_t was a distinct type that could have uints assigned to them without casts. It might even be good to allow size_t to implicitly convert to ulong.
dsimcha Wrote: > Now that DMD has a 64-bit beta available, I'm working on getting a whole bunch > of code to compile in 64 mode. Frankly, the compiler is way too freakin' > pedantic when it comes to implicit conversions (or lack thereof) of > array.length. 99.999% of the time it's safe to assume an array is not going > to be over 4 billion elements long. I'd rather have a bug the 0.001% of the > time than deal with the pedantic errors the rest of the time, because I think > it would be less total time and effort invested. To force me to either put > casts in my code everywhere or change my entire codebase to use wider integers > (with ripple effects just about everywhere) strikes me as purity winning out > over practicality.