https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120810

--- Comment #3 from Jonathan Wakely <redi at gcc dot gnu.org> ---
(In reply to Jonathan Wakely from comment #1)
> Frankly, std::time_get::do_date_order() seems unusable and should be
> deprecated.

"Returns no_order if the date format specified by ’x’ contains other variable
components (e.g., Julian day, week number, week day)."

Or even just a 4-digit year.

And what if it contains just the %d and %m and %y components, but with
different separators, e.g. %d.%m.%y? The spec doesn't seem to permit this to
return no_order, but it's not one of the formats in table 100 (which
do_date_order doesn't actually refer to).

There's a non-normative footnote saying that no_order is a possible result for
valid locales, which should be normative.

I think we should remove the footnote and say "Returns no_order if the date
format specified by ’x’ does not match one of the formats in Table
[tab:locale.time.get.dogetdate]."

Once we have an LWG issue I'll move these comments there.

Reply via email to