Browse Source

Rework page in response to questions from Greg Comeau

[SVN r11215]
Beman Dawes 25 years ago
parent
commit
e49c72938a
1 changed files with 191 additions and 46 deletions
  1. 191 46
      status/compiler_status.html

+ 191 - 46
status/compiler_status.html

@@ -25,6 +25,15 @@ content="text/html; charset=iso-8859-1">
 
 <h1>Compiler Status</h1>
 
+
+<p><a href="#Introduction">Introduction</a><br>
+<a href="#Compiler Status Tables">Compiler Status Tables</a><br>
+<a href="#Tables">Understanding the Tables</a><br>
+<a href="#Acknowledgements">Acknowledgements</a></p>
+
+
+<h2><a name="Introduction">Introduction</a></h2>
+
 <p>Will all boost libraries work with your compiler?&nbsp;
 Unfortunately, the answer is &quot;it depends.&quot;.</p>
 
@@ -38,61 +47,196 @@ support important minor features like partial template specialization.</p>
 trying to work around compiler deficiencies.&nbsp; Nevertheless,
 some libraries will not compile at all with certain compilers or
 may have crippled functionality.&nbsp; Even if the current
-release of a compiler supports a boost library, older version of
+release of a compiler supports a boost library, older versions of
 the compiler may not work properly.</p>
 
-<h2><a name="Compiler Status Tables">Compiler Status Tables</a></h2>
-
-<ul>
-    <li><a href="cs-beos.html">BeOS5/Intel</a> and <a href="http://boost.sourceforge.net/regression-logs/beos.log.gz">[compiler messages]</a>
-        Contributed by
-        <a href="../people/john_maddock.htm">John Maddock</a></li>
-    <li><a href="cs-tru64.html">Compaq Tru64 Unix 5.0</a> and <a href="http://boost.sourceforge.net/regression-logs/alpha.log.gz">[compiler messages]</a>
-        Contributed by
-	<a href="../people/jens_maurer.htm">Jens Maurer</a>
-	in cooperation with Ralf W. Grosse-Kunstleve</li>
-    <li><a href="cs-hpux.html">HP/UX 11.0</a> and <a href="http://boost.sourceforge.net/regression-logs/hpux.log.gz">[compiler messages]</a>
-        Contributed by
-	<a href="../people/jens_maurer.htm">Jens Maurer</a>
-	in cooperation with Thomas Matelich and Hewlett-Packard</li>
-    <li><a href="cs-aix.html">IBM/Aix</a> and <a href="http://boost.sourceforge.net/regression-logs/aix.log.gz">[compiler messages]</a>
-        Contributed by Toon Knapen</li>
-    <li><a href="cs-linux.html">Linux/x86</a> and <a href="http://boost.sourceforge.net/regression-logs/linux.log.gz">[compiler messages]</a>
-        Contributed by
-        <a href="../people/jens_maurer.htm">Jens Maurer</a></li>
-    <li><a href="cs-win32.html">Microsoft Windows NT / Windows 2000</a> and <a href="http://boost.sourceforge.net/regression-logs/win32.zip">[compiler messages]</a>
-        Contributed by
-	<a href="../people/beman_dawes.html">Beman Dawes</a></li>
-    <li><a href="cs-irix.html">SGI IRIX 6.5</a> and <a href="http://boost.sourceforge.net/regression-logs/irix.log.gz">[compiler messages]</a>
-        Contributed by
-	<a href="../people/jens_maurer.htm">Jens Maurer</a>
-	in cooperation with Ralf W. Grosse-Kunstleve</li>
-    <li><a href="cs-solaris.html">Sun Solaris/SPARC 2.7</a> and <a href="http://boost.sourceforge.net/regression-logs/solaris.log.gz">[compiler messages]</a>
-        Contributed by
-	<a href="../people/jens_maurer.htm">Jens Maurer</a>
-	in cooperation with Andrew Lumsdaine</li>
-        
-</ul>
-
 <p>Boost releases are run through a <a href="../more/regression.html">regression test
 suite</a> which
-automatically generates the above tables. Unless otherwise
+automatically generates Compiler Status Tables for various platforms. Unless otherwise
 indicated, the C++ Standard Library implementation is the one
 shipped with the compiler.</p>
 
+<h2>Compiler Status <a name="Tables"> Tables</a></h2>
+
 <p><b>Warning:</b> These tables are not a good indication of a
-particular compiler's compliance with the C++ Standard.&nbsp; The
-boost libraries often contain workarounds which mask compiler
+particular compiler's compliance with the C++ Standard.&nbsp; The Boost libraries often contain workarounds which mask compiler
 deficiencies.</p>
 
-<p><b>Warning: </b>Some regression tests are compile
-only tests, or compile-and-link tests; the programs are not executed or otherwise tested.&nbsp;See
-the &quot;Test Type&quot; column in the tables. Even the compilation results may be spurious; many negative
-results stem from problems with the immature test suite rather
-that with the library or compiler.&nbsp; Furthermore, some
-library tests have not yet been included.</p>
+<table border="1" cellpadding="5" cellSpacing="0">
+  <tr>
+    <td><b>Link to<br>
+      Compiler Status Table<br>
+      </b></td>
+    <td><b>Link to<br>
+      Regression<br>
+      Test messages</b></td>
+    <td><b>Contributed by</b></td>
+  </tr>
+  <tr>
+    <td><a href="cs-beos.html">BeOS5 Intel</a> </td>
+    <td><a href="http://boost.sourceforge.net/regression-logs/beos.log.gz">messages</a>
+    </td>
+    <td><a href="../people/john_maddock.htm">John Maddock</a></td>
+  </tr>
+  <tr>
+    <td><a href="cs-tru64.html">Compaq Tru64 Unix 5.0</a> </td>
+    <td><a href="http://boost.sourceforge.net/regression-logs/alpha.log.gz">messages</a>
+    </td>
+    <td><a href="../people/jens_maurer.htm">Jens Maurer</a>
+	in cooperation with Ralf W. Grosse-Kunstleve</td>
+  </tr>
+  <tr>
+    <td><a href="cs-hpux.html">HP/UX 11.0</a> </td>
+    <td><a href="http://boost.sourceforge.net/regression-logs/hpux.log.gz">messages</a>
+    </td>
+    <td><a href="../people/jens_maurer.htm">Jens Maurer</a>
+	in cooperation with Thomas Matelich and Hewlett-Packard</td>
+  </tr>
+  <tr>
+    <td><a href="cs-aix.html">IBM Aix</a> </td>
+    <td><a href="http://boost.sourceforge.net/regression-logs/aix.log.gz">messages</a>
+    </td>
+    <td> Toon Knapen</td>
+  </tr>
+  <tr>
+    <td><a href="cs-linux.html">Linux x86</a> </td>
+    <td><a href="http://boost.sourceforge.net/regression-logs/linux.log.gz">messages</a>
+    </td>
+    <td><a href="../people/jens_maurer.htm">Jens Maurer</a></td>
+  </tr>
+  <tr>
+    <td><a href="cs-win32.html">Microsoft Windows 2000</a> </td>
+    <td><a href="http://boost.sourceforge.net/regression-logs/win32.zip">messages</a>
+    </td>
+    <td><a href="../people/beman_dawes.html">Beman Dawes</a></td>
+  </tr>
+  <tr>
+    <td><a href="cs-irix.html">SGI IRIX 6.5</a> </td>
+    <td><a href="http://boost.sourceforge.net/regression-logs/irix.log.gz">messages</a>
+    </td>
+    <td><a href="../people/jens_maurer.htm">Jens Maurer</a>
+	in cooperation with Ralf W. Grosse-Kunstleve</td>
+  </tr>
+  <tr>
+    <td><a href="cs-solaris.html">Sun Solaris SPARC 2.7</a> </td>
+    <td><a href="http://boost.sourceforge.net/regression-logs/solaris.log.gz">messages</a>
+    </td>
+    <td><a href="../people/jens_maurer.htm">Jens Maurer</a>
+	in cooperation with Andrew Lumsdaine</td>
+  </tr>
+</table>
+
+<h2><a name="Understanding">Understanding</a> the Tables</h2>
+
+<p>A table might look like this:</p>
+
+<blockquote>
+
+<p><b>Run Date:</b> 21 Sep 2001 15:31 GMT</p>
+<p><b>System Configuration:</b> Microsoft Windows 32bit</p>
+<p>&nbsp;
+<table border="1" cellPadding="5" cellSpacing="0">
+  <tbody>
+    <tr>
+      <td>Program</td>
+      <td>Test<br>
+        Type</td>
+      <td>BelchFire<br>
+        Rev 5280</td>
+      <td>WorkHorse<br>
+        5.3</td>
+    </tr>
+    <tr>
+      <td>libs/foo/test/foo_test.cpp</td>
+      <td>compile</td>
+      <td>Pass</td>
+      <td>Pass</td>
+    </tr>
+    <tr>
+      <td>libs/bar/bar_test.cpp</td>
+      <td>run</td>
+      <td><font color="#ff0000">Fail</font></td>
+      <td>Pass</td>
+    </tr>
+  </tbody>
+</table>
+
+</blockquote>
+
+<p>The <i>Run Date</i> is important because the regression tests which create
+the status tables are run asynchronously, and thus may not represent the most
+current Boost release.</p>
+
+<p>The <i>Program</i> column identifies the actual source file for the
+test.&nbsp; Each row in the table represents a different test.</p>
+
+<p>The <i>Test Type</i> column identifies the type of test performed:</p>
+
+<table border="1" cellpadding="5" cellSpacing="0">
+  <tr>
+    <td><b>Test Type</b></td>
+    <td><b>Action</b></td>
+    <td><b>Required to <i>Pass</i></b></td>
+    <td><b>Description and Use</b></td>
+  </tr>
+  <tr>
+    <td>compile</td>
+    <td>compile only</td>
+    <td>Compiler returns 0.</td>
+    <td>Verify that a source file will compile correctly, but without any
+      attempt to link or execute.&nbsp; Used when factors such as possible
+      object library unavailability make a run test impractical.</td>
+  </tr>
+  <tr>
+    <td>compile-fail</td>
+    <td>compile only</td>
+    <td>Compiler must return non-zero.</td>
+    <td>Verify that a source file fails to compile. Used to verify that an
+      expected compile-time error was detected.</td>
+  </tr>
+  <tr>
+    <td>link</td>
+    <td>compile, link</td>
+    <td>Both compiler &amp; linker return 0.</td>
+    <td>Verify that a source file will compile and link correctly, but without
+      any attempt to execute the result.&nbsp; Used when factors such as
+      possible data file unavailability make a run test impractical.</td>
+  </tr>
+  <tr>
+    <td>link-fail</td>
+    <td>compile, link</td>
+    <td>Either the compiler or linker must return non-zero.</td>
+    <td>Verify that a source file fails to compile and link. Used to verify that
+      error detect which depends on unresolved externals works correctly.</td>
+  </tr>
+  <tr>
+    <td>run</td>
+    <td>compile, link, execute</td>
+    <td>Compiler, linker, and executable must all return 0.</td>
+    <td>Verify that a source file compiles, links, and the resulting program
+      executes correctly (as indicated by a zero return code.)&nbsp; This is the
+      primary test type for most uses.</td>
+  </tr>
+  <tr>
+    <td>run-fail</td>
+    <td>compile, link, execute</td>
+    <td>Both compiler and linker must return 0, and the executable must return
+      non-zero.</td>
+    <td>Verify that a source file compiles and links correctly, and that
+      execution of the resulting program detects some error.&nbsp; Used to
+      verify runtime error detection code works properly.</td>
+  </tr>
+</table>
+
+<p>Each remaining column in the table represents the individual compiler
+indicated. Unless otherwise
+indicated, the C++ Standard Library implementation is the one
+shipped with the compiler. A <i>Pass</i> entry indicates success for the
+indicated <i>Test Type</i>, while a <font color="#ff0000"><i>Fail</i></font>
+entry indicates failure. See <i>Required to Pass</i> in the above table for
+specifics.&nbsp;</p>
 
-<h2>Acknowledgements</h2>
+<h2><a name="Acknowledgements">Acknowledgements</a></h2>
 
 The compiler status tables have been prepared with resources donated by a number of individuals, educational institutions, and
 companies.  Boost would like to thank them for their support.
@@ -101,7 +245,8 @@ companies.  Boost would like to thank them for their support.
   <li><p><a href="http://www.intel.com/software/products"><img border="0" src="intel_logo.gif" align="center" width="72" height="36">Intel
   Corporation</a>, California, USA
 
-  <li><a href="http://www.kai.com/"><img border="0" src="kai_logo.gif" align="center" width="60" height="25"> KAI Software</a>, Illinois, USA</p></li>
+  <li><a href="http://www.kai.com/"><img border="0" src="kai_logo.gif" align="center" width="60" height="25"> KAI Software</a>, Illinois, USA<br>
+  </li>
 
   <li><p><a href="http://www.hp.com/">Hewlett-Packard Company</a>, USA</p></li>
 
@@ -119,7 +264,7 @@ of the products or services mentioned above.
 <hr>
 
 <p>Revised <!--webbot bot="Timestamp" s-type="EDITED"
-s-format="%d %B %Y" startspan -->13 September 2001<!--webbot bot="Timestamp" endspan i-checksum="39493" --></p>
+s-format="%d %B %Y" startspan -->22 September 2001<!--webbot bot="Timestamp" endspan i-checksum="39492" --></p>
 </body>
 </html>
 

粤ICP备19079148号