Boost C++ Libraries: Ticket #2252: Doc or design problem https://svn.boost.org/trac10/ticket/2252 <blockquote> <p> The library is designed to work well with other Boost libraries and uses well-accepted concepts introduced by Boost and TR1. </p> </blockquote> <blockquote> <p> Templates that encapsulate boolean or numeric properties define a static member constant called value. </p> </blockquote> <pre class="wiki">is_function_pointer&lt; bool(*)(int) &gt;::value // == true function_arity&lt; bool(*)(int) &gt;::value // == 1 </pre><p> The problem is that having a nested static member constant called value is neither necessary nor sufficient to work with MPL. The approach that makes it work the most smoothly would derive the template specialization from an <a href="http://www.boost.org/doc/libs/1_36_0/libs/mpl/doc/refmanual/integral-constant.html:">MPL Integral Constant</a>, but at <em>least</em> you need a nested <code>::type</code> member. </p> en-us Boost C++ Libraries /htdocs/site/boost.png https://svn.boost.org/trac10/ticket/2252 Trac 1.4.3