$include_dir="/home/hyper-archives/boost-commit/include"; include("$include_dir/msg-header.inc") ?>
Subject: [Boost-commit] svn:boost r83963 - in sandbox/precision/libs/precision/doc: . html html/precision
From: pbristow_at_[hidden]
Date: 2013-04-19 07:53:18
Author: pbristow
Date: 2013-04-19 07:53:17 EDT (Fri, 19 Apr 2013)
New Revision: 83963
URL: http://svn.boost.org/trac/boost/changeset/83963
Log:
Added new file for just plain html version of standard section.
Added:
   sandbox/precision/libs/precision/doc/n3626 standard.html   (contents, props changed)
Text files modified: 
   sandbox/precision/libs/precision/doc/html/index.html                 |     2 +-                                      
   sandbox/precision/libs/precision/doc/html/precision/thestandard.html |     4 ++--                                    
   sandbox/precision/libs/precision/doc/html/precision/version_id.html  |     2 +-                                      
   sandbox/precision/libs/precision/doc/precision.qbk                   |     2 +-                                      
   4 files changed, 5 insertions(+), 5 deletions(-)
Modified: sandbox/precision/libs/precision/doc/html/index.html
==============================================================================
--- sandbox/precision/libs/precision/doc/html/index.html	(original)
+++ sandbox/precision/libs/precision/doc/html/index.html	2013-04-19 07:53:17 EDT (Fri, 19 Apr 2013)
@@ -78,7 +78,7 @@
   </p>
 </div>
 <table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
-<td align="left"><p><small>Last revised: April 18, 2013 at 13:32:31 GMT</small></p></td>
+<td align="left"><p><small>Last revised: April 19, 2013 at 11:52:23 GMT</small></p></td>
 <td align="right"><div class="copyright-footer"></div></td>
 </tr></table>
 <hr>
Modified: sandbox/precision/libs/precision/doc/html/precision/thestandard.html
==============================================================================
--- sandbox/precision/libs/precision/doc/html/precision/thestandard.html	(original)
+++ sandbox/precision/libs/precision/doc/html/precision/thestandard.html	2013-04-19 07:53:17 EDT (Fri, 19 Apr 2013)
@@ -178,8 +178,8 @@
       that they all use the same endianness and the same use of denormals.
     </p>
 <p>
-      The header <code class="computeroutput"><span class="identifier">stdfloat</span><span class="special">.</span><span class="identifier">h</span></code> should also contain all necessary C function
-      macros in the form shown below.
+      The header <code class="computeroutput"><span class="identifier">stdfloat</span><span class="special">.</span><span class="identifier">h</span></code> (called by <code class="computeroutput"><span class="special"><</span><span class="identifier">cstdfloat</span><span class="special">></span></code>
+      should also contain all necessary C function macros in the form shown below.
     </p>
 <pre class="programlisting"><span class="identifier">FLOAT</span><span class="special">{</span><span class="number">16</span> <span class="number">32</span> <span class="number">64</span> <span class="number">80</span> <span class="number">128</span> <span class="identifier">MAX</span><span class="special">}</span><span class="identifier">_C</span>
 </pre>
Modified: sandbox/precision/libs/precision/doc/html/precision/version_id.html
==============================================================================
--- sandbox/precision/libs/precision/doc/html/precision/version_id.html	(original)
+++ sandbox/precision/libs/precision/doc/html/precision/version_id.html	2013-04-19 07:53:17 EDT (Fri, 19 Apr 2013)
@@ -26,7 +26,7 @@
 <a name="precision.version_id"></a><a class="link" href="version_id.html" title="Version Info">Version Info</a>
 </h2></div></div></div>
 <p>
-      Last edit to Quickbook file precision.qbk was at 02:32:31 PM on 2013-Apr-18.
+      Last edit to Quickbook file precision.qbk was at 12:52:23 PM on 2013-Apr-19.
     </p>
 <div class="tip"><table border="0" summary="Tip">
 <tr>
Added: sandbox/precision/libs/precision/doc/n3626 standard.html
==============================================================================
--- (empty file)
+++ sandbox/precision/libs/precision/doc/n3626 standard.html	2013-04-19 07:53:17 EDT (Fri, 19 Apr 2013)
@@ -0,0 +1,135 @@
+<HTML><HEAD><TITLE>N3626, Proposal for Unbounded-Precision Integer Types</TITLE></HEAD><BODY>
+
+<CENTER>
+<H1><A NAME="N3626, Proposal for floating-point-typedefs Having Specified Widths">Proposal for floating-point-typedefs Having Specified Widths</A></H1>
+</CENTER>
+
+<TABLE ALIGN="RIGHT" CELLSPACING="0" CELLPADDING="0">
+<TR>
+<TD ALIGN="RIGHT"><B><I>Document number:</I></B></TD>
+<TD>  N3626</TD>
+</TR>
+<TR>
+<TD ALIGN="RIGHT"><B><I>Date:</I></B></TD>
+<TD>  2013-04-18</TD>
+</TR>
+<TR>
+<TD ALIGN="RIGHT"><B><I>Revises part of:</I></B></TD>
+<TD>  N3636</TD>
+</TR>
+<TD ALIGN="RIGHT"><B><I>Also part of:</I></B></TD>
+<TD>  N1703</TD>
+</TR>
+
+<TR>
+<TD ALIGN="RIGHT"><B><I>Project:</I></B></TD>
+<TD>  Programming Language C++</TD>
+</TR>
+<TR>
+<TD ALIGN="RIGHT"><B><I>Reference:</I></B></TD>
+<TD>  ISO/IEC IS 14882:2011(E)</TD>
+</TR>
+<TR>
+<TD ALIGN="RIGHT"><B><I>Reply to:</I></B></TD>
+<TD>  Paul A. Bristow</TD>
+</TR>
+<TR>
+<TD></TD>
+<TD>  Boost.org.</TD>
+</TR>
+<TR>
+<TD></TD>
+<TD>  pbristow_at_[hidden]</TD>
+</TR>
+</TABLE>
+<BR CLEAR="ALL">
+
+<HR>
+
+<H2><A NAME="header_stdfloat">Header <code><stdfloat></code>
+synopsis</A></H2>
+
+<pre><code>namespace std
+{
+
+    typedef floating-point-type float8_t;   // optional (See note 1).
+    typedef floating-point-type float16_t;   // optional (See note 2).
+    typedef floating-point-type float24_t;   // optional (See note 3.
+    typedef floating-point-type float32_t;   // optional (See note 4).
+    typedef floating-point-type float64_t;   // optional (See note 5).
+    typedef floating-point-type float80_t;   // optional (See note 6).
+    typedef floating-point-type float128_t;  // optional (See note 7).
+    typedef floating-point-type floatmax_t;  // optional (largest floating-point-type available).
+
+    typedef floating-point-type float_least16_t;  // optional.
+    typedef floating-point-type float_least32_t;  // optional.
+    typedef floating-point-type float_least64_t;  // optional.
+    typedef floating-point-type float_least128_t; // optional.
+
+    typedef floating-point-type float_fast16_t;  // optional.
+    typedef floating-point-type float_fast32_t;  // optional.
+    typedef floating-point-type float_fast64_t;  // optional.
+    typedef floating-point-type float_fast80_t;  // optional.
+    typedef floating-point-type float_fast128_t; // optional.
+
+} /* namespace std */
+
+</code></pre>
+
+<p>Notes
+</p>
+
+
+<ol>
+<li>There is no IEEE754/IEC559 specification for a 8-bit floating-point type, so the layout is implementation dependent.
+The type should occupy exactly 8 bits to allow optimisation.</li>
+<li>There is no IEEE754/IEC559 specification for a 24-bit floating-point type, so the layout is implementation dependent.</li>
+<li>IEEE754 Half precision.</li>
+<li>IEEE754 Single precision.</li>
+<li>IEEE754 Double precision.</li>
+<li>IEEE754 Extended precision. This type may be implemented using 128 bits, with padding.
+The size and location of any padding is implementation dependent, so this type is unlikely to be suitable for binary interchange.</li>
+<li>IEEE754 Quadruple precision.</li>
+<li>The use of denormals is implementation dependent, but can be determined for any type T from 
+<code>std::numeric_limits<T>::has_denorm, denorm_min</code> and <code>float_denorm_style.</code></li>
+<li>If cooperating programs wish to try to use binary interchange for IEEE754/IEC559 types of <code>float_N_t</code>,
+for example for serialization,
+because the endianness of the layout of the floating-point types is not specified (but may be determined)
+therefore programs must ensure that they all use the same endianness and the same use of denormals.</li>
+</ol>
+
+<p>The header <code>stdfloat.h</code> should also contain all necessary C function macros in the form shown below.
+<p/>
+<code><pre>
+  FLOAT{16 32 64 80 128 MAX}_C
+</code></pre>
+
+<p>The code below, for example, initializes a constant <code>float128_t</code> value using one of these macros.</p>
+<code><pre>
+  #include stdfloat.h
+
+  constexpr std::float128_t euler = FLOAT128_C(0.57721566490153286060651209008240243104216);
+</code></pre>
+
+<p>The following code initializes a constant <code>float16_t </code> value using another one of these macros.</p>
+<code><pre>
+  const std::float16_t euler = FLOAT16_C(0.577216);
+</code></pre>
+
+<p>In addition, the header <code>stdfloat.h</code> and <code><cstdfloat> </code>should contain all necessary macros of the form:</p>
+<code><pre>
+  FLOAT_[FAST LEAST]{16 32 64 80 128}_MIN
+  FLOAT_[FAST LEAST]{16 32 64 80 128}_MAX
+  FLOATMAX_MIN
+  FLOATMAX_MAX
+</code></pre>
+
+<p>These macros can be used to query the ranges of the optional floating-point typedefs having specified widths at compile-time. For example, </p>
+<code><pre>
+  #include <limits>
+  #include <cstdfloat>  // or #include stdfloat.h
+
+  static_assert(FLOATMAX_MAX > (std::numeric_limits<float>::max)(),
+              "The iec559 floating-point range is too small.");
+</code></pre>
+</BODY></HTML>
Modified: sandbox/precision/libs/precision/doc/precision.qbk
==============================================================================
--- sandbox/precision/libs/precision/doc/precision.qbk	(original)
+++ sandbox/precision/libs/precision/doc/precision.qbk	2013-04-19 07:53:17 EDT (Fri, 19 Apr 2013)
@@ -463,7 +463,7 @@
 because the endianness of the layout of the floating-point types is not specified (but may be determined)
 therefore programs must ensure that they all use the same endianness and the same use of denormals.
 
-The header `stdfloat.h` should also contain all necessary C function macros in the form shown below.
+The header `stdfloat.h` (called by `<cstdfloat>` should also contain all necessary C function macros in the form shown below.
 
   FLOAT{16 32 64 80 128 MAX}_C