|
Boost : |
From: Robert Ramey (ramey_at_[hidden])
Date: 2005-05-23 23:11:17
Rene Rivera wrote:
> David Abrahams wrote:
>> Rene Rivera <grafik.list_at_[hidden]> writes:
>>
>>
>>> Of course :-) What I did was this:
>>>
>>> template<class Derived, class Base>
>>> BOOST_DLLEXPORT const void * void_cast_register(
>>> const Derived * /* dnull = NULL */,
>>> const Base * /* bnull = NULL */
>>> ){
>>> boost::python::detail::force_instantiate(
>>> void_cast_detail::void_caster_primitive<
>>> const Derived,
>>> const Base
>>> >::instance);
>>> return & void_cast_detail::void_caster_primitive<
>>> const Derived,
>>> const Base
>>> >::instance;
>>> }
>>
>>
>> Ouch! Looks like a nasty bug. If you can generate a small test case
>> I can pass it directly to their compiler engineer.
>
> I'll try.
This has been very interesting. Now I'm wondering why test_void_cast
passes. It seems to be a simple test case to me and should fail according
to the above. But it passes on all the CW compilers.
Robert Ramey
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk