<html xmlns:v="urn:schemas-microsoft-com:vml" 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" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:Helvetica;
        panose-1:2 11 6 4 2 2 2 2 2 4;}
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Verdana;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal">That’s exactly what I am doing.  As the current author of the C++ extended floating-point type proposal (P1467), I reached out to Jim and to CFP to make sure C and C++ stay in synch.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b>From:</b> Cfp-interest <cfp-interest-bounces@oakapple.net>
<b>On Behalf Of </b>JF Bastien<br>
<b>Sent:</b> Monday, June 1, 2020 7:05 PM<br>
<b>To:</b> Jim Thomas <jaswthomas@sbcglobal.net><br>
<b>Cc:</b> CFP <cfp-interest@ucbtest.org><br>
<b>Subject:</b> [Cfp-interest 1600] Re: promotion for binary interchange types<o:p></o:p></p>
</div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<table class="MsoNormalTable" border="1" cellpadding="0" style="background:#FFEB9C">
<tbody>
<tr>
<td style="padding:.75pt .75pt .75pt .75pt">
<p class="MsoNormal"><b><span style="font-size:7.5pt;font-family:"Verdana",sans-serif;color:black">External email: Use caution opening links or attachments</span></b><span style="font-size:7.5pt;font-family:"Verdana",sans-serif;color:black">
</span><o:p></o:p></p>
</td>
</tr>
</tbody>
</table>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<div>
<p class="MsoNormal">Can you please synchronize with the C++ committee so that compatible conclusions are reached?<o:p></o:p></p>
</div>
</div>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<p class="MsoNormal">On Mon, Jun 1, 2020 at 6:31 PM Jim Thomas <<a href="mailto:jaswthomas@sbcglobal.net">jaswthomas@sbcglobal.net</a>> wrote:<o:p></o:p></p>
</div>
<blockquote style="border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in">
<div>
<p class="MsoNormal">David Olsen raised the question of whether automatic promotions should be extended so that narrower (or no-wider) binary interchange types are promoted to double. This could allow printf arguments of types _Float16, _Float32, and _Float64,
 without adding width modifiers. Below is an email discussion between David Olsen and myself. We’ll discuss this at the June CFP meeting.
<o:p></o:p></p>
<div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
<div>
<p class="MsoNormal">- Jim Thomas<o:p></o:p></p>
<div>
<p class="MsoNormal"><br>
<br>
<o:p></o:p></p>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<p class="MsoNormal">Begin forwarded message:<o:p></o:p></p>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<p class="MsoNormal"><b><span style="font-family:"Helvetica",sans-serif;color:black">From:
</span></b><span style="font-family:"Helvetica",sans-serif">David Olsen <<a href="mailto:dolsen@nvidia.com" target="_blank">dolsen@nvidia.com</a>></span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><b><span style="font-family:"Helvetica",sans-serif;color:black">Subject:
</span></b><b><span style="font-family:"Helvetica",sans-serif">RE: [Cfp-interest 1597] TS3 annex review</span></b><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><b><span style="font-family:"Helvetica",sans-serif;color:black">Date:
</span></b><span style="font-family:"Helvetica",sans-serif">May 27, 2020 at 5:38:41 PM PDT</span><o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"><b><span style="font-family:"Helvetica",sans-serif;color:black">To:
</span></b><span style="font-family:"Helvetica",sans-serif">Jim Thomas <<a href="mailto:jaswthomas@sbcglobal.net" target="_blank">jaswthomas@sbcglobal.net</a>></span><o:p></o:p></p>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<div>
<div>
<div>
<p class="MsoNormal">Forwarding my messages to the CFP group is fine.  Thank you for adding it to the agenda.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">I assumed that the promotion of float to double and char/short to int is a hold-over from the K&R days when there were no function prototypes.  Doing the default promotions (both at the call site and in the function definitions) decreased
 the chance of a type mismatch between the argument and the parameter by converting things to the common int or double.  I would be surprised if it was a hardware accommodation.  With the near universality of function prototypes these days, this reasoning doesn’t
 apply any more, and the promotion rules are only used for the ellipsis part of variadic functions.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">I don’t have a list of pros or cons for whether or not to do these automatic promotions.  The only real pro is that you can pass the smaller binary floating-point types to printf (but not scanf).  I can’t think of any cons.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal">I don’t care about format specifiers for printf for the new floating-point types.  I am not proposing any for C++.  I asked only because what I was seeing didn’t match my memory of what I had seen before.  I must have seen the format specifiers
 for the decimal types, and then misremembered that as format specifiers for the binary interchange formats as well.<o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in">
<div>
<p class="MsoNormal"><b>From:</b> Jim Thomas <<a href="mailto:jaswthomas@sbcglobal.net" target="_blank">jaswthomas@sbcglobal.net</a>> <br>
<b>Sent:</b> Wednesday, May 27, 2020 11:17 AM<br>
<b>To:</b> David Olsen <<a href="mailto:dolsen@nvidia.com" target="_blank">dolsen@nvidia.com</a>><br>
<b>Subject:</b> Re: [Cfp-interest 1597] TS3 annex review<o:p></o:p></p>
</div>
</div>
</div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
<table class="MsoNormalTable" border="1" cellpadding="0" style="background:#FFEB9C">
<tbody>
<tr>
<td style="padding:.75pt .75pt .75pt .75pt">
<div>
<p class="MsoNormal"><b><span style="font-size:7.5pt;font-family:"Verdana",sans-serif">External email: Use caution opening links or attachments</span></b><o:p></o:p></p>
</div>
</td>
</tr>
</tbody>
</table>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
<div>
<div>
<p class="MsoNormal">I agree having C and C ++ be compatible on printf is desirable. I suspect the rationale for promoting float to double was to accommodate hardware that doesn't exist anymore. On the other hand it’s what C does and  promoting extension types
 in the manner you suggest might be ok. What are the pros and cons of these automatic promotions?<o:p></o:p></p>
</div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal">The three decimal floating types from TS2 (which is in the main body of the draft C standard now) have length modifiers for printf. The new types in TS3 (proposed for an annex) do not. The printf conversions for the TS3 types can be done
 with a %s applied to the result of a strfrom function with the desired formatting. We might could say _Float32 and _Float64 behave like float and double for varargs (they are already required to have the same representations and alignments). Then with automatic
 promotions as you suggest, _Float16, _Float32, and _Float64 could be used directly with printf. <o:p></o:p></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal">If it’s ok with you, I’ll forward our email discussion to the CFP group and say that this topic will be on the June agenda.<o:p></o:p></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal">- Jim<o:p></o:p></p>
</div>
<div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><o:p> </o:p></p>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<div>
<p class="MsoNormal">On May 26, 2020, at 12:00 PM, David Olsen <<a href="mailto:dolsen@nvidia.com" target="_blank">dolsen@nvidia.com</a>> wrote:<o:p></o:p></p>
</div>
</div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
<div>
<div>
<div>
<p class="MsoNormal">I have tentatively made the opposite decision for C++.  In P1467, any floating-point type whose set of values is a subset of the values of double is promoted to double when passed to the ellipsis part of a varargs functions.  That seemed
 like the right thing to do, like it was the intent behind the specific rule of promoting float to double.  I don’t feel strongly about that decision, and it hasn’t come up in any C++ committee discussions yet.<o:p></o:p></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal">I would be willing to let C and C++ diverge in this area because it is an obscure corner of the language and almost no C++ programmers write varargs functions any more. Except for one thing: printf.  That function is still used in C++,
 and most C++ implementations use the printf directly from the C library.  So C++ really needs to match C’s behavior for printf, and therefore should match C for all varargs functions.<o:p></o:p></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal">Are printf/scanf format specifiers being proposed for the interchange floating types?  I thought I remembered seeing format specifiers in some other document, but I can’t find them in the document you posted yesterday.  (If all smaller
 floating-point types are promoted to double, then users can pass _Float16 and _Float32 values to printf without needing to define a format specifier for those types.)<o:p></o:p></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal">I would like the CFP group to discuss the issue of interchange floating types and varargs functions.  I don’t really care what decision is made, whether to promote or not.  I just want it to be an informed decision and not an oversight. 
 Then I will probably just do the same on the C++ side.<o:p></o:p></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in">
<div>
<div>
<p class="MsoNormal"><b>From:</b> Jim Thomas <<a href="mailto:jaswthomas@sbcglobal.net" target="_blank">jaswthomas@sbcglobal.net</a>> <br>
<b>Sent:</b> Tuesday, May 26, 2020 8:24 AM<br>
<b>To:</b> David Olsen <<a href="mailto:dolsen@nvidia.com" target="_blank">dolsen@nvidia.com</a>><br>
<b>Subject:</b> Re: [Cfp-interest 1597] TS3 annex review<o:p></o:p></p>
</div>
</div>
</div>
</div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
<table class="MsoNormalTable" border="1" cellpadding="0" style="background:#FFEB9C">
<tbody>
<tr>
<td style="padding:.75pt .75pt .75pt .75pt">
<div>
<div>
<p class="MsoNormal"><b><span style="font-size:7.5pt;font-family:"Verdana",sans-serif">External email: Use caution opening links or
<span style="color:black">attachments</span></span></b><o:p></o:p></p>
</div>
</div>
</td>
</tr>
</tbody>
</table>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
<div>
<div>
<div>
<p class="MsoNormal">Thanks, David. I’ll forward this to the review team. My first thought is that the float to double promotion is legacy from K&R C and double-based floating-point hardware and there wasn’t seen a technical reason for extending it to the extension
 types. <o:p></o:p></p>
</div>
</div>
<div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
</div>
<div>
<div>
<div>
<p class="MsoNormal">- Jim<o:p></o:p></p>
</div>
</div>
<div>
<div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><br>
<br>
<o:p></o:p></p>
</div>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<div>
<div>
<p class="MsoNormal">On May 25, 2020, at 10:26 PM, David Olsen <<a href="mailto:dolsen@nvidia.com" target="_blank">dolsen@nvidia.com</a>> wrote:<o:p></o:p></p>
</div>
</div>
</div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
<div>
<div>
<div>
<div>
<p class="MsoNormal">Something just occurred to me while glancing over the TS3 annex:<o:p></o:p></p>
</div>
</div>
</div>
<div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
</div>
<div>
<div>
<div>
<p class="MsoNormal">Should the default argument promotion rules (<a href="http://6.5.2.2/p6" target="_blank">6.5.2.2/p6</a>) be adjusted to cover binary floating types?  In other words, should _Float16 and _Float32 function arguments be promoted to double
 when passed to the varargs part of a varargs function, the same way that float arguments are?<o:p></o:p></p>
</div>
</div>
</div>
<div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
</div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-family:"Courier New"">void vfunc(int a, ...);</span><o:p></o:p></p>
</div>
</div>
</div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-family:"Courier New"">void testing() {</span><o:p></o:p></p>
</div>
</div>
</div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-family:"Courier New"">  float f = 1.0;</span><o:p></o:p></p>
</div>
</div>
</div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-family:"Courier New"">  _Float16 f16 = 2.0;</span><o:p></o:p></p>
</div>
</div>
</div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-family:"Courier New"">  _Float32 f32 = 3.0;</span><o:p></o:p></p>
</div>
</div>
</div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-family:"Courier New"">  vfunc(1, f); /* “f” is promoted to double */</span><o:p></o:p></p>
</div>
</div>
</div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-family:"Courier New"">  vfunc(2, f16); /* should “f16” be promoted to double? */</span><o:p></o:p></p>
</div>
</div>
</div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-family:"Courier New"">  vfunc(3, f32); /* should “f32” be promoted to double? */</span><o:p></o:p></p>
</div>
</div>
</div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-family:"Courier New"">}</span><o:p></o:p></p>
</div>
</div>
</div>
<div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
</div>
<div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
</div>
<div>
<div style="border:none;border-top:solid #E1E1E1 1.0pt;padding:3.0pt 0in 0in 0in">
<div>
<div>
<div>
<p class="MsoNormal"><b>From:</b> Cfp-interest <<a href="mailto:cfp-interest-bounces@oakapple.net" target="_blank">cfp-interest-bounces@oakapple.net</a>> <b>On Behalf Of </b>Jim Thomas<br>
<b>Sent:</b> Monday, May 25, 2020 8:52 PM<br>
<b>To:</b> CFP <<a href="mailto:cfp-interest@ucbtest.org" target="_blank">cfp-interest@ucbtest.org</a>><br>
<b>Subject:</b> [Cfp-interest 1597] Re: TS3 annex review<o:p></o:p></p>
</div>
</div>
</div>
</div>
</div>
<div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
</div>
<table class="MsoNormalTable" border="1" cellpadding="0" style="background:#FFEB9C">
<tbody>
<tr>
<td style="padding:.75pt .75pt .75pt .75pt">
<div>
<div>
<div>
<p class="MsoNormal"><b><span style="font-size:7.5pt;font-family:"Verdana",sans-serif">External email: Use caution opening links or attachments</span></b><o:p></o:p></p>
</div>
</div>
</div>
</td>
</tr>
</tbody>
</table>
<div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
</div>
<div>
<div>
<div>
<div>
<p class="MsoNormal">The message below was intended for the review team, not the entire CFP list. <o:p></o:p></p>
</div>
</div>
</div>
<div>
<div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
</div>
</div>
<div>
<div>
<div>
<div>
<p class="MsoNormal">However, comments from anyone are welcome. If you’re not on the review team, please send any comments you have to me and I’ll forward them to the review team.<o:p></o:p></p>
</div>
</div>
</div>
</div>
<div>
<div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
</div>
</div>
<div>
<div>
<div>
<div>
<p class="MsoNormal">Jim Thomas<o:p></o:p></p>
</div>
</div>
</div>
<div>
<div>
<div>
<div>
<p class="MsoNormal" style="margin-bottom:12.0pt"><br>
<br>
<br>
<o:p></o:p></p>
</div>
</div>
</div>
<blockquote style="margin-top:5.0pt;margin-bottom:5.0pt">
<div>
<div>
<div>
<div>
<p class="MsoNormal">On May 25, 2020, at 5:15 PM, Jim Thomas <<a href="mailto:jaswthomas@sbcglobal.net" target="_blank">jaswthomas@sbcglobal.net</a>> wrote:<o:p></o:p></p>
</div>
</div>
</div>
</div>
<div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
</div>
<div>
<div>
<div>
<div>
<div>
<div>
<p class="MsoNormal">Review team,<o:p></o:p></p>
</div>
</div>
</div>
</div>
<div>
<div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
</div>
</div>
<div>
<div>
<div>
<div>
<p class="MsoNormal">Thank you for volunteering to help with the review of our updated proposed TS3 annex. <span style="font-size:12.0pt;font-family:"Arial",sans-serif">We’re reviewing the document in preparation for submittal to WG 14. If WG 14 affirms is
 earlier decision, the TS3 annex will be added to the C2X draft. If not, we plan to include it in an updated TS3. Either way, your review is a valuable service to everyone who will be completing, publishing, implementing, or using the specification in the future.</span><o:p></o:p></p>
</div>
</div>
</div>
</div>
<div>
<div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
</div>
</div>
<div>
<div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Arial",sans-serif">Look for all sorts of errors, technical and editorial. </span><span style="font-size:12.0pt;font-family:"Arial",sans-serif">Send comments to me and cc the review team. I’m proposing
 you complete your review and send comments by <b>Monday, June 8</b>.</span><o:p></o:p></p>
</div>
</div>
</div>
</div>
</div>
<div>
<div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
</div>
</div>
<div>
<div>
<div>
<div>
<p class="MsoNormal">Here are the assignments (from our meeting minutes):<o:p></o:p></p>
</div>
</div>
</div>
</div>
<div>
<div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
</div>
</div>
<div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Arial",sans-serif">        X.2 Types - <br>
        X.3 Characteristics in <float.h> - <br>
        X.4 Conversions - David H.<br>
        X.5-X.8 Lexical elements, Expressions, Declarations, Identifiers in standard headers - Rajan<br>
        X.9, X.10 Complex, Floating-point environment - Damian<br>
        X.11 (X.11.1, X.11.2) Math Macros and Function prototypes - Fred<br>
        X.11.3, X.12 Encoding conversion functions, Numeric conversions functions in stdlib.h - David H.<br>
        X.13 Type-generic math - Fred</span><o:p></o:p></p>
</div>
</div>
</div>
</div>
<div>
<div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
</div>
</div>
<div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Arial",sans-serif">Here are links to PDF and DOCX representations of the document for review (use whichever you prefer):</span><o:p></o:p></p>
</div>
</div>
</div>
</div>
<div>
<div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
</div>
</div>
<div>
<div>
<div>
<div>
<p class="MsoNormal"><a href="http://wiki.edg.com/pub/CFP/WebHome/cfp3-annex-20200525.pdf" target="_blank">http://wiki.edg.com/pub/CFP/WebHome/cfp3-annex-20200525.pdf</a><o:p></o:p></p>
</div>
</div>
</div>
</div>
<div>
<div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
</div>
</div>
<div>
<div>
<div>
<div>
<p class="MsoNormal"><a href="http://wiki.edg.com/pub/CFP/WebHome/cfp3-annex-20200525.d" target="_blank">http://wiki.edg.com/pub/CFP/WebHome/cfp3-annex-20200525.d</a>ocx<o:p></o:p></p>
</div>
</div>
</div>
</div>
<div>
<div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
</div>
</div>
<div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Arial",sans-serif">The references in the document to the C standard are to the C2X draft: </span><o:p></o:p></p>
</div>
</div>
</div>
</div>
<div>
<div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
</div>
</div>
<div>
<div>
<div>
<div>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Arial",sans-serif"><a href="http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2478.pdf" target="_blank">http://www.open-std.org/jtc1/sc22/wg14/www/docs/n2478.pdf</a></span><o:p></o:p></p>
</div>
</div>
</div>
</div>
<div>
<div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
</div>
</div>
<div>
<div>
<div>
<div>
<p class="MsoNormal"> <o:p></o:p></p>
</div>
</div>
</div>
</div>
<div>
<div>
<div>
<div>
<p class="MsoNormal">- Jim Thomas<o:p></o:p></p>
</div>
</div>
</div>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</div>
</div>
</blockquote>
</div>
</div>
</div>
</div>
</div>
</blockquote>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div>
<p class="MsoNormal">_______________________________________________<br>
Cfp-interest mailing list<br>
<a href="mailto:Cfp-interest@oakapple.net" target="_blank">Cfp-interest@oakapple.net</a><br>
<a href="http://mailman.oakapple.net/mailman/listinfo/cfp-interest" target="_blank">http://mailman.oakapple.net/mailman/listinfo/cfp-interest</a><o:p></o:p></p>
</blockquote>
</div>
</div>
</div>
</div>
</body>
</html>