*This is an unofficial snapshot of the ISO/IEC JTC1 SC22 WG21
Core Issues List revision 114b.
See http://www.open-std.org/jtc1/sc22/wg21/ for the official
list.*

2024-05-06

#### 2723.
Range of representable values for floating-point types

**Section: **6.8.2 [basic.fundamental]
**Status: **DRWP
**Submitter: **Jiang An
**Date: **2023-04-21

[Accepted as a DR at the June, 2023 meeting.]

The range of representable values is defined for integer types, but
not for floating-point types. This term is used in
5.13.4 [lex.fcon] paragraph 3 as well as in the library,
e.g. in 22.13.3 [charconv.from.chars] and
30.4.3.2.3 [facet.num.get.virtuals].

The C standard contains a suitable definition that we should
inherit.

**Proposed resolution (approved by CWG 2023-05-12):**

Add a new paragraph after 6.8.2 [basic.fundamental] paragraph 12 as follows:

... Except as specified in 6.8.3 [basic.extended.fp], the object and
value representations and accuracy of operations of floating-point
types are implementation-defined.

The minimum range of representable values for a floating-point type is
the most negative finite floating-point number representable in that
type through the most positive finite floating-point number
representable in that type. In addition, if negative infinity is
representable in a type, the range of that type is extended to all
negative real numbers; likewise, if positive infinity is representable
in a type, the range of that type is extended to all positive real
numbers. [ Note: Since negative and positive infinity are
representable in ISO/IEC/IEEE 60559 formats, all real numbers lie
within the range of representable values of a floating-point type
adhering to ISO/IEC/IEEE 60559. ]