328. Bad sprintf format modifier in money_put<>::do_put()

Section: [locale.money.put.virtuals] Status: CD1 Submitter: Martin Sebor Opened: 2001-07-07 Last modified: 2016-01-28 10:19:27 UTC

Priority: Not Prioritized

View all other issues in [locale.money.put.virtuals].

View all issues with CD1 status.


The sprintf format string , "%.01f" (that's the digit one), in the description of the do_put() member functions of the money_put facet in, p1 is incorrect. First, the f format specifier is wrong for values of type long double, and second, the precision of 01 doesn't seem to make sense. What was most likely intended was "%.0Lf"., that is a precision of zero followed by the L length modifier.

Proposed resolution:

Change the format string to "%.0Lf".


Fixes an obvious typo