IEEE 754-2019 errata 2021-05-19

The current version of the IEEE Standard for Floating-Point Arithmetic (IEEE 754) was published in July 2019, and is available from the IEEE Xplore website. It is also an approved international standard: ISO/IEC 60559:2020.

Since the standard was published, some minor problems have been noticed; this page records those that the Editor of that standard is aware of, with suggested corrections where appropriate.
Please note that these have not yet been discussed on the IEEE 754 working group mailing list, and have not been through any standardization process and hence are neither ‘official’ nor part of the standard.

New problems are best reported and discussed in the working group mailing list. Any corrections for or comments on this errata page should be sent to the Editor, Mike Cowlishaw (
Subclause 2.1
page 13
Problem: “arithmetic format” is defined as: A floating-point format that can be used to represent floating-point operands or results for the operations of this standard.
decimalCharacterSequence is an operand or result of the operations in 5.4.2, but the committee did not intend to include it as a floating-point format, although it could perhaps be under the rules of 3.7.
Correction: Clarify, and also add definition of “floating-point format”.
Note that some programming languages do carry out arithmetic using numbers in character strings.
Reported by 754 working group 2020.
Subclause 2.1
page 14
Problem: Under “integer format” is the only use of “negative zeros”.
Correction: Replace with:  “signed zeros”.
Reported by Mike Cowlishaw 2021-02-11.
Subclause 2.1
page 15
Problem: The term “signed zero” is used several times in the document but is not defined.
Correction: Add definition of signed zero.
Reported by Mike Cowlishaw 2021-02-11.
Subclause 8.1
page 55
Problem: It is unclear what happens for FMA(sNaN + 0 × infinity); similarly for reduction operations. A standard operation can only raise one exception, but can it raise multiple sub-exceptions?
Correction: Clarify.
Reported by 754 working group 2020.
Subclause 9.2.1
page 63
Problem: “pow(+1, y) is 1 for any y (even a quiet NAN)”
Hence, as defined in 9.2.2, the preferred exponent for this case is floor(infinity × Q(+1)) which is floor(infinity × 0) which is floor(NaN) which is NaN. This is not explicitly stated to be valid earlier in the Standard (e.g., in 5.2).
Similarly for pow(infinity, 0) and pown(infinity, 0).
Correction: Clarify or modify (see also erratum for 9.2.2 below).
Reported by Fred J. Tydeman 2021-03-24.
Subclause 9.2.2
page 64
Problem: Q(NAN) is not defined, but is used in compound(NAN, 0), hypot(inf, NAN), pow(NAN, 0), pow(1, NAN), and pown(NAN, 0).
Correction: Define Q(NAN) in 5.2, and also clarify 9.2.2 with, perhaps: “If any of these operations results in a Q(NaN) or Q(0 × infinity), then the preferred exponent is 0”.
Reported by Fred J. Tydeman 2020-12-12.