mirror of
https://github.com/boostorg/config.git
synced 2026-03-11 13:21:11 +01:00
Compare commits
4 Commits
boost-1.42
...
boost-1.43
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
754e4e8b40 | ||
|
|
d17f79ab80 | ||
|
|
027571bf6e | ||
|
|
7254d6c9c8 |
@@ -29,7 +29,7 @@ Distributed under the Boost Software License, Version 1.0.
|
||||
[/ Other web resources ]
|
||||
|
||||
[def __STL_PORT__ [@http://stlport.sourceforge.net STLport]]
|
||||
[def __BOOST_TRACKER__ [@http://sourceforge.net/tracker/?group_id=7586 Tracker]]
|
||||
[def __BOOST_TRACKER__ [@https://svn.boost.org/trac/boost/newticket Trac]]
|
||||
[def __CORE_LANGUAGE_DR337__ [@http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#337 Core Language DR337]]
|
||||
[def __PRINCIPLES_AND_PATTERNS_ARTICLE__ [@http://www.objectmentor.com/resources/articles/Principles_and_Patterns.pdf following article]]
|
||||
|
||||
|
||||
@@ -112,8 +112,8 @@ filename limit though. You will also need to provide a function prototype
|
||||
"`int test()`" that is declared in a namespace with the same name as the macro,
|
||||
but in all lower case, and which returns zero on success:
|
||||
|
||||
namespace boost_no_foo {
|
||||
|
||||
namespace boost_no_foo {
|
||||
int test()
|
||||
{
|
||||
// test code goes here:
|
||||
@@ -126,14 +126,18 @@ but in all lower case, and which returns zero on success:
|
||||
Once the test code is in place in libs/config/test, updating the configuration
|
||||
test system proceeds as:
|
||||
|
||||
* cd into `libs/config/tools` and run `bjam` : this generates the `.cpp`
|
||||
* cd into `libs/config/tools` and run `bjam`. This generates the `.cpp`
|
||||
file test cases from the `.ipp` file, updates the
|
||||
libs/config/test/all/Jamfile.v2, `config_test.cpp` and `config_info.cpp`.
|
||||
* cd into `libs/config/test/all` and run `bjam `['MACRONAME` compiler-list`] : where
|
||||
libs/config/test/all/Jamfile.v2, `config_test.cpp` and `config_info.cpp`.[br][br]
|
||||
|
||||
* cd into `libs/config/test/all` and run `bjam `['MACRONAME` compiler-list`], where
|
||||
['MACRONAME] is the name of the new macro, and ['`compiler-list`] is a space separated list of
|
||||
compilers to test with. You should see the tests pass with those compilers
|
||||
that don't have the defect, and fail with those that do.
|
||||
* cd into `libs/config/test` and run `bjam config_info config_test `['`compiler-list`] :
|
||||
compilers to test with.[br][br]
|
||||
The xxx_pass_test and the xxx_fail_test [*should both report `**passed**`].[br][br]
|
||||
If ['MACRONAME] is not defined when it should be defined, xxx_pass_test will not report `**passed**`.
|
||||
If ['MACRONAME] is defined when it should not be defined, xxx_fail_test will not report `**passed**`.[br][br]
|
||||
|
||||
* cd into `libs/config/test` and run `bjam config_info config_test `['`compiler-list`].
|
||||
`config_info` should build and run cleanly for all the compilers in ['`compiler-list`]
|
||||
while `config_test` should fail for those that have the defect, and pass for those
|
||||
that do not.
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
|
||||
<title>Acknowledgements</title>
|
||||
<link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.74.0">
|
||||
@@ -47,7 +47,7 @@
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
<td align="left"></td>
|
||||
<td align="right"><div class="copyright-footer">Copyright © 2001 -2007 Beman Dawes, Vesa Karvonen, John Maddock<p>
|
||||
<td align="right"><div class="copyright-footer">Copyright © 2001 -2007 Beman Dawes, Vesa Karvonen, John Maddock<p>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
|
||||
</p>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
|
||||
<title>Boost Macro Reference</title>
|
||||
<link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.74.0">
|
||||
@@ -2849,6 +2849,53 @@
|
||||
</tr></thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>
|
||||
<p>
|
||||
<code class="computeroutput"><span class="identifier">BOOST_WORKAROUND</span></code>
|
||||
</p>
|
||||
</td>
|
||||
<td>
|
||||
<p>
|
||||
This macro is used where a compiler specific workaround is required
|
||||
that is not otherwise described by one of the other Boost.Config
|
||||
macros. To use the macro you must first
|
||||
</p>
|
||||
<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting"><span class="preprocessor">#include</span> <span class="special"><</span><span class="identifier">boost</span><span class="special">/</span><span class="identifier">detail</span><span class="special">/</span><span class="identifier">workaround</span><span class="special">.</span><span class="identifier">hpp</span><span class="special">></span>
|
||||
</pre>
|
||||
<p>
|
||||
usage is then:
|
||||
</p>
|
||||
<pre xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="table-programlisting"><span class="preprocessor">#if</span> <span class="identifier">BOOST_WORKAROUND</span><span class="special">(</span><span class="identifier">MACRONAME</span><span class="special">,</span> <span class="identifier">CONDITION</span><span class="special">)</span>
|
||||
<span class="comment">// workaround code goes here...
|
||||
</span><span class="preprocessor">#else</span>
|
||||
<span class="comment">// Standard conforming code goes here...
|
||||
</span><span class="preprocessor">#endif</span>
|
||||
</pre>
|
||||
<p>
|
||||
where <code class="computeroutput"><span class="identifier">MACRONAME</span></code> is
|
||||
a macro that usually describes the version number to be tested against,
|
||||
and <code class="computeroutput"><span class="identifier">CONDITION</span></code> is
|
||||
a comparison operator followed by a value. For example <code class="computeroutput"><span class="identifier">BOOST_WORKAROUND</span><span class="special">(</span><span class="identifier">BOOST_INTEL</span><span class="special">,</span>
|
||||
<span class="special"><=</span> <span class="number">1010</span><span class="special">)</span></code> would evaluate to <code class="computeroutput"><span class="number">1</span></code> for Intel C++ 10.1 and earlier.
|
||||
</p>
|
||||
<p>
|
||||
The macro can also be used with <code class="computeroutput"><span class="identifier">BOOST_TESTED_AT</span></code>
|
||||
if all current compiler versions exhibit the issue, but the issue
|
||||
is expected to be fixed at some later point.
|
||||
</p>
|
||||
<p>
|
||||
For example <code class="computeroutput"><span class="identifier">BOOST_WORKAROUND</span><span class="special">(</span><span class="identifier">__BORLANDC__</span><span class="special">,</span> <span class="identifier">BOOST_TESTED_AT</span><span class="special">(</span><span class="number">0x590</span><span class="special">))</span></code> would normally evaluate to <code class="computeroutput"><span class="number">1</span></code> for all values of <code class="computeroutput"><span class="identifier">__BORLANDC__</span></code>
|
||||
<span class="emphasis"><em>unless</em></span> the macro <code class="computeroutput"><span class="identifier">BOOST_DETECT_OUTDATED_WORKAROUNDS</span></code>
|
||||
is defined, in which case evaluates to <code class="computeroutput"><span class="special">(</span><span class="identifier">__BORLANDC__</span> <span class="special"><=</span>
|
||||
<span class="number">0x590</span><span class="special">)</span></code>.
|
||||
</p>
|
||||
<p>
|
||||
<span class="bold"><strong>Note</strong></span>: the ultimate source of documentation
|
||||
for this macro is in <a href="../../../../../boost/detail/workaround.hpp" target="_top">boost/detail/workaround.hpp</a>.
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<p>
|
||||
<code class="computeroutput"><span class="identifier">BOOST_DEDUCED_TYPENAME</span></code>
|
||||
@@ -3160,7 +3207,7 @@
|
||||
</td>
|
||||
<td>
|
||||
<p>
|
||||
Describes the boost version number in XXYYZZ format such that: <code class="computeroutput"><span class="special">(</span><span class="identifier">BOOST_VERSION</span>
|
||||
Describes the boost version number in XYYYZZ format such that: <code class="computeroutput"><span class="special">(</span><span class="identifier">BOOST_VERSION</span>
|
||||
<span class="special">%</span> <span class="number">100</span><span class="special">)</span></code> is the sub-minor version, <code class="computeroutput"><span class="special">((</span><span class="identifier">BOOST_VERSION</span>
|
||||
<span class="special">/</span> <span class="number">100</span><span class="special">)</span> <span class="special">%</span> <span class="number">1000</span><span class="special">)</span></code>
|
||||
is the minor version, and <code class="computeroutput"><span class="special">(</span><span class="identifier">BOOST_VERSION</span> <span class="special">/</span>
|
||||
@@ -3534,7 +3581,7 @@
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
<td align="left"></td>
|
||||
<td align="right"><div class="copyright-footer">Copyright © 2001 -2007 Beman Dawes, Vesa Karvonen, John Maddock<p>
|
||||
<td align="right"><div class="copyright-footer">Copyright © 2001 -2007 Beman Dawes, Vesa Karvonen, John Maddock<p>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
|
||||
</p>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
|
||||
<title>Guidelines for Boost Authors</title>
|
||||
<link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.74.0">
|
||||
@@ -220,7 +220,6 @@
|
||||
on success:
|
||||
</p>
|
||||
<pre class="programlisting"><span class="keyword">namespace</span> <span class="identifier">boost_no_foo</span> <span class="special">{</span>
|
||||
|
||||
<span class="keyword">int</span> <span class="identifier">test</span><span class="special">()</span>
|
||||
<span class="special">{</span>
|
||||
<span class="comment">// test code goes here:
|
||||
@@ -236,24 +235,27 @@
|
||||
</p>
|
||||
<div class="itemizedlist"><ul type="disc">
|
||||
<li>
|
||||
cd into <code class="computeroutput"><span class="identifier">libs</span><span class="special">/</span><span class="identifier">config</span><span class="special">/</span><span class="identifier">tools</span></code> and run <code class="computeroutput"><span class="identifier">bjam</span></code>
|
||||
: this generates the <code class="computeroutput"><span class="special">.</span><span class="identifier">cpp</span></code>
|
||||
cd into <code class="computeroutput"><span class="identifier">libs</span><span class="special">/</span><span class="identifier">config</span><span class="special">/</span><span class="identifier">tools</span></code> and run <code class="computeroutput"><span class="identifier">bjam</span></code>.
|
||||
This generates the <code class="computeroutput"><span class="special">.</span><span class="identifier">cpp</span></code>
|
||||
file test cases from the <code class="computeroutput"><span class="special">.</span><span class="identifier">ipp</span></code> file, updates the libs/config/test/all/Jamfile.v2,
|
||||
<code class="computeroutput"><span class="identifier">config_test</span><span class="special">.</span><span class="identifier">cpp</span></code> and <code class="computeroutput"><span class="identifier">config_info</span><span class="special">.</span><span class="identifier">cpp</span></code>.
|
||||
</li>
|
||||
<code class="computeroutput"><span class="identifier">config_test</span><span class="special">.</span><span class="identifier">cpp</span></code> and <code class="computeroutput"><span class="identifier">config_info</span><span class="special">.</span><span class="identifier">cpp</span></code>.<br><br>
|
||||
</li>
|
||||
<li>
|
||||
cd into <code class="computeroutput"><span class="identifier">libs</span><span class="special">/</span><span class="identifier">config</span><span class="special">/</span><span class="identifier">test</span><span class="special">/</span><span class="identifier">all</span></code> and run <code class="computeroutput"><span class="identifier">bjam</span>
|
||||
</code><span class="emphasis"><em>MACRONAME<code class="computeroutput"> <span class="identifier">compiler</span><span class="special">-</span><span class="identifier">list</span></code></em></span>
|
||||
: where <span class="emphasis"><em>MACRONAME</em></span> is the name of the new macro, and
|
||||
</code><span class="emphasis"><em>MACRONAME<code class="computeroutput"> <span class="identifier">compiler</span><span class="special">-</span><span class="identifier">list</span></code></em></span>,
|
||||
where <span class="emphasis"><em>MACRONAME</em></span> is the name of the new macro, and
|
||||
<span class="emphasis"><em><code class="computeroutput"><span class="identifier">compiler</span><span class="special">-</span><span class="identifier">list</span></code></em></span> is a space separated
|
||||
list of compilers to test with. You should see the tests pass with those
|
||||
compilers that don't have the defect, and fail with those that do.
|
||||
</li>
|
||||
list of compilers to test with.<br><br> The xxx_pass_test and the
|
||||
xxx_fail_test <span class="bold"><strong>should both report <code class="computeroutput"><span class="special">**</span><span class="identifier">passed</span><span class="special">**</span></code></strong></span>.<br><br> If <span class="emphasis"><em>MACRONAME</em></span> is not defined when it should
|
||||
be defined, xxx_pass_test will not report <code class="computeroutput"><span class="special">**</span><span class="identifier">passed</span><span class="special">**</span></code>.
|
||||
If <span class="emphasis"><em>MACRONAME</em></span> is defined when it should not be defined,
|
||||
xxx_fail_test will not report <code class="computeroutput"><span class="special">**</span><span class="identifier">passed</span><span class="special">**</span></code>.<br><br>
|
||||
</li>
|
||||
<li>
|
||||
cd into <code class="computeroutput"><span class="identifier">libs</span><span class="special">/</span><span class="identifier">config</span><span class="special">/</span><span class="identifier">test</span></code> and run <code class="computeroutput"><span class="identifier">bjam</span>
|
||||
<span class="identifier">config_info</span> <span class="identifier">config_test</span>
|
||||
</code><span class="emphasis"><em><code class="computeroutput"><span class="identifier">compiler</span><span class="special">-</span><span class="identifier">list</span></code></em></span>
|
||||
: <code class="computeroutput"><span class="identifier">config_info</span></code> should build
|
||||
</code><span class="emphasis"><em><code class="computeroutput"><span class="identifier">compiler</span><span class="special">-</span><span class="identifier">list</span></code></em></span>.
|
||||
<code class="computeroutput"><span class="identifier">config_info</span></code> should build
|
||||
and run cleanly for all the compilers in <span class="emphasis"><em><code class="computeroutput"><span class="identifier">compiler</span><span class="special">-</span><span class="identifier">list</span></code></em></span>
|
||||
while <code class="computeroutput"><span class="identifier">config_test</span></code> should
|
||||
fail for those that have the defect, and pass for those that do not.
|
||||
@@ -358,7 +360,7 @@
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
<td align="left"></td>
|
||||
<td align="right"><div class="copyright-footer">Copyright © 2001 -2007 Beman Dawes, Vesa Karvonen, John Maddock<p>
|
||||
<td align="right"><div class="copyright-footer">Copyright © 2001 -2007 Beman Dawes, Vesa Karvonen, John Maddock<p>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
|
||||
</p>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
|
||||
<title>Rationale</title>
|
||||
<link rel="stylesheet" href="../../../../../doc/html/boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.74.0">
|
||||
@@ -121,7 +121,7 @@
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
<td align="left"></td>
|
||||
<td align="right"><div class="copyright-footer">Copyright © 2001 -2007 Beman Dawes, Vesa Karvonen, John Maddock<p>
|
||||
<td align="right"><div class="copyright-footer">Copyright © 2001 -2007 Beman Dawes, Vesa Karvonen, John Maddock<p>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
|
||||
</p>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=US-ASCII">
|
||||
<title>Boost.Config</title>
|
||||
<link rel="stylesheet" href="../../../../doc/html/boostbook.css" type="text/css">
|
||||
<meta name="generator" content="DocBook XSL Stylesheets V1.74.0">
|
||||
@@ -26,9 +26,9 @@
|
||||
<div><div class="authorgroup"><div class="author"><h3 class="author">
|
||||
<span class="firstname">Vesa Karvonen, John Maddock</span> <span class="surname">Beman Dawes</span>
|
||||
</h3></div></div></div>
|
||||
<div><p class="copyright">Copyright © 2001 -2007 Beman Dawes, Vesa Karvonen, John Maddock</p></div>
|
||||
<div><p class="copyright">Copyright © 2001 -2007 Beman Dawes, Vesa Karvonen, John Maddock</p></div>
|
||||
<div><div class="legalnotice">
|
||||
<a name="id770460"></a><p>
|
||||
<a name="id793416"></a><p>
|
||||
Distributed under the Boost Software License, Version 1.0. (See accompanying
|
||||
file LICENSE_1_0.txt or copy at <a href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)
|
||||
</p>
|
||||
@@ -131,7 +131,7 @@
|
||||
</p>
|
||||
<p>
|
||||
Boost library users can request support for additional compilers or platforms
|
||||
by visiting our <a href="http://sourceforge.net/tracker/?group_id=7586" target="_top">Tracker</a>
|
||||
by visiting our <a href="https://svn.boost.org/trac/boost/newticket" target="_top">Trac</a>
|
||||
and submitting a support request.
|
||||
</p>
|
||||
</div>
|
||||
@@ -960,7 +960,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<table xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" width="100%"><tr>
|
||||
<td align="left"><p><small>Last revised: August 06, 2009 at 09:16:56 GMT</small></p></td>
|
||||
<td align="left"><p><small>Last revised: March 02, 2010 at 17:08:14 GMT</small></p></td>
|
||||
<td align="right"><div class="copyright-footer"></div></td>
|
||||
</tr></table>
|
||||
<hr>
|
||||
|
||||
@@ -633,6 +633,34 @@ workarounds for compiler/standard library defects.
|
||||
[table
|
||||
[[Macro ][Description ]]
|
||||
|
||||
[[`BOOST_WORKAROUND`][
|
||||
This macro is used where a compiler specific workaround is required that is not otherwise
|
||||
described by one of the other Boost.Config macros. To use the macro you must first
|
||||
``
|
||||
#include <boost/detail/workaround.hpp>
|
||||
``
|
||||
usage is then:
|
||||
``
|
||||
#if BOOST_WORKAROUND(MACRONAME, CONDITION)
|
||||
// workaround code goes here...
|
||||
#else
|
||||
// Standard conforming code goes here...
|
||||
#endif
|
||||
``
|
||||
where `MACRONAME` is a macro that usually describes the version number to be tested against, and `CONDITION`
|
||||
is a comparison operator followed by a value. For example `BOOST_WORKAROUND(BOOST_INTEL, <= 1010)` would
|
||||
evaluate to `1` for Intel C++ 10.1 and earlier.
|
||||
|
||||
The macro can also be used with `BOOST_TESTED_AT` if all
|
||||
current compiler versions exhibit the issue, but the issue is expected to be fixed at some later point.
|
||||
|
||||
For example
|
||||
`BOOST_WORKAROUND(__BORLANDC__, BOOST_TESTED_AT(0x590))` would normally evaluate to `1` for all values
|
||||
of `__BORLANDC__` /unless/ the macro `BOOST_DETECT_OUTDATED_WORKAROUNDS` is defined, in which case evaluates to
|
||||
`(__BORLANDC__ <= 0x590)`.
|
||||
|
||||
[*Note]: the ultimate source of documentation for this macro is in [@../../../../boost/detail/workaround.hpp boost/detail/workaround.hpp].
|
||||
]]
|
||||
[[`BOOST_DEDUCED_TYPENAME`][
|
||||
Some compilers don't support the use of typename for dependent types in deduced
|
||||
contexts. This macro expands to nothing on those compilers, and typename
|
||||
@@ -778,7 +806,7 @@ the only boost macros that should be tested in user code.
|
||||
[[Macro ][Header ][Description ]]
|
||||
|
||||
[[`BOOST_VERSION`][`<boost/version.hpp>`][
|
||||
Describes the boost version number in XXYYZZ format such that:
|
||||
Describes the boost version number in XYYYZZ format such that:
|
||||
`(BOOST_VERSION % 100)` is the sub-minor version, `((BOOST_VERSION / 100) % 1000)`
|
||||
is the minor version, and `(BOOST_VERSION / 100000)` is the major version.
|
||||
]]
|
||||
|
||||
@@ -108,11 +108,8 @@
|
||||
//
|
||||
#define BOOST_NO_CONSTEXPR
|
||||
#define BOOST_NO_EXTERN_TEMPLATE
|
||||
#define BOOST_NO_LAMBDAS
|
||||
#define BOOST_NO_NULLPTR
|
||||
#define BOOST_NO_RAW_LITERALS
|
||||
#define BOOST_NO_TEMPLATE_ALIASES
|
||||
#define BOOST_NO_UNICODE_LITERALS
|
||||
|
||||
// C++0x features in 4.3.n and later
|
||||
//
|
||||
@@ -168,6 +165,9 @@
|
||||
//
|
||||
#if __GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 5) || !defined(__GXX_EXPERIMENTAL_CXX0X__)
|
||||
# define BOOST_NO_EXPLICIT_CONVERSION_OPERATORS
|
||||
# define BOOST_NO_LAMBDAS
|
||||
# define BOOST_NO_RAW_LITERALS
|
||||
# define BOOST_NO_UNICODE_LITERALS
|
||||
#endif
|
||||
|
||||
// ConceptGCC compiler:
|
||||
|
||||
85
include/boost/config/compiler/nvcc.hpp
Normal file
85
include/boost/config/compiler/nvcc.hpp
Normal file
@@ -0,0 +1,85 @@
|
||||
// (C) Copyright Eric Jourdanneau, Joel Falcou 2010
|
||||
// Use, modification and distribution are subject to the
|
||||
// Boost Software License, Version 1.0. (See accompanying file
|
||||
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
// NVIDIA CUDA C++ compiler setup
|
||||
|
||||
#ifndef BOOST_COMPILER
|
||||
# define BOOST_COMPILER "NVIDIA CUDA C++ Compiler"
|
||||
#endif
|
||||
|
||||
// NVIDIA Specific support
|
||||
// BOOST_GPU_ENABLED : Flag a function or a method as being enabled on the host and device
|
||||
#define BOOST_GPU_ENABLED __host__ __device__
|
||||
|
||||
// Boost support macro for NVCC
|
||||
// NVCC Basically behaves like some flavor of MSVC6 + some specific quirks
|
||||
#define BOOST_NO_INCLASS_MEMBER_INITIALIZATION
|
||||
#define BOOST_MSVC6_MEMBER_TEMPLATES
|
||||
#define BOOST_HAS_UNISTD_H
|
||||
#define BOOST_HAS_STDINT_H
|
||||
#define BOOST_HAS_SIGACTION
|
||||
#define BOOST_HAS_SCHED_YIELD
|
||||
#define BOOST_HAS_PTHREADS
|
||||
#define BOOST_HAS_PTHREAD_YIELD
|
||||
#define BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE
|
||||
#define BOOST_HAS_PARTIAL_STD_ALLOCATOR
|
||||
#define BOOST_HAS_NRVO
|
||||
#define BOOST_HAS_NL_TYPES_H
|
||||
#define BOOST_HAS_NANOSLEEP
|
||||
#define BOOST_HAS_LONG_LONG
|
||||
#define BOOST_HAS_LOG1P
|
||||
#define BOOST_HAS_GETTIMEOFDAY
|
||||
#define BOOST_HAS_EXPM1
|
||||
#define BOOST_HAS_DIRENT_H
|
||||
#define BOOST_HAS_CLOCK_GETTIME
|
||||
#define BOOST_NO_VARIADIC_TEMPLATES
|
||||
#define BOOST_NO_UNICODE_LITERALS
|
||||
#define BOOST_NO_TEMPLATE_ALIASES
|
||||
#define BOOST_NO_STD_UNORDERED
|
||||
#define BOOST_NO_STATIC_ASSERT
|
||||
#define BOOST_NO_SFINAE_EXPR
|
||||
#define BOOST_NO_SCOPED_ENUMS
|
||||
#define BOOST_NO_RVALUE_REFERENCES
|
||||
#define BOOST_NO_RAW_LITERALS
|
||||
#define BOOST_NO_NULLPTR
|
||||
#define BOOST_NO_LAMBDAS
|
||||
#define BOOST_NO_INITIALIZER_LISTS
|
||||
#define BOOST_NO_MS_INT64_NUMERIC_LIMITS
|
||||
#define BOOST_NO_FUNCTION_TEMPLATE_DEFAULT_ARGS
|
||||
#define BOOST_NO_EXTERN_TEMPLATE
|
||||
#define BOOST_NO_EXPLICIT_CONVERSION_OPERATORS
|
||||
#define BOOST_NO_DELETED_FUNCTIONS
|
||||
#define BOOST_NO_DEFAULTED_FUNCTIONS
|
||||
#define BOOST_NO_DECLTYPE
|
||||
#define BOOST_NO_CONSTEXPR
|
||||
#define BOOST_NO_CONCEPTS
|
||||
#define BOOST_NO_CHAR32_T
|
||||
#define BOOST_NO_CHAR16_T
|
||||
#define BOOST_NO_AUTO_MULTIDECLARATIONS
|
||||
#define BOOST_NO_AUTO_DECLARATIONS
|
||||
#define BOOST_NO_0X_HDR_UNORDERED_SET
|
||||
#define BOOST_NO_0X_HDR_UNORDERED_MAP
|
||||
#define BOOST_NO_0X_HDR_TYPE_TRAITS
|
||||
#define BOOST_NO_0X_HDR_TUPLE
|
||||
#define BOOST_NO_0X_HDR_THREAD
|
||||
#define BOOST_NO_0X_HDR_SYSTEM_ERROR
|
||||
#define BOOST_NO_0X_HDR_REGEX
|
||||
#define BOOST_NO_0X_HDR_RATIO
|
||||
#define BOOST_NO_0X_HDR_RANDOM
|
||||
#define BOOST_NO_0X_HDR_MUTEX
|
||||
#define BOOST_NO_0X_HDR_MEMORY_CONCEPTS
|
||||
#define BOOST_NO_0X_HDR_ITERATOR_CONCEPTS
|
||||
#define BOOST_NO_0X_HDR_INITIALIZER_LIST
|
||||
#define BOOST_NO_0X_HDR_FUTURE
|
||||
#define BOOST_NO_0X_HDR_FORWARD_LIST
|
||||
#define BOOST_NO_0X_HDR_CONTAINER_CONCEPTS
|
||||
#define BOOST_NO_0X_HDR_CONDITION_VARIABLE
|
||||
#define BOOST_NO_0X_HDR_CONCEPTS
|
||||
#define BOOST_NO_0X_HDR_CODECVT
|
||||
#define BOOST_NO_0X_HDR_CHRONO
|
||||
#define BOOST_NO_0X_HDR_ARRAY
|
||||
|
||||
@@ -16,11 +16,28 @@
|
||||
// if no threading API is detected.
|
||||
//
|
||||
|
||||
#if (__PGIC__ >= 7)
|
||||
// PGI 10.x doesn't seem to define __PGIC__
|
||||
|
||||
// versions earlier than 10.x do define __PGIC__
|
||||
#if __PGIC__ >= 10
|
||||
|
||||
// options requested by configure --enable-test
|
||||
#define BOOST_HAS_PTHREADS
|
||||
#define BOOST_HAS_NRVO
|
||||
#define BOOST_HAS_LONG_LONG
|
||||
|
||||
// options --enable-test wants undefined
|
||||
#undef BOOST_NO_STDC_NAMESPACE
|
||||
#undef BOOST_NO_EXCEPTION_STD_NAMESPACE
|
||||
#undef BOOST_DEDUCED_TYPENAME
|
||||
|
||||
#elif __PGIC__ >= 7
|
||||
|
||||
#define BOOST_FUNCTION_SCOPE_USING_DECLARATION_BREAKS_ADL
|
||||
#define BOOST_NO_TWO_PHASE_NAME_LOOKUP
|
||||
#define BOOST_NO_SWPRINTF
|
||||
#define BOOST_NO_AUTO_MULTIDECLARATIONS
|
||||
#define BOOST_NO_AUTO_DECLARATIONS
|
||||
|
||||
#else
|
||||
|
||||
@@ -32,8 +49,6 @@
|
||||
//
|
||||
// See boost\config\suffix.hpp for BOOST_NO_LONG_LONG
|
||||
//
|
||||
#define BOOST_NO_AUTO_DECLARATIONS
|
||||
#define BOOST_NO_AUTO_MULTIDECLARATIONS
|
||||
#define BOOST_NO_CHAR16_T
|
||||
#define BOOST_NO_CHAR32_T
|
||||
#define BOOST_NO_CONCEPTS
|
||||
|
||||
@@ -125,7 +125,7 @@
|
||||
#if (_MSC_VER >= 1200)
|
||||
# define BOOST_HAS_MS_INT64
|
||||
#endif
|
||||
#if (_MSC_VER >= 1310) && (defined(_MSC_EXTENSIONS) || (_MSC_VER >= 1500))
|
||||
#if (_MSC_VER >= 1310) && (defined(_MSC_EXTENSIONS) || (_MSC_VER >= 1400))
|
||||
# define BOOST_HAS_LONG_LONG
|
||||
#else
|
||||
# define BOOST_NO_LONG_LONG
|
||||
|
||||
94
include/boost/config/platform/symbian.hpp
Normal file
94
include/boost/config/platform/symbian.hpp
Normal file
@@ -0,0 +1,94 @@
|
||||
// (C) Copyright Yuriy Krasnoschek 2009.
|
||||
// (C) Copyright John Maddock 2001 - 2003.
|
||||
// (C) Copyright Jens Maurer 2001 - 2003.
|
||||
// Use, modification and distribution are subject to the
|
||||
// Boost Software License, Version 1.0. (See accompanying file
|
||||
// LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|
||||
|
||||
// See http://www.boost.org for most recent version.
|
||||
|
||||
// symbian specific config options:
|
||||
|
||||
|
||||
#define BOOST_PLATFORM "Symbian"
|
||||
#define BOOST_SYMBIAN 1
|
||||
|
||||
|
||||
#if defined(__S60_3X__)
|
||||
// Open C / C++ plugin was introdused in this SDK, earlier versions don't have CRT / STL
|
||||
# define BOOST_S60_3rd_EDITION_FP2_OR_LATER_SDK
|
||||
// make sure we have __GLIBC_PREREQ if available at all
|
||||
# include <cstdlib>
|
||||
// boilerplate code:
|
||||
# define BOOST_HAS_UNISTD_H
|
||||
# include <boost/config/posix_features.hpp>
|
||||
// S60 SDK defines _POSIX_VERSION as POSIX.1
|
||||
# ifndef BOOST_HAS_STDINT_H
|
||||
# define BOOST_HAS_STDINT_H
|
||||
# endif
|
||||
# ifndef BOOST_HAS_GETTIMEOFDAY
|
||||
# define BOOST_HAS_GETTIMEOFDAY
|
||||
# endif
|
||||
# ifndef BOOST_HAS_DIRENT_H
|
||||
# define BOOST_HAS_DIRENT_H
|
||||
# endif
|
||||
# ifndef BOOST_HAS_SIGACTION
|
||||
# define BOOST_HAS_SIGACTION
|
||||
# endif
|
||||
# ifndef BOOST_HAS_PTHREADS
|
||||
# define BOOST_HAS_PTHREADS
|
||||
# endif
|
||||
# ifndef BOOST_HAS_NANOSLEEP
|
||||
# define BOOST_HAS_NANOSLEEP
|
||||
# endif
|
||||
# ifndef BOOST_HAS_SCHED_YIELD
|
||||
# define BOOST_HAS_SCHED_YIELD
|
||||
# endif
|
||||
# ifndef BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE
|
||||
# define BOOST_HAS_PTHREAD_MUTEXATTR_SETTYPE
|
||||
# endif
|
||||
# ifndef BOOST_HAS_LOG1P
|
||||
# define BOOST_HAS_LOG1P
|
||||
# endif
|
||||
# ifndef BOOST_HAS_EXPM1
|
||||
# define BOOST_HAS_EXPM1
|
||||
# endif
|
||||
# ifndef BOOST_POSIX_API
|
||||
# define BOOST_POSIX_API
|
||||
# endif
|
||||
// endianess support
|
||||
# include <sys/endian.h>
|
||||
// Symbian SDK provides _BYTE_ORDER instead of __BYTE_ORDER
|
||||
# ifndef __LITTLE_ENDIAN
|
||||
# ifdef _LITTLE_ENDIAN
|
||||
# define __LITTLE_ENDIAN _LITTLE_ENDIAN
|
||||
# else
|
||||
# define __LITTLE_ENDIAN 1234
|
||||
# endif
|
||||
# endif
|
||||
# ifndef __BIG_ENDIAN
|
||||
# ifdef _BIG_ENDIAN
|
||||
# define __BIG_ENDIAN _BIG_ENDIAN
|
||||
# else
|
||||
# define __BIG_ENDIAN 4321
|
||||
# endif
|
||||
# endif
|
||||
# ifndef __BYTE_ORDER
|
||||
# define __BYTE_ORDER __LITTLE_ENDIAN // Symbian is LE
|
||||
# endif
|
||||
// Known limitations
|
||||
# define BOOST_ASIO_DISABLE_SERIAL_PORT
|
||||
# define BOOST_DATE_TIME_NO_LOCALE
|
||||
# define BOOST_NO_STD_WSTRING
|
||||
# define BOOST_EXCEPTION_DISABLE
|
||||
# define BOOST_NO_EXCEPTIONS
|
||||
|
||||
#else // TODO: More platform support e.g. UIQ
|
||||
# error "Unsuppoted Symbian SDK"
|
||||
#endif
|
||||
|
||||
#if defined(__WINSCW__) && !defined(BOOST_DISABLE_WIN32)
|
||||
# define BOOST_DISABLE_WIN32 // winscw defines WIN32 macro
|
||||
#endif
|
||||
|
||||
|
||||
@@ -31,6 +31,7 @@
|
||||
# define BOOST_CXX_IBMCPP 0
|
||||
# define BOOST_CXX_MSVC 0
|
||||
# define BOOST_CXX_PGI 0
|
||||
# define BOOST_CXX_NVCC 0
|
||||
|
||||
|
||||
// locate which compiler we are using and define
|
||||
@@ -40,6 +41,10 @@
|
||||
// GCC-XML emulates other compilers, it has to appear first here!
|
||||
# define BOOST_COMPILER_CONFIG "boost/config/compiler/gcc_xml.hpp"
|
||||
|
||||
#elif defined __CUDACC__
|
||||
// NVIDIA CUDA C++ compiler for GPU
|
||||
# define BOOST_COMPILER_CONFIG "boost/config/compiler/nvcc.hpp"
|
||||
|
||||
#elif defined __COMO__
|
||||
// Comeau C++
|
||||
# define BOOST_COMPILER_CONFIG "boost/config/compiler/comeau.hpp"
|
||||
|
||||
@@ -65,6 +65,10 @@
|
||||
// vxWorks:
|
||||
# define BOOST_PLATFORM_CONFIG "boost/config/platform/vxworks.hpp"
|
||||
|
||||
#elif defined(__SYMBIAN32__)
|
||||
// Symbian:
|
||||
# define BOOST_PLATFORM_CONFIG "boost/config/platform/symbian.hpp"
|
||||
|
||||
#else
|
||||
|
||||
# if defined(unix) \
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
// Copyright (c) 2002-2003 David Abrahams
|
||||
// Copyright (c) 2003 Gennaro Prota
|
||||
// Copyright (c) 2003 Eric Friedman
|
||||
//
|
||||
// Copyright (c) 2010 Eric Jourdanneau, Joel Falcou
|
||||
// Distributed under the Boost Software License, Version 1.0. (See
|
||||
// accompanying file LICENSE_1_0.txt or copy at
|
||||
// http://www.boost.org/LICENSE_1_0.txt)
|
||||
@@ -596,6 +596,11 @@ namespace boost{
|
||||
# endif
|
||||
# endif
|
||||
|
||||
//
|
||||
// Set some default values GPU support
|
||||
//
|
||||
# ifndef BOOST_GPU_ENABLED
|
||||
# define BOOST_GPU_ENABLED
|
||||
# endif
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
// BOOST_VERSION / 100 % 1000 is the minor version
|
||||
// BOOST_VERSION / 100000 is the major version
|
||||
|
||||
#define BOOST_VERSION 104200
|
||||
#define BOOST_VERSION 104300
|
||||
|
||||
//
|
||||
// BOOST_LIB_VERSION must be defined to be the same as BOOST_VERSION
|
||||
@@ -27,7 +27,7 @@
|
||||
// number, y is the minor version number, and z is the patch level if not 0.
|
||||
// This is used by <config/auto_link.hpp> to select which library version to link to.
|
||||
|
||||
#define BOOST_LIB_VERSION "1_42"
|
||||
#define BOOST_LIB_VERSION "1_43"
|
||||
|
||||
#endif
|
||||
|
||||
|
||||
@@ -43,9 +43,7 @@ __extension__
|
||||
|
||||
int test()
|
||||
{
|
||||
llt<mask> m;
|
||||
(void)m;
|
||||
return 0;
|
||||
return llt<mask>::value != (1uLL << 50);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user