forked from boostorg/preprocessor
Updated the docs for limitations.
This commit is contained in:
+34
-20
@@ -1,39 +1,53 @@
|
||||
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
||||
<html>
|
||||
<head>
|
||||
<meta content="text/html; charset=windows-1252" http-equiv="content-type">
|
||||
<meta content="text/html; charset=windows-1252"
|
||||
http-equiv="content-type">
|
||||
<title>BOOST_PP_LIMIT_REPEAT</title>
|
||||
<link rel="stylesheet" type="text/css" href="../styles.css">
|
||||
</head>
|
||||
<body>
|
||||
<div style="margin-left: 0px;"> The <b>BOOST_PP_LIMIT_REPEAT</b> macro
|
||||
defines the maximum number of repetitions supported by each <b>BOOST_PP_REPEAT</b>
|
||||
dimension. </div>
|
||||
<div style="margin-left: 0px;"> The <b>BOOST_PP_LIMIT_REPEAT</b>
|
||||
macro defines the maximum number of repetitions supported by each
|
||||
<b>BOOST_PP_REPEAT</b> dimension. </div>
|
||||
<h4>Usage</h4>
|
||||
<div class="code"> <b>BOOST_PP_LIMIT_REPEAT</b> </div>
|
||||
<h4>Remarks</h4>
|
||||
<div> This macro current expands to <i>256</i>.<br>
|
||||
<div>This macro expands by default to <i>256</i>. The end-user can
|
||||
change this to 512 or 1024 by defining this macro to either value
|
||||
before including any library headers, as long as the end-user also
|
||||
defines the <a
|
||||
href="file:///E:/Programming/VersionControl/modular-boost/libs/preprocessor/doc/ref/limit_mag.html">BOOST_PP_LIMIT_MAG</a>
|
||||
macro to be equal to or greater than this value. <br>
|
||||
<br>
|
||||
NOTE: for the current latest versions of Microsoft's VC++ compiler there
|
||||
is a nested macro limit of 256. This means in actuality that the number of
|
||||
repetitions using VC++ is actually less than 256 depending on the
|
||||
repetition macro being used. For the BOOST_PP_REPEAT macro this limit
|
||||
appears to be 252 while for the BOOST_PP_ENUM... series of macros this
|
||||
limit appears to be around 230, before the VC++ compiler gives a "C1009:
|
||||
compiler limit : macros nested too deeply" error. This is a compiler
|
||||
limitation of VC++ which may vary depending on the specific repetition
|
||||
macro being used, and therefore is not a problem the preprocessor library
|
||||
can solve.</div>
|
||||
NOTE: for the current latest versions of default preprocessor for
|
||||
Microsoft's VC++ compiler there is a nested macro limit of 256.
|
||||
This means in actuality that the number of repetitions using VC++
|
||||
is actually less than 256 depending on the repetition macro being
|
||||
used. For the BOOST_PP_REPEAT macro this limit appears to be 252
|
||||
while for the BOOST_PP_ENUM... series of macros this limit appears
|
||||
to be around 230, before the VC++ compiler gives a "C1009:
|
||||
compiler limit : macros nested too deeply" error. This is a
|
||||
compiler limitation of VC++ which may vary depending on the
|
||||
specific repetition macro being used, and therefore is not a
|
||||
problem the preprocessor library can solve. This limitation of the
|
||||
default preprocessor for VC++ does not exist for the new standard
|
||||
conforming preprocessor for VC++ in Visual Studio 2019 invoked
|
||||
with the<code> /Zc:preprocessor</code> switch.<br>
|
||||
</div>
|
||||
<h4>Requirements</h4>
|
||||
<div> <b>Header:</b> <a href="../headers/config/limits.html"><boost/preprocessor/config/limits.hpp></a>
|
||||
</div>
|
||||
<hr size="1">
|
||||
<div style="margin-left: 0px;"> <i>© Copyright <a href="http://www.housemarque.com"
|
||||
target="_top">Housemarque Oy</a> 2002</i> <br>
|
||||
<div style="margin-left: 0px;"> <i>© Copyright <a
|
||||
href="http://www.housemarque.com" target="_top">Housemarque Oy</a>
|
||||
2002</i> <br>
|
||||
<i>© Copyright Paul Mensonides 2002</i> </div>
|
||||
<div style="margin-left: 0px;">
|
||||
<p><small>Distributed under the Boost Software License, Version 1.0. (See
|
||||
accompanying file <a href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a>
|
||||
or copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
<p><small>Distributed under the Boost Software License, Version
|
||||
1.0. (See accompanying file <a
|
||||
href="../../../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
|
||||
copy at <a href="http://www.boost.org/LICENSE_1_0.txt">www.boost.org/LICENSE_1_0.txt</a>)</small></p>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user