This is an unofficial snapshot of the ISO/IEC JTC1 SC22 WG21 Core Issues List revision 119e. See http://www.open-std.org/jtc1/sc22/wg21/ for the official list.
2026-04-17
(From submission #856.)
First, the rule about the conversion rank of signed integer types wrongly implies that char, if it is signed, would be a signed integer type.
Second, the rule about the conversion rank of bool allows it have a greater rank than extended integer types.
See also WG14 paper N3747.
Suggested resolution:
Change in 6.9.6 [conv.rank] paragraph 1 as follows:
Every integer type has an integer conversion rank defined as follows:
- No two signed integer types
other than char and signed char (if char is signed)have the same rank, even if they have the same representation.- ...
- The rank of char equals the rank of signed char and unsigned char.
- The rank of bool is less than the rank of all
standardother integer types.- The ranks of
char8_t, char16_t, char32_t, and wchar_tthe character types equal the ranks of their corresponding underlying types (6.9.2 [basic.fundamental]).- ...