<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><div style="margin: 0px; font-stretch: normal; line-height: normal; font-family: "Helvetica Neue";" class="">Here’s an issue I noticed when reviewing the C2X drafts:</div><div style="margin: 0px; font-stretch: normal; line-height: normal; font-family: "Helvetica Neue";" class=""><br class=""></div><div style="margin: 0px; font-stretch: normal; line-height: normal; font-family: "Helvetica Neue";" class="">Previously, floating constants were always evaluated at translation time, using default rounding. Now, with TS 18661-1 and 2, constant rounding modes set by the FENV_ROUND and FENV_DEC_ROUND pragmas affect floating constants within the scope of the pragma. A C floating constant does not include a sign, which C regards as a unary operator. Thus, rounding of a negated constant (e.g., -0.1) is done before negation, which for rounding up or down is undesirable, and is unlike the treatment of the corresponding string (“-0.1”) by the strtod family as required by F.5. </div><div style="margin: 0px; font-stretch: normal; line-height: normal; font-family: "Helvetica Neue";" class=""><br class=""></div><div style="margin: 0px; font-stretch: normal; line-height: normal; font-family: "Helvetica Neue";" class=""><br class=""></div><div style="margin: 0px; font-stretch: normal; line-height: normal; font-family: "Helvetica Neue";" class="">- Jim Thomas</div><div class=""><br class=""></div></body></html>