[cfp-interest 3854] Re: Annex F - Special Cases & Introduction - Updates against latest C2Y
Damian McGuckin
damianm at esi.com.au
Sat Apr 4 20:54:28 PDT 2026
On Fri, 3 Apr 2026, Damian McGuckin wrote:
> On Fri, 3 Apr 2026, Damian McGuckin wrote:
>
>> On Fri, 3 Apr 2026, Damian McGuckin wrote:
>>
>>> [if] x is not a signaling NaN
>>
>> This has no parantheses which is a bonus in my opinion.
>
> The following explanatioons are now in F.2.2#3
>
> While this annex does not require the full support for signaling NaNs
> specified in ISO/IEC 60559, it does use the phrase "x is not a signaling NaN"
> to imply that either x is a quiet NaN or -INF <= x <= +INF. For brevity, this
> annex also uses the term NaN, unless explicitly qualified, to denote a quiet
> NaN, and consequently uses the phrase "x is a NaN" to imply that x belongs to
> the set of all quiet NaNs.
Currently, C2Y says what is NOT. This is not always helpful. In an attempt
to minimize mention of a signaling NaN which may not even be supported, I
have simply put
-INF <= x <= +INF or x is a quiet NaN
directly in the domain. Much clearer. No need for explanation in F.2.2. I
use the symbol for infinity in the text.
I have also eliminated mentions of signaling NaNs from all Annex F domains
except for
fabs(x)
copysign(x, y)
canonicalize(cxp, xp)
totalorder/totalordermag(x, y)
All of these must mention the abnormal case where an exception is not
raised for signaling NaN input.
Any mentions of a NaN within a domain which would imply a quiet NaN (as
per the statement of F.2.2) have been changed to explicitly say a quiet
NaN. There were not so many and it avoids any confusion.
Note that the inference of a unqualified NaN being a quiet NaN is still
used for arguments/parameters and results. Too many and if destroys the
readability.
Uploaded the updates:
https://cfp-wiki.esi.com.au/pub/CFP/WebHome/C2Y-F-Introduction-20260401.pdf
https://cfp-wiki.esi.com.au/pub/CFP/WebHome/C2Y-F-SpecialCases-20260401.pdf
Thanks - Damian
More information about the cfp-interest
mailing list