Boost C++ Libraries: Ticket #1966: Need VC8 workaround
https://svn.boost.org/trac10/ticket/1966
<pre class="wiki">template <class A0, class A1 = boost::parameter::void_>
struct sparse
: sparse_impl<
typename sparse_signature::bind<A0,A1>::type
>
{
typedef sparse_impl< typename sparse_signature::bind<A0,A1>::type > base;
BOOST_PARAMETER_CONSTRUCTOR(
sparse, (base), tag,
(required
(nrows, (std::size_t))
)
(optional
(nstored, (std::size_t))
)
)
// workarounds for VC8 bugs
sparse(sparse const& rhs)
: sparse_impl((sparse_impl const&)rhs)
{}
sparse& operator=(sparse const& rhs)
{
*(sparse_impl*)this = (sparse_impl const&)rhs;
return *this;
}
};
</pre><p>
The problem is that the automatically-generated copy ctor and assignment essentially leave out the casts above, and get routed to the templated ctor in the base class.
The question is, should we incorporate these fixes in BOOST_PARAMETER_CONSTRUCTOR?
</p>
en-usBoost C++ Libraries/htdocs/site/boost.png
https://svn.boost.org/trac10/ticket/1966
Trac 1.4.3Steven WatanabeSat, 30 May 2009 00:14:49 GMTcomponent changed
https://svn.boost.org/trac10/ticket/1966#comment:1
https://svn.boost.org/trac10/ticket/1966#comment:1
<ul>
<li><strong>component</strong>
<span class="trac-field-old">None</span> → <span class="trac-field-new">parameter</span>
</li>
</ul>
Ticket