<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML xmlns="http://www.w3.org/TR/REC-html40" xmlns:o =
"urn:schemas-microsoft-com:office:office" xmlns:w =
"urn:schemas-microsoft-com:office:word" xmlns:m =
"http://schemas.microsoft.com/office/2004/12/omml"><HEAD>
<META content="text/html; charset=us-ascii" http-equiv=Content-Type>
<META name=GENERATOR content="MSHTML 11.00.9600.19431">
<STYLE>@font-face {
font-family: Cambria Math;
}
@font-face {
font-family: Calibri;
}
@page WordSection1 {size: 8.5in 11.0in; margin: 1.0in 1.0in 1.0in 1.0in; }
P.MsoNormal {
FONT-SIZE: 11pt; FONT-FAMILY: "Calibri",sans-serif; MARGIN: 0in
}
LI.MsoNormal {
FONT-SIZE: 11pt; FONT-FAMILY: "Calibri",sans-serif; MARGIN: 0in
}
DIV.MsoNormal {
FONT-SIZE: 11pt; FONT-FAMILY: "Calibri",sans-serif; MARGIN: 0in
}
A:link {
TEXT-DECORATION: underline; COLOR: #0563c1; mso-style-priority: 99
}
SPAN.MsoHyperlink {
TEXT-DECORATION: underline; COLOR: #0563c1; mso-style-priority: 99
}
.MsoChpDefault {
FONT-SIZE: 10pt; FONT-FAMILY: "Calibri",sans-serif; mso-style-type: export-only
}
DIV.WordSection1 {
page: WordSection1
}
</STYLE>
</HEAD>
<BODY lang=EN-US style="WORD-WRAP: break-word" link=#0563c1 vLink=#954f72>
<DIV dir=ltr align=left><SPAN class=127251920-05012023><FONT color=#0000ff
size=2 face=Arial>As always .. many thanks for the excellent
notes!</FONT></SPAN></DIV>
<DIV dir=ltr align=left><SPAN class=127251920-05012023><FONT color=#0000ff
size=2 face=Arial></FONT></SPAN> </DIV>
<DIV dir=ltr align=left><SPAN class=127251920-05012023><FONT color=#0000ff
size=2 face=Arial>Mike</FONT></SPAN></DIV><BR>
<BLOCKQUOTE
style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #0000ff 2px solid; MARGIN-RIGHT: 0px"
dir=ltr>
<DIV lang=en-us class=OutlookMessageHeader dir=ltr align=left>
<HR tabIndex=-1>
<FONT size=2 face=Tahoma><B>From:</B> Cfp-interest
[mailto:cfp-interest-bounces@oakapple.net] <B>On Behalf Of </B>Rajan
Bhakta<BR><B>Sent:</B> 05 January 2023 17:52<BR><B>To:</B>
CFP<BR><B>Subject:</B> [Cfp-interest 2590] Preliminary WG14 IEEE 754-C binding
meetingminutes - 2023/01/05<BR></FONT><BR></DIV>
<DIV></DIV>
<DIV class=WordSection1>
<P class=MsoNormal><B>Attendees</B>: Rajan, Jim, Damian, David H, Fred</P>
<P class=MsoNormal><o:p> </o:p></P>
<P class=MsoNormal><B>Continuing NB comment discussion:<o:p></o:p></B></P>
<P class=MsoNormal> Missed issues (from yesterday):</P>
<P class=MsoNormal> GB14: Jim: If the constants
are wider, you can't use them with constexpr since there is a change in
value.</P>
<P class=MsoNormal> Fred: You can
add a cast since they are allowed for arithmetic constant expressions.</P>
<P class=MsoNormal> Damian: Can't
you do "constexpr float a = (float)5.0;"?</P>
<P class=MsoNormal> Jim: Yes, though
rounding direction can change it. There is another comment for that. -
Agreed.</P>
<P class=MsoNormal> US5-18: No issues. -
Agreed.</P>
<P class=MsoNormal><o:p> </o:p></P>
<P class=MsoNormal> Revisit issues needing a look:</P>
<P class=MsoNormal> US26-75: Jim: The problem
with Fred's approach would vary between implementations. Ex. One could only do
the default rounding mode so the constexpr evaluation would be valid on that
implementation but not in another.</P>
<P class=MsoNormal> Rajan: Not an
issue for strictly conforming programs.</P>
<P class=MsoNormal> Jim: Lets look
at GB279 first and come back to this. It is related.</P>
<P class=MsoNormal> GB279: Jim: Why can't it
have the same semantics as static initialization?</P>
<P class=MsoNormal> Damian: The
benefit of constexpr allows constexpr variables to be used on the right hand
side of other constexpr initializations.</P>
<P class=MsoNormal> Jim: So looking
at "like static" or "independence of mode". This means "constexpr double x =
(double)(1.0/3.0);" would be a constraint violation for independence of mode
but not for static.</P>
<P class=MsoNormal> Rajan: We could
propose both and let WG14 decide.</P>
<P class=MsoNormal> Fred: Probably
the best choice.</P>
<P class=MsoNormal> Damian:
constexpr can use auto/register/static as well. See 6.7.1#14 for a similar
example.</P>
<P class=MsoNormal> Jim: Doesn't
change the rounding mode. Can say "for determination of constraint violations,
the translation time mode is assumed."</P>
<P class=MsoNormal> Rajan: Mode
should be state or something else since it is not just rounding mode.</P>
<P class=MsoNormal> Jim: Right, wide
evaluation would also effect this.</P>
<P class=MsoNormal> ^ToDo: Jim: Look
to provide words for constexpr float issues saying something like "for
determination of constraint violations, the translation time state is assumed"
for GB279 and US26-75.</P>
<P class=MsoNormal> Jim: What does
this do to C++ compatibility? Side issue.</P>
<P class=MsoNormal> GB127: No issues. -
Agreed.</P>
<P class=MsoNormal> Fred: 6.7.10#11
is the related clause in the standard.</P>
<P class=MsoNormal> GB151: Jim: Issues with -0
and +0, since they are equal but not equivalent. Instead we can say "For a
complex variable z, z and CMPLX(…) are equivalent expressions, and z and
creal(z) … are equivalent expressions if imaginary types are supported." -
Mostly agreed.</P>
<P class=MsoNormal> GB157: No issues. -
Agreed.</P>
<P class=MsoNormal> GB163: No issues. -
Agreed.</P>
<P class=MsoNormal> GB286: Jim: Add in 7.33.20
post paragraph 1 saying wcstofN are reserved for wide character analogs of the
strtofN functions. - Agreed.</P>
<P class=MsoNormal> GB287: Jim: Suggested change
is too large at this stage. Instead change 7.24.1.6#4 bullet 1 from "it is not
a hexadecimal floating number" to "Whether the subject sequence may be
hexadecimal floating number is implementation defined" with Recommended
Practice being "Rounding for hexadecimal input should follow the method in
H.12.2". Also update the "0x1.8p+4" example to say "If hexadecimal input is
accepted (+1, 24, 0). If hexadecimal input is not accepted, ".</P>
<P class=MsoNormal> Fred: Should we
add to future directions that strtod will accept hexadecimal input in the
future.</P>
<P class=MsoNormal> Rajan: I
disagree. We don't know if WG14 will accept that.</P>
<P class=MsoNormal> Fred: Should we
have a feature test macro for this then?</P>
<P class=MsoNormal> Jim: Want to
keep it as simple as possible right now. - Agreed.</P>
<P class=MsoNormal> GB288: Jim: Updated the text
in the 20230105 document. - Agreed.</P>
<P class=MsoNormal> Fred: Can you
get an exact value for a value smaller than one so the preferred exponent
wouldn't be zero?</P>
<P class=MsoNormal> Jim: 0.8. That's
exact.</P>
<P class=MsoNormal> Fred: My concern
is you are requiring the preferred quantum exponent to be zero for exact. It
should be as close to zero as possible.</P>
<P class=MsoNormal> Jim: That is the
meaning of preferred quantum exponent. It is not the quantum exponent.</P>
<P class=MsoNormal><o:p> </o:p></P>
<DIV>
<DIV>
<P class=MsoNormal><SPAN style="COLOR: #212121">Regards,<BR><BR><B>Rajan
Bhakta</B><BR>z/OS XL C/C++ Compiler Technical Architect<BR>ISO C Standards
Representative (Canada, USA), PL22.11 Chair<BR>C/C++ Compiler
Development</SPAN><SPAN
style="FONT-SIZE: 10pt; COLOR: #212121"><o:p></o:p></SPAN></P>
<P class=MsoNormal><A href="mailto:rbhakta@us.ibm.com"><SPAN
style="COLOR: #0078d7">rbhakta@us.ibm.com</SPAN></A><SPAN
style="FONT-SIZE: 10pt; COLOR: #212121"><o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #212121"> </SPAN><SPAN
style="FONT-SIZE: 10pt; COLOR: #212121"><o:p></o:p></SPAN></P>
<P class=MsoNormal><SPAN style="COLOR: #212121">IBM</SPAN><SPAN
style="FONT-SIZE: 10pt; COLOR: #212121"><o:p></o:p></SPAN></P></DIV></DIV>
<P class=MsoNormal><o:p> </o:p></P></DIV></BLOCKQUOTE></BODY></HTML>