Why shouldn't the cal program show years 10000 onward? > cal 1 10000 cal: illegal year value: use 1-9999
Do you really care?
I cared enough to file a bug, but I won't lose any sleep if it doesn't get fixed. It just seems like a completely arbitrary limitation. I can find no reason for it. The mathematics are the same past the year 9999. The type-imposed limit for year appears to be (((MAX_LONG - 379) * 400 / 146097) + 1), or 5879610 for a 32-bit long. This limitation occurs in the day_in_week() function. I tried removing the artificial limitation and it appears to give correct results.