diff options
Diffstat (limited to 'status/compiler_status.html')
-rw-r--r-- | status/compiler_status.html | 280 |
1 files changed, 280 insertions, 0 deletions
diff --git a/status/compiler_status.html b/status/compiler_status.html new file mode 100644 index 0000000000..0e73eb6b0f --- /dev/null +++ b/status/compiler_status.html @@ -0,0 +1,280 @@ +<html> + +<head> +<meta http-equiv="Content-Type" +content="text/html; charset=iso-8859-1"> +<meta name="ProgId" content="FrontPage.Editor.Document"> +<meta name="GENERATOR" content="Microsoft FrontPage 4.0"> +<title>Boost Compiler Status Report</title> +</head> + +<body bgcolor="#FFFFFF" text="#000000"> + + +<table border="1" bgcolor="#007F7F" cellpadding="2"> + <tr> + <td bgcolor="#FFFFFF"><img src="../c++boost.gif" alt="c++boost.gif (8819 bytes)" width="277" height="86"></td> + <td><a href="../index.htm"><font face="Arial" color="#FFFFFF"><big>Home</big></font></a></td> + <td><a href="../libs/libraries.htm"><font face="Arial" color="#FFFFFF"><big>Libraries</big></font></a></td> + <td><a href="../people/people.htm"><font face="Arial" color="#FFFFFF"><big>People</big></font></a></td> + <td><a href="../more/faq.htm"><font face="Arial" color="#FFFFFF"><big>FAQ</big></font></a></td> + <td><a href="../more/index.htm"><font face="Arial" color="#FFFFFF"><big>More</big></font></a></td> + </tr> +</table> + + +<h1>Compiler Status</h1> + + +<p><a href="#Introduction">Introduction</a><br> +<a href="#Tables">Compiler Status Tables</a><br> +<a href="#Understanding">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? +Unfortunately, the answer is "it depends.".</p> + +<p>Boost libraries rely on modern C++ features such as templates +and the C++ Standard Library. Most modern compilers support those major +features fairly well. But even today, years after +the adoption of the C++ Standard, some compilers still don't +support important minor features like partial template specialization.</p> + +<p>Boost library authors often expend a great deal of effort +trying to work around compiler deficiencies. Nevertheless, +some libraries will not compile at all with certain compilers or +may have crippled functionality. Even if the current +release of a compiler supports a boost library, older versions of +the compiler may not work properly.</p> + +<p>Boost releases are run through a <a href="../more/regression.html">regression test +suite</a> which +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. The Boost libraries often contain workarounds which mask compiler +deficiencies.</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-macosx.html">Apple Mac OS X</a> </td> + <td><a href="http://boost.sourceforge.net/regression-logs/macosx.log.gz">messages</a> + </td> + <td><a href="../people/darin_adler.htm">Darin Adler</a></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 + <a href="../people/ralf_w_grosse_kunstleve.htm">Ralf W. Grosse-Kunstleve</a> + </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 + <a href="../people/ralf_w_grosse_kunstleve.htm">Ralf W. Grosse-Kunstleve</a> + </td> + </tr> + <tr> + <td><a href="cs-solaris.html">Sun Solaris SPARC 2.8</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> +<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. 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. 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 & linker return 0.</td> + <td>Verify that a source file will compile and link correctly, but without + any attempt to execute the result. 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.) 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. 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. </p> + +<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. + +<ul> + <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<br> + </li> + + <li><p><a href="http://www.hp.com/">Hewlett-Packard Company</a>, USA</p></li> + + <li><p><a href="http://www.lbl.gov">Lawrence Berkeley National Laboratory</a>, California, USA</p></li> + + <li><p><a href="http://www.nd.edu/">University of Notre Dame</a>, +Indiana, USA</p> +</ul> + +<p> +Note, however, that Boost does not endorse any product or service, nor +does Boost guarantee that some or all of its libraries work with any +of the products or services mentioned above. + +<hr> + +<p>Revised <!--webbot bot="Timestamp" s-type="EDITED" +s-format="%d %B %Y" startspan -->30 September 2001<!--webbot bot="Timestamp" endspan i-checksum="39489" --></p> +</body> +</html> + |