Created on 2021-11-30.00:00:00 last changed 13 months ago
Proposed resolution:
This wording is relative to N4901.
Modify [format.string.std], Table 67 [tab:format.type.bool], as indicated:
Table 67 — Meaning of type options for bool [tab:format.type.bool] Type Meaning none, s Copies textual representation, either true or false, to the output. b, B, c,d, o, x, XAs specified in Table 65 [tab:format.type.int] for the value static_cast<unsigned char>(value).
[ 2022-02-10 Approved at February 2022 virtual plenary. Status changed: Tentatively Ready → WP. ]
[ 2022-01-30; Reflector poll ]
Set status to Tentatively Ready after five votes in favour during reflector poll.
[ 2021-12-04; Daniel comments ]
This issue relates to LWG 3644.
P1652R1 prints integral inputs as characters with 'c' and preserves the wording to treat bool as a one-byte unsigned integer; this accidentally asks the implementation to cast bool into a 1-bit character if a user asks for the 'c' presentation type.
Recent wording improvements made this implied behavior obvious.History | |||
---|---|---|---|
Date | User | Action | Args |
2023-11-22 15:47:43 | admin | set | status: wp -> c++23 |
2022-02-10 12:58:57 | admin | set | messages: + msg12359 |
2022-02-10 12:58:57 | admin | set | status: ready -> wp |
2022-01-30 16:42:38 | admin | set | messages: + msg12304 |
2022-01-30 16:42:38 | admin | set | status: new -> ready |
2021-12-04 14:37:06 | admin | set | messages: + msg12247 |
2021-12-04 14:37:06 | admin | set | messages: + msg12246 |
2021-11-30 00:00:00 | admin | create |