Attempts to parse the input stream is
into the file_time tp
the format flags given in the NTCTS fmt
as specified in [time.parse].
If the parse fails to decode a valid date,
is called and
is not modified.
is used and successfully parsed,
that value will be assigned to *abbrev
(or a modified variant) is used and successfully parsed,
that value will be assigned to *offset
Additionally, the parsed offset will be subtracted from
the successfully parsed timestamp prior to assigning that difference to tp.