<div dir="ltr"><div>[Further comments on these minutes are welcome. This draft has a major update of Joshua's C++ report, as well as changes re. SIGFP and complex.] </div><div><br></div><div>2024/11/20: 8 AM PDT</div><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, Jerome, Fred, Joshua, Damian, David</p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal"><b>New agenda items</b></p><p class="MsoNormal"> <a href="https://wiki.edg.com/pub/CFP/WebHome/n3387.pdf" target="_blank">https://wiki.edg.com/pub/CFP/WebHome/n3387.pdf</a></p><p class="MsoNormal"><br></p><p class="MsoNormal"><b>Previous meeting notes</b></p><p class="MsoNormal"><b><u></u><u></u></b> <a href="https://wiki.edg.com/pub/CFP/WebHome/n3386.pdf" target="_blank">https://wiki.edg.com/pub/CFP/WebHome/n3386.pdf</a></p><p class="MsoNormal"> <br></p><p class="MsoNormal"><b>Next Meeting(s)</b></p><p class="MsoNormal"> 11 December 2024, 4PM UTC if needed</p><p class="MsoNormal"> 8 January 2025, 4PM UTC</p><p class="MsoNormal"> ISO Zoom teleconference</p><p class="MsoNormal"> Please notify the group if these time slots do not work.</p></div><div><p class="MsoNormal"> <u></u></p><p class="MsoNormal"><b>C documents</b></p><p class="MsoNormal"> The working C2y draft is n3301 - 28 July 2024 - For CFP review only. Do not distribute.</p><p class="MsoNormal"> </p><p class="MsoNormal"><b>IEEE 754 liaison</b></p><p class="MsoNormal"> Fred, Jerome: There is new discussion of decimal vs. binary comparisons (among many other things).</p><p class="MsoNormal"><u></u> </p><p class="MsoNormal"><b>C++ liaison</b></p><p class="MsoNormal"> Joshua: Meeting this week in Wroclaw, Poland. One issue is on the FLT_EVAL_METHOD semantics in C++, which is currently largely based on C semantics, but has unclear extension to C++ features (particularly constexpr contexts). There is another set of issues about floating-point reproducibility in C++, and there is a growing appetite to specify the semantics more completely. Pragmas are not popular in C++. Templates are an alternative, but not without issues.</p><p class="MsoNormal">[Also added in edit, Joshua offers to write up a more thorough summary of the C++ floating-point discussions, if that is of interest. Finally, the pronunciation of the name of the city many of us learned as Warsaw is "VROWT-slaaf".]</p><p class="MsoNormal"> </p><p class="MsoNormal"><b>WG14</b></p><p class="MsoNormal"> None</p></div><div><p class="MsoNormal"> <br></p><p class="MsoNormal"><b>C23 integration</b></p><p class="MsoNormal"> C23 has been published. Has an October 2024 date, but referred to as C23.</p><p class="MsoNormal"> <a href="https://www.iso.org/standard/82075.html" target="_blank">https://www.iso.org/standard/82075.html</a></p><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>David: Draft reply to WG14 re midpoint and interpolation. Will carry over.</p><p class="MsoNormal"><br></p><p class="MsoNormal"><b>Action items from last meeting </b></p><p class="MsoNormal"> Fred: Submit update to SIGFPE proposal N3378, with the suggested new wording re. the raise function.</p><p class="MsoNormal"> Not submitted and action closed. Fred discovered sufficiently many issues in preparing the proposal to warrant CFP review and a new action item below.</p></div><div><br> Jerome: Draft a proposal fadd, etc. (3314) following the discussion above, and adhering to the practice of new text in green and removed text in red strike-thru. Done.</div><div> <a href="https://wiki.edg.com/pub/CFP/WebHome/fadd%20fsub%20etc%20error%20conditions%20proposal.pdf" target="_blank">https://wiki.edg.com/pub/CFP/WebHome/fadd%20fsub%20etc%20error%20conditions%20proposal.pdf</a><br></div><div><br></div><div> Jerome: Draft proposal re. changes for "treatment of error con, watching for interaction with Jim's change re. range error in 7.12.2#4. Add a note to the editor that Jim's change below comes first, then this tweak of the verb. Done</div><div> <a href="https://wiki.edg.com/pub/CFP/WebHome/treatment%20of%20error%20conditions%20proposal.pdf" target="_blank">https://wiki.edg.com/pub/CFP/WebHome/treatment%20of%20error%20conditions%20proposal.pdf</a><br></div><div><br></div><div> Damian: Split doc into 3 documents: complex.h intro, cproj, and editorial suggestions. Will carry over.</div><div><br> Jim: Submit proposal re. range errors for ilogb and llogb (3300). Done, closed.</div><div> <a href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3383.pdf" target="_blank">https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3383.pdf</a></div><div><br></div><div> Jim: Submit proposal re moving complex operators spec from Annex G to main body (3285), with an eye to fixing the rogue underscore-u references that Fred spotted. Done, but revised into updated action item.</div><div> <a href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3384.pdf" target="_blank">https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3384.pdf</a></div><div> <br></div><div><p class="MsoNormal"><b>TS-4 and TS-5 revisions<u></u><u></u></b></p><p class="MsoNormal"> Jim: New draft in cycle of edits arrived from ISO just minutes before this meeting. More to come.</p><p class="MsoNormal"><u></u> <u></u></p><p class="MsoNormal"><b>Discussion of issues</b></p><p class="MsoNormal"> SIGFPE</p><p class="MsoNormal"> <a href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3378.htm" target="_blank">https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3378.htm</a></p><p class="MsoNormal"> Fred: Finds further references to SIGFPE in the standard, some of which lead to undefined behavior. Fred lists 4 options for how to proceed with SIGFPE and is in contact with WG14.</p><p class="MsoNormal"> <a href="https://wiki.edg.com/pub/CFP/WebHome/n3378c.htm" target="_blank">https://wiki.edg.com/pub/CFP/WebHome/n3378c.htm</a></p><p class="MsoNormal"> Jim: One mitigating factor is that functions have other sources of undefined behavior. Propose that Fred post to WG14 to gauge their sense of limiting occurrences of SIGFPE.</p></div><div><br> fadd/fsub and fma "error may occur" issues<br> Jerome: Quick review of topic discussed at last meeting.</div><div><br></div><div> Treatment of error conditions<br> Jerome: Quick review.<br></div><div> Fred: ISO "may" balk at "can" vs. "may" occur, but we can submit and see how the editors reply.<br></div><div> Jim: Seems to address a confusing issue that has prevailed for some time.</div><div><br></div><div> Changes to 6.X and 7.X</div><div> Jim: Damian will send email just after the meeting for further discussion next time.</div><div><br> Moving complex operators spec from Annex G to main body</div><div> <a href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3384.pdf" target="_blank">https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3384.pdf</a></div><div> Jim: Elaborates on semantics discussion in 6.5.6, about computing A + iB. Got comments from first distribution about awkward wording and use of "should" in normative text. Discusses revised draft, with a Recommended Practice statement. Well received.</div><div><br> ERANGE question<br> Jim: In 3303, Paul Zimmermann asked about huge values rounding down to MAX. In 3305 Fred explained that ordinary rounding (vs. directed rounding) could lead to MAX without an overflow range error. Jim reviews the definition from 754. Double double complicates things, leading to much discussion. Suggest taking no further action.</div><div><br></div><div> Imaginary I</div><div> <a href="https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3390.htm" target="_blank">https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3390.htm</a></div><div> Jim: Explains WG14 proposal to remove I macro. It is claimed that with the i suffix that I is redundant. One matter is that without the imaginary type, the macro must be defined as a complex.<br></div><div> Damian: Could use CMPLX macro to define the I macro.</div><div> Jim: Keep on the agenda for a closer look. One issue is when we might see a draft with the imaginary i suffix and other approved changes related to complex. The current language seems to allow the imaginary types as an extension. Many details of recent changes must be checked if imaginary types are allowed.</div><div><br></div><div> i suffix warning<br> Jim: Suggests adding a note warning about the use of the i suffix to generate values with signed 0 and inf involved and advocating use of CMPLX macros instead.</div><div> Damian: It will be a forward reference (but there are plenty of them).<br><p class="MsoNormal"><br></p><p class="MsoNormal"><b>Other issues:<u></u><u></u></b></p><p class="MsoNormal"><b> </b>None.</p><div><p class="MsoNormal"><br></p><p class="MsoNormal"><b>Adjournment</b></p><p class="MsoNormal"> 9:37 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"> David: Draft reply to WG14 re midpoint and interpolation.<br></p><p class="MsoNormal"><br></p><p class="MsoNormal"> Damian: Split doc into 3 documents: complex.h intro, cproj, and editorial suggestions.</p><p class="MsoNormal"><br></p><p class="MsoNormal"><b>New action items:<u></u><u></u></b></p><p class="MsoNormal"> Fred: Submit SIGFPE suggestions to WG14 for comment.</p><p class="MsoNormal"><br></p><p class="MsoNormal"> Jerome: Submit fadd, fsub, etc. domain errors proposal to WG14. (Will require help from another member actually certified to submit to WG14.)</p><p class="MsoNormal"><br></p><p class="MsoNormal"> Jerome: Submit exception "occurs" proposal to WG14 (again, with support).</p><p class="MsoNormal"><br></p><p class="MsoNormal"> Jim: Submit revised complex operators proposal to WG14.</p><p class="MsoNormal"><br></p><p class="MsoNormal"> All: Continue study of the imaginary I macro and i suffix issues, noting that the I macro may be removed from C.</p><p class="MsoNormal"><br></p><p class="MsoNormal"> Jim: Write a proposal for use of CMPLX to generate desired values with signed 0 and inf when using the i suffix in a context with no imaginary values, just real and complex.</p></div><div><p class="MsoNormal"></p></div></div><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><br></div><div><b>Discussion issues to be carried over:</b></div><div><p class="MsoNormal"> None.<br></p><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>