|
Boost : |
From: John Maddock (jm_at_[hidden])
Date: 2003-03-19 06:58:46
> >>Is this happening somewhere in the type traits code? Can you post an
> >>instantiation backtrace?
> >>
> >
> > It seems to be. Here's the error message:
>
> I guess the question here is: "should
> is_polymorphic<some_union>::value compile?"
>
> If so, then we have a bug in is_polymorphic. If not, we should
> change all uses of is_polymorphic<T> in
>
> boost/python/class.hpp
> boost/python/object/class_converters.hpp
> boost/python/object/inheritance.hpp
>
> to:
> mpl::and_<is_class<T>, is_polymorphic<T> >
>
> You can make this patch yourself in Boost.Python as an interim
> measure to see if it makes wrapping unions work.
It won't, we can't tell unions and classes apart, and we can't inherit from
unions as is_polymorphic requires - in fact is_polymorphic already checks
is_class internally, the only fix is to specialise is_class for the problem
union type.
John.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk