It’s be funny if this went back further to some pre Unix telco system, my hunch was some date conversion optimization.
> I stopped at Unix 5, from 1974. It didn't even have a <time.h> file! In its <ctime.c> file, it stores the date as an array of integer values. The `tm` struct only starts appearing in Unix 7.
https://mobile.twitter.com/hillelogram/status/13292284386795...
https://minnie.tuhs.org/cgi-bin/utree.pl?file=V4/man/man3/ct...
It confirms that the day of the month element was one based. This function is different in earlier editions:
https://minnie.tuhs.org/cgi-bin/utree.pl?file=V3/man/man3/ct...
https://minnie.tuhs.org/cgi-bin/utree.pl?file=V1/man/man3/ct...