Boost logo

Boost :

From: Richard Webb (richard.webb_at_[hidden])
Date: 2008-04-20 07:09:48


John Maddock <john <at> johnmaddock.co.uk> writes:

>
> Looks like a bug in the MS implementation to me, the test case appears to be
> something like:
>
> typedef int (&func_ref)(float, double);
> typedef result_of<function_ref(float,double)>::type result_type; // error
> here.
>

Thanks.

Following on with the type_traits failures with is_polymorphic
(http://tinyurl.com/6jq57y):

If you have:

class foo
{
public:
        virtual ~foo()
        {

        }
};

class bar : virtual public foo
{
public:
        virtual ~bar()
        {

        }
};

Then boost::is_polymorphic<bar> is true, but mstr1::is_polymorphic<bar> is false.

If i either:
-make foos destructor non-virtual
-add an additional virtual method to bar
-change the defintion of bar to 'class bar : public foo'

then mstr1::is_polymorphic<bar> becomes true.
MS Bug?

Thanks,
Richard Webb


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk