**Submitter:**Fred J. Tydeman

**Submission Date:**2016-09-??

**Document:** WG14 N2092

Problem being solved

DR 467 decided that **FLT_MAX, DBL_MAX, LDBL_MAX** are the
maximum representable finite numbers for their respective types.
Therefore, there are no symbols for the maximum normalized
(numbers with full precision) numbers for their respective types.
Users may have a need to know if (and where) there are large
numbers with less than full precision. This corresponds to the
case of small numbers (***_MIN** versus
***_TRUE_MIN**).

Solution

Add a new paragraph to 5.2.4.2.2 near paragraph 12:

12b The values given in the following list shall be replaced by constant expressions with implementation-defined values that are greater than or equal to those shown:

-- maximum normalized floating-point number [copy math formula from FLT_MAX],

FLT_NORM_MAX 1E+37 DBL_NORM_MAX 1E+37 LDBL_NORM_MAX 1E+37

Existing practice

For most implementations, these three macros will be the same
as the corresponding ***_MAX** macros. The only known case
where that is not true is those where **long double** is
implemented as a pair of **double**s (and then only
**LDBL_MAX** will differ from **LDBL_NORM_MAX**).