I always thought that changing time_t to a 64 bit number would have been a good thing to do at the same time that glibc2 was released.

I don't own a copy of the C standard so I can't quote chapter and verse, but it goes roughly like this: time_t is an integral type and should therefore fit in a long or unsigned long. So if you make time_t 64 bit, you have to also make long 64 bit. And 64 bit arithmetic on 32 bit architectures is rather slow (gcc is especially bad at this). The new C standard adds long long and implementation-defined extended types so it wouldn't have that problem, but it'd be a while before that's widely implemented.

Borislav