<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body style="overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;">Do we intend for the evaluation of any object-like macros defined in Clause 7 or Annexes F, G, H or K to raise a floating-point exception at execution time? If not, we might add that as a requirement in 7.1.2. See 7.1.2 #7 (in n3219).<div><br></div><div><div><blockquote type="cite"><div>On Feb 11, 2024, at 9:58 AM, Fred J. Tydeman <tydeman@tybor.com> wrote:</div><br class="Apple-interchange-newline"><div><div>On Wed, 7 Feb 2024 19:37:46 +0000 Rajan Bhakta wrote:<br><blockquote type="cite"><br> Jim: Are there any <math.h> macros with this issue? Should words be added to an introduction section in <float.h>?<br> ^Fred: Look into.<br></blockquote><br><math.h> macros that should not raise exceptions when evaluated:<br><br>HUGE_VAL, HUGE_VALF, HUGE_VALL, HUGE_VAL_D*<br>INFINITY, DEC_INFINITY<br>NAN, DEC_NAN<br><br><br>Aside: Should 7.12.1#5 (overflow) mention HUGE_VAL_D*?<br></div></div></blockquote><div><br></div>Right. Perhaps change </div><div><br></div></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;"><div><div><div>returns the value of the macro HUGE_VAL, HUGE_VALF, or HUGE_VALL according to the return type</div></div></div></blockquote><div><div><div><br></div><div>to</div><div><br></div></div></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;"><div><div><div><div>returns the value of the macro HUGE_VAL suffixed according to the return type</div><div><br></div></div></div></div></blockquote>which would cover the macros in Annex H too.<br><div><div><div><div><br></div></div><blockquote type="cite"><div><div><br>SNAN macro "requirement" is in a Recommended practice in F.2.1.<br></div></div></blockquote><div><br></div>I think it's F.2.2 in n3219. It doesn't use “shall” or a form of “require”. Are you interpreting “raises” (in recommended practice) as a requirement?</div><div><br><blockquote type="cite"><div><div><br>FLTn_SNAN, DECn_SNAN, FLTnx_SNAN, DECnx_SNAN in H.3#6<br>HUGE_VAL_Fn, HUGE_VAL_Dn, HUGE_VAL_Fnx, HUGE_VAL_Dnx in H.11.1<br><br>Aside: 5.2.4.2.2#22 mentions SNAN for translation time initializer,<br>while H.3#6 mentions static or thread storage duration.<br></div></div></blockquote><div><br></div><div>Good catch. I think it’s 5.2.5.3.2#28 in n3219. Is there any reason not to use the words in H.3#6 in both places? </div><div><br></div><div>- Jim Thomas</div><div><br></div><blockquote type="cite"><div><div><br><br>---<br>Fred J. Tydeman Tydeman Consulting<br>tydeman@tybor.com Testing, numerics, programming<br>+1 (702) 608-6093 Vice-chair of INCITS/C (ANSI "C")<br>Sample C17+FPCE tests: http://www.tybor.com<br>Savers sleep well, investors eat well, spenders work forever.<br><br>_______________________________________________<br>Cfp-interest mailing list<br>Cfp-interest@oakapple.net<br>http://mailman.oakapple.net/mailman/listinfo/cfp-interest<br></div></div></blockquote></div><br></div></body></html>