Now I'm wondering if it's a bug for FreeBSD's mktime(3) to end up setting errno to non-zero even when it really doesn't seems to have got any error (after all it doesn't returns (time_t)-1 but a correct timestamp).
Or maybe it's just accepted that errnocan just change because side-effects.