is_leap
if ( tmP->tm_mon >= 2 && is_leap( tmP->tm_year + 1900 ) )
int __month_to_secs(int month, int is_leap)
if (is_leap && month >= 2) t+=86400;
long long t = __year_to_secs(year, &is_leap);
t += __month_to_secs(month, is_leap);
int is_leap;
long long __year_to_secs(long long year, int *is_leap)
if (!is_leap) is_leap = &dummy;
*is_leap = 1;
*is_leap = 0;
*is_leap = !rem;
leaps += 97*cycles + 24*centuries - *is_leap;
if (is_leap) *is_leap = 1;
} else if (is_leap) *is_leap = 0;
if (dec31 == 4 || (dec31 == 5 && is_leap(tm->tm_year%400-1)))
if (jan1 != 4 && (jan1 != 3 || !is_leap(tm->tm_year)))