Just a side point... pick one or the other for `struct tm', then stay with it. We can change all the old code now and conform to ISO, or we can buck the tide as long as we want. Having one field one way and another the other, however, is a mistake: That way lies madness.