Title
Wrong facet used by num_put::do_put
Status
c++14
Section
[facet.num.put.virtuals]
Submitter
Juan Soulie

Created on 2013-09-04.00:00:00 last changed 123 months ago

Messages

Date: 2014-02-13.04:55:14

Proposed resolution:

This wording is relative to N3691.

  1. Edit [facet.num.put.virtuals] p6 as indicated:

    -6- Returns: If (str.flags() & ios_base::boolalpha) == 0 returns do_put(out, str, fill, (int)val), otherwise obtains a string s as if by

    string_type s =
      val ? use_facet<ctypenumpunct<charT> >(loc).truename()
          : use_facet<ctypenumpunct<charT> >(loc).falsename();
    

    and then inserts each character c of s into out via *out++ = c and returns out.

Date: 2014-02-13.04:55:14

[ Issaquah 2014-02-11: Move to Immediate ]

Date: 2013-09-04.00:00:00

At the end of [facet.num.put.virtuals] (in p6), the return value is said to be obtained by calling truename or falsename on the wrong facet: ctype should be replaced by numpunct.

History
Date User Action Args
2014-02-27 17:03:20adminsetstatus: wp -> c++14
2014-02-20 13:52:38adminsetstatus: immediate -> wp
2014-02-13 04:55:14adminsetmessages: + msg6822
2014-02-13 04:55:14adminsetstatus: new -> immediate
2013-09-18 22:04:08adminsetmessages: + msg6593
2013-09-04 00:00:00admincreate