<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;"><meta http-equiv="content-type" content="text/html; charset=utf-8"><div style="overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;"><meta http-equiv="content-type" content="text/html; charset=utf-8"><div style="overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;"><div dir="auto" style="overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;">Here is a suggestion for changes to ISO/IEC TS 18661-4:2025 to address Issue #1014: Error handling in `<reduc.h>` and `<augarith.h>`:</div><div><br></div><div dir="auto" style="overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;"><br></div><div dir="auto" style="overflow-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;">In 6.1, before the paragraph beginning “For each of the following synopses, …”, and also in 7.1, before the paragraph beginning "For each of the following synopses, …”, add the paragraph:<div><br></div><blockquote style="margin: 0 0 0 40px; border: none; padding: 0px;"><div><font color="#669c35">For the terms “domain error” and “range error” used in the following subclauses, the specification in C23 7.12.2 pertains as though the functions were declared in <font face="Courier New"><math.h></font>.</font></div></blockquote><div><div><br></div><div>- Jim Thomas</div><div><br></div><div><blockquote type="cite"><br class="Apple-interchange-newline"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px;"><span style="font-family: -webkit-system-font, Helvetica Neue, Helvetica, sans-serif; color:rgba(0, 0, 0, 1.0);"><b>From: </b></span><span style="font-family: -webkit-system-font, Helvetica Neue, Helvetica, sans-serif;">Joseph Myers <josmyers@redhat.com><br></span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px;"><span style="font-family: -webkit-system-font, Helvetica Neue, Helvetica, sans-serif; color:rgba(0, 0, 0, 1.0);"><b>Subject: </b></span><span style="font-family: -webkit-system-font, Helvetica Neue, Helvetica, sans-serif;"><b>[SC22WG14.30159] New issue #1014: Error handling in `<reduc.h>` and `<augarith.h>`</b><br></span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px;"><span style="font-family: -webkit-system-font, Helvetica Neue, Helvetica, sans-serif; color:rgba(0, 0, 0, 1.0);"><b>Date: </b></span><span style="font-family: -webkit-system-font, Helvetica Neue, Helvetica, sans-serif;">March 27, 2025 at 3:20:52 PM PDT<br></span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px;"><span style="font-family: -webkit-system-font, Helvetica Neue, Helvetica, sans-serif; color:rgba(0, 0, 0, 1.0);"><b>To: </b></span><span style="font-family: -webkit-system-font, Helvetica Neue, Helvetica, sans-serif;">sc22wg14@open-std.org<br></span></div><br><div><div>The following new C standard issue has been submitted.<br><br>https://www.open-std.org/jtc1/sc22/wg14/issues/cfp-c23/issue1014.html<br><br>## Issue 1014: Error handling in `<reduc.h>` and `<augarith.h>`<br><br>Authors: Joseph Myers  <br>Date: 2025-03-27  <br>Submitted against: Floating-point TS 18661 (C23 version, 2025)  <br>Status: Open<br><br>TS 18661-4:2025 talks about domain errors and range errors for<br>functions in `<reduc.h>` and `<augarith.h>`.<br><br>In the first (2015) edition of TS 18661-4, the functions were<br>described as being added to `<math.h>` so it was clear that the error<br>handling semantics for `<math.h>` described in the C standard applied.<br>With the functions now being in new headers, it is no longer clear<br>whether those semantics (C23 7.12.2 (Treatment of error conditions))<br>apply to these functions, or whether different semantics might apply<br>(such as the `<complex.h>` semantics where setting `errno` is optional<br>even when the value of `math_errhandling` means it must be set by<br>`<math.h>` functions).<br><br>An explicit statement should be added, either applying the rules from<br>`<math.h>` to error handling for functions in the new headers, or<br>stating how error handling requirements differ from those in<br>`<math.h>`.  (No specific wording is proposed here.)<br><br></div></div></blockquote></div><br></div></div></div></div></body></html>