January 16, 2004
readBlock and read(ubyte[]) for class Stream returns uint. Under linux it uses:

size = std.c.linux.linux.read(hFile, buffer, size);

Where read on POSIX systems returns -1 on error. So you would never know whether you had an error during reading. It would return 4294967295, which, granted is a pretty big buffer. :-)

But much code for linux uses:
if(read(blah) < 0) {  perror("read"); }

It would be kinda hacky (when porting C code to D) if you had to say:
if(mystream.read(blah) == uint.max) { error; }

-Damon-