This issue has been automatically converted from the original issue lists and some formatting may not have been preserved.
Authors: WG14, C Floating Point Group
Date: 2018-06-26
Reference document: N2272
Submitted against: Floating-point TS 18661 (C11 version, 2014-2016)
Status: Fixed
Fixed in: C23
Converted from: n2397.htm
The TS 18661-1 specification for remainder in F.10.7.2, says
— remainder(x, ±∞**)** returns x for x not infinite.
For x a (quiet) NaN, this specification appears to require that the same NaN be returned. This unintentionally goes beyond IEC 60559 whose general specification for NaNs requires only that some (quiet) NaN be returned. The suggested TC below uses similar words to IEC 60559’s, which allows the general specification for NaNs to apply.
In TS 18661-1 clause 12, for C F.10.7.2, change the third bullet from:
— remainder(x, ±∞**)** returns x for x not infinite.
to:
— remainder(x, ±∞**)** returns x for finite x.
Comment from WG14 on 2019-05-03:
Oct 2018 meeting
The committee accepts the Suggested Technical Corrigendum as the Proposed Change to resolve this issue.
In TS 18661-1 clause 12, for C F.10.7.2, change the third bullet from:
— remainder(x, ±∞**)** returns x for x not infinite.
to:
— remainder(x, ±∞**)** returns x for finite x.