Section: 24.3.4.4 [iterator.concept.winc] Status: Resolved Submitter: Jonathan Wakely Opened: 2020-01-16 Last modified: 2021-10-23
Priority: 3
View all other issues in [iterator.concept.winc].
View all issues with Resolved status.
Discussion:
24.3.4.4 [iterator.concept.winc] says:
A type
I
is an integer-class type if it is in a set of implementation-defined class types that behave as integer types do, as defined in below.
and
A type
I
is integer-like if it modelsintegral<I>
or if it is an integer-class type.
Some implementations support built-in integer types that do not necessarily model std::integral
,
e.g. with libstdc++ whether std::is_integral_v<__int128>
is true
depends whether
"strict" or "extensions" mode is in use. Because __int128
is not a class type, it can't be used
as an integer-like type in strict mode (which effectively means it can't be used at all, to avoid unwanted
ABI differences between modes).
[2020-02-08 Issue Prioritization]
Priority to 3 after reflector discussion.
[2021-10-23 Resolved by the adoption of P2393R1 at the October 2021 plenary. Status changed: New → Resolved.]
Proposed resolution: