090391d94f
Our strptime implementation uses subformatting to handle specifiers that expand to other specifiers. For example, '%T' expands to "%H:%M%:%S". Relibc calls strptime again to handle '%T' by expanding it. However, our strptime zeroes out struct tm which clobbers old values. If strptime is called with a format string like "%D%t%T", the set values for '%D' are clobbered. Zeroing out the struct is extra, unneeded work as well. The user may want to preserve old values. We don't read from struct tm so we don't have to worry about invalid values. Finally, `musl` and `glibc` don't clear the values either so we can default to their behavior.