<div dir="ltr"><div>2025/04/16: 8:00 AM PDT</div><div class="gmail_quote gmail_quote_container"><div dir="ltr"><div class="gmail_quote"><div dir="ltr"><div class="gmail_quote"><div dir="ltr"><div class="gmail_quote"><div dir="ltr"><div class="gmail_quote"><div dir="ltr"><div dir="ltr"><div class="gmail_quote"><div dir="ltr"><div class="gmail_quote"><div dir="ltr"><div>[Please submit proposed changes to these minutes to Jerome or to the group. Revision changes appear at the bottom.]</div><div><br></div><div class="gmail_quote"><div dir="ltr"><div class="gmail_quote"><div dir="ltr"><div class="gmail_quote"><div dir="ltr"><div class="gmail_quote"><div dir="ltr"><div dir="ltr"><div class="gmail_quote"><div dir="ltr"><div class="gmail_quote"><div dir="ltr"><div dir="ltr"><div class="gmail_quote"><div dir="ltr"><div class="gmail_quote"><div dir="ltr"><div class="gmail_quote"><div dir="ltr"><div class="gmail_quote"><div dir="ltr"><div class="gmail_quote"><div dir="ltr"><div class="gmail_quote"><div dir="ltr"><div><p class="MsoNormal"><b>Attendees</b></p><p class="MsoNormal">    Jim Thomas, Rajan Bhakta, Jerome Coonen, Joshua Cranmer, David Hough, Fred Tydeman, Damian McGuckin</p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal"><b>Updated agenda plus new items</b></p><p class="MsoNormal">   <a href="https://wiki.edg.com/pub/CFP/WebHome/CFP%20meeting%20agenda-20250416-update.pdf">https://wiki.edg.com/pub/CFP/WebHome/CFP%20meeting%20agenda-20250416-update.pdf</a> – These minutes should be read alongside the agenda, with its many reference links.</p><p class="MsoNormal"><b><br></b></p><p class="MsoNormal"><b>Previous meeting notes</b></p><p class="MsoNormal">    <a href="https://wiki.edg.com/pub/CFP/WebHome/n3527.pdf" target="_blank">https://wiki.edg.com/pub/CFP/WebHome/n3527.pdf</a></p><p class="MsoNormal"><br></p><p class="MsoNormal"><b>Study group logistics</b></p><p class="MsoNormal">    Next meeting: 14 May 2025, 8:00 AM PDT</p><p class="MsoNormal">    ISO Zoom teleconference</p><p class="MsoNormal">    Please notify the group if this time slot does not work.</p><p class="MsoNormal"><br></p></div><div><p class="MsoNormal"></p><p class="MsoNormal"><b>C documents</b></p><p class="MsoNormal">    The latest C2Y draft is N3467 Feb 2025. <a href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3467.pdf" target="_blank">https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3467.pdf</a></p><p class="MsoNormal">    C23 has been published ISO/IEC 9899, available for purchase. <a href="https://www.iso.org/standard/82075.html" target="_blank">https://www.iso.org/standard/82075.html</a></p><p class="MsoNormal">    </p><p class="MsoNormal"><b>IEEE 754 liaison</b></p><p class="MsoNormal">    David: Very slow progress.</p><p class="MsoNormal">    Jerome: Much discussion of topics like the fate of the extended formats (think 1980s coprocessors) and roundTowardOdd.</p><p class="MsoNormal"> </p><p class="MsoNormal"><b>C++ liaison</b></p><p class="MsoNormal">    Joshua: Next meeting is in June, so a few quiet months coming.</p><p class="MsoNormal"> </p><p class="MsoNormal"><b>WG14 update</b></p><p class="MsoNormal">    None</p>





<p class="MsoNormal"> </p><p class="MsoNormal"><b>TS-4 and TS-5 revisions</b></p><p class="MsoNormal">    Jim: Published and available for purchase (see agenda link) for a bit over $100US. </p><p class="MsoNormal">    Rajan: Will investigate copies for standards development within the CFP group.</p></div><div><p class="MsoNormal"><br></p><p class="MsoNormal"><u></u></p><p class="MsoNormal"><b>Carry-over action items from last meeting </b></p><p class="MsoNormal"><b>    </b>Damian: complex.h intro, cproj, and editorial suggestions.</p><p class="MsoNormal">        Jim: Cproj and complex.h done. Keep editorial suggestions as a carryover.</p><p class="MsoNormal"><br></p></div><div><p class="MsoNormal"><b>Action items from last meeting </b></p><p class="MsoNormal">    Jim: Draft a paper with suggestion for frexp and double double to address the WG14 objections.</p><p class="MsoNormal">        Done</p><div><br></div>    Rajan: Send a note to WG14 about the N3447 issue.</div><div>         Rajan: Done and have follow-up later in the agenda.<br><br></div><div>    Damian & Jim: Tune up the cproj proposal suitable for WG14.</div><div>        Done</div><div><br>    Ly: Send email to CFP about the next____() issues pertaining to the several functions inspired by nextafter().<p class="MsoNormal">        Status unknown</p><p class="MsoNormal">        Jerome and Rajan: There are perhaps two threads of next___ discussion on distinct issues, to be resolved when all input is received. Historically, 754-1985 perhaps over-cautiously signaled underflow and inexact in the subnormal domain, leading to the less noisy nextUp and nextDown functions that return their exact (in the number system) result. Aside from whether to raise exceptions, there is the cost, which Ly is expected to address further.</p><p class="MsoNormal"><br></p><p class="MsoNormal"><b>Discussion of issues:</b></p><p class="MsoNormal">    Action item from WG 14 re. frexp and double-double<br>        Jim: Proposes a footnote to clarify the meaning of "floating point number" for purposes of the possible unspecified resits. Takes new action to submit same.</p><p class="MsoNormal"><br></p><p class="MsoNormal">    UB for translation-time expression evaluation (N3447 issue)<br>        Rajan: CFP 3410 has the issue thread. The subtle change is to, "...is evaluated with arithmetic range and precision at least as great..."</p><p class="MsoNormal">        Jim: New wording avoids "shall" and hence any UB, and also emphasizes that the range and precision apply to the evaluation.</p><p class="MsoNormal">        Rajan: Will send a note to WG14 with the group's approval. Wording is in 3413. Takes an action.</p><p class="MsoNormal"><br></p><p class="MsoNormal">    cproj cleanup</p><p class="MsoNormal">        Damian: Proposal is ready to send. </p><p class="MsoNormal">        Jim: Should say "return the value of the argument" vs. "return the argument".</p><p class="MsoNormal">        Rajan: The extra parentheses noted in the expression "cimag((z))" protect macro substitution.</p><p class="MsoNormal">        Fred: But the extra parens are not in the working draft, and seem not to be the convention.</p><p class="MsoNormal">        Damian: Will bring into conformance with the current draft. Takes action to revise with corrections made in the discussion and submit.<br><br></p><p class="MsoNormal">    TS-4 issue #1014 about error handling</p><p class="MsoNormal">        Jim: TS-4 has functions outside of math .h that refer to domain errors and range errors. Such errors are specific to math.h, not to the general library functions, so a cross-reference is needed.</p><p class="MsoNormal">        Rajan: This is a reasonable response. Suggest keeping a list of such proposals for a future TS revision. Until we can submit to the issue tracker, we can follow up in email.</p><p class="MsoNormal">        Jim: Takes action to draft a response for a future revision.<br><br></p><p class="MsoNormal">    complex.h introduction</p><p class="MsoNormal">        Damian: Changes accommodate disappearance of the imaginary types.</p><p class="MsoNormal">        Rajan: Agree that expanding the wording to say, "...its real part being positive or unsigned zero and it imaginary part being one," is longer but more readable.</p><p class="MsoNormal">        Jim: Program elements in red strikethru need program font for clarity (even though they are being removed!). The documents N3460 etc. should be in the references. The explanation of what's wrong in #4 needs to be expanded.</p><p class="MsoNormal">        Rajan: Be sure to return a "value" not a "type". Also, the rationale should come first. </p><p class="MsoNormal">        Damian (post-meeting): Note that the language of 7.3.1 and 7.12.1 need to be consistent re. the use of value vs. type.</p><p class="MsoNormal">        Jerome & Raan violently agree that there is an argument for leading with the punchline (the changes) and following with the rationale, but WG14 prefers that we lead with the rationale.</p><p class="MsoNormal">        Jim: If no objection, we propose submitting with the changes proposed in the discussion. Damian takes an action.</p><p class="MsoNormal"><br>    powr(negative, qNaN)</p><p class="MsoNormal">        Jim: Issue has been raised. Joseph Meyers (whose interpretation of 754 and C23 is correct) suggests an editorial change to bring the language into agreement with at least 3 similar cases of "all y (including NaN)", emphasizing that NaN is included.</p><p class="MsoNormal">        Jerome: Takes action to write a proposal with the change given in CFP 3415.</p><p class="MsoNormal"><br></p><p class="MsoNormal">    Imaginary I macro and i suffix issues, N3390 update</p><p class="MsoNormal">        Jim: Have not seen an update on the removal of the I macro.</p><p class="MsoNormal">        Rajan: The work is ongoing in WG14, so look for news to come.<br><br></p><p class="MsoNormal">    Sign bit of a NaN</p><p class="MsoNormal">        Damian: Notice a difference between compilers in the sign of the result of 0/0 or (x-x)/(x-x).</p><p class="MsoNormal">        Jim: The sign of a NaN is not specified.</p><p class="MsoNormal">        Joshua: There is inconsistency among hardware regarding the sign of NaN. Some compilers prefer positive sign.</p><p class="MsoNormal">        Joshua: If the input is unspecified (sign bit of NaN), the output will be.</p><p class="MsoNormal">        Jim: No action.<br><br></p><p class="MsoNormal">    Constant expressions and floating-point exceptions<br>        Jim: Vincent raised this issue, noting that status flags cannot be raised at translation time. So the evaluation cannot be the same in the two contexts.</p><p class="MsoNormal">        Fred: The standard also specifies that the flags are cleared at the start of execution.</p><p class="MsoNormal">        Jim: There may also be extra range and precision at translation time.</p><p class="MsoNormal">        Joshua and Rajan: Some compilers attempt to provide software emulation of the target arithmetic. Even hexadecimal.</p><p class="MsoNormal">        Jim: Will carry over for further discussion.</p><p class="MsoNormal"><br></p><p class="MsoNormal">    nexttoward exceptions</p><p class="MsoNormal">        Jim: Awaiting email input from Ly.<br><br></p><p class="MsoNormal">    Removal of “(also known as a singularity or infinitary)” in post-N3467 draft</p><p class="MsoNormal"><span style="background-color:rgb(255,255,255)">        Jim: Takes an action to keep this on the agenda until the removal is confirmed.</span></p><p class="MsoNormal"><br>    More complex functions, e.g. ccbrt, csinpi</p><p class="MsoNormal"><span style="background-color:rgb(255,255,255)">       Jim: Issue raised by Ly. Awaiting email about it.</span></p><p class="MsoNormal"><br>    CFP list of post C23 issues<b></b></p><p class="MsoNormal">        Jim: Great that we're getting issues for C2Y, but need to return to the list, Actions to follow.</p><p class="MsoNormal"><b><br></b></p><p class="MsoNormal">    Range error conditions for atan2 and atan2pi</p><p class="MsoNormal">        Carry over<br><br></p><p class="MsoNormal">    [[reproducible]] example in 6.7.13.8 ignores exceptions<b></b></p><p class="MsoNormal">        Carry over</p><p class="MsoNormal"><br></p></div><div><p class="MsoNormal"></p></div><div><p class="MsoNormal"><b>Other issues:</b></p></div><div>    None</div></div><div dir="ltr"><div><br></div><div><b>Adjournment</b></div><div><p class="MsoNormal">    10:04 AM PDT</p><p class="MsoNormal">-----------------------------------------------</p><p class="MsoNormal"><br></p><p class="MsoNormal"><b>Action items to be carried over:</b></p><p class="MsoNormal"><span style="background-color:rgb(255,255,255)">    Damian: Update the proposal re. the wording of cimag() and creal(). (These are just some of the editorial suggestions.)</span></p><p class="MsoNormal"><br></p><p class="MsoNormal"><b>New action items:<u></u><u></u></b></p><p class="MsoNormal">    Jim: Submit updated proposal re. frexp clarification.</p><p class="MsoNormal"><br></p><p class="MsoNormal">    Rajan: Propagate 3413 with wording just approved up to WG14.</p><p class="MsoNormal"><br></p><p class="MsoNormal">    Damian: Submit the cproj proposal with minor amendments discussed. Jim to get a document number and help submit.</p><p class="MsoNormal"><br></p><p class="MsoNormal">    Jim: Submit email about TS response re. domain and range errors. Rajan to work with issue tracker when possible.</p><p class="MsoNormal"><br></p><p class="MsoNormal">    Jim & Damian: Jim to send to CFP an email with suggested wording changes for complex.h. Damian to update the proposal based on these and other suggestions. Jim to get a document number for Damian, then submit the updated proposal.</p><p class="MsoNormal"><span style="background-color:rgb(255,255,255)"><br></span></p><p class="MsoNormal"><span style="background-color:rgb(255,255,255)">    Jerome: Write a proposal for powr() addressing Joseph's suggestion.</span></p><p class="MsoNormal"><span style="background-color:rgb(255,255,255)"><br></span></p><p class="MsoNormal"><span style="background-color:rgb(255,255,255)">    Damian: Will check the pwr() language against his ongoing changes.</span></p><p class="MsoNormal"><span style="background-color:rgb(255,255,255)"><br></span></p><p class="MsoNormal"><span style="background-color:rgb(255,255,255)">    Jim: Keep an agenda item re. the removal of “(also known as a singularity or infinitary)” in post-N3467 draft of C2Y.</span></p><p class="MsoNormal"><br></p></div><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div><b>Discussion issues to be carried over:</b></div><div><p class="MsoNormal">    Constant expressions and floating-point exceptions</p><p class="MsoNormal"><br></p><p class="MsoNormal">    More complex functions, e.g. ccbrt, csinpi</p></div><div><br></div><div><p class="MsoNormal">    Range error conditions for atan2 and atan2pi</p><p class="MsoNormal">    <br></p><p class="MsoNormal">    [[reproducible]] example in 6.7.13.8 ignores exceptions<b></b></p><br class="gmail-Apple-interchange-newline"></div><div><br></div><div>Respectfully submitted.</div><div><br></div><div dir="ltr">-Jerome Coonen<div> 650.996.4738</div><div> <a href="mailto:jcoonen@gmail.com" target="_blank">jcoonen@gmail.com</a></div></div></div></div></div>
</div></div>
</div></div>
</div></div>
</div></div>
</div></div>
</div></div>
</div>
</div></div>
</div></div>
</div>
</div></div>
</div></div>
</div></div>
</div></div>
</div></div>
</div></div>
</div>
</div></div>
</div></div>
</div></div>
</div></div>
</div></div>