e>
    <pre>
bool operator()(typename call_traits&lt;typename Predicate::argument_type&gt;::param_type x) const
</pre>
  </blockquote>

  <p>the desired result would be achieved - we would eliminate references to
  references without loss of efficiency. In fact, the actual declaration is
  slightly more complicated because of the use of function object traits, but
  the effect remains the same.</p>

  <h3>Limitations</h3>

  <p>Both the function object traits and call traits used to realise these
  improvem