Boost logo

Boost :

From: Ralf W. Grosse-Kunstleve (rwgk_at_[hidden])
Date: 2003-03-06 13:24:50


--- David Abrahams <dave_at_[hidden]> wrote:
> There are any number of ways you could try reformulating this to make
> the error go away. At worst you could try the __BORLANDC__ branch in
> is_base_and_derived.hpp.
>
> Another approach:
>
> template <typename B, typename D, typename T>
> static type_traits::yes_type bd_helper(D const volatile *, T);
>
> template <typename B, typename D>
> static type_traits::no_type bd_helper(B const volatile *, int);

That doesn't work because older EDG's don't support the bd_helper<B,D> syntax.
To be sure I just tried it again and it failed.

Using the __BORLANDC__ branch got me a little further. Some Boost.Python tests
compile and run.

Is the __BORLANDC__ branch different from (not as good as) the
is_base_and_derived implementation in 1.29.0?

There are many new errors when compiling the Boost.Python tests, but most of
them are identical:

mipspro-C++-action
/var/tmp/rwgk/bjam/libs/python/test/bin/embedding.test/mipspro/debug/embedding.o
cc-3192 CC: ERROR File =
/u1/rwgrosse/rc_1_30_0/boost/boost/mpl/fold_backward.hpp, Line = 47
  The nontype "boost::mpl::fold_backward<T1, T2, T3,
boost::mpl::arg<1>>::rebind"
          is not a class template.

      BOOST_MPL_AUX_LAMBDA_SUPPORT(3,fold_backward,(Sequence,State,BackwardOp))
      ^

I've preprocessed the source of test/embedding.cpp and stripped out all #line
directives. The error message then becomes:

cc-3192 CC: ERROR File = zzstrip.cpp, Line = 71667
  The nontype "boost::mpl::fold_backward<T1, T2, T3,
boost::mpl::arg<1>>::rebind"
          is not a class template.

      static const int arity = 3; typedef Sequence arg1; typedef State arg2;
typedef BackwardOp arg3; struct rebind; }; template< typename T1,typename
T2,typename T3 > struct fold_backward<T1,T2,T3> ::rebind { template< typename
U1,typename U2,typename U3 > struct apply : fold_backward< U1,U2,U3 > { };
                                                                               
                                                                               
                                           ^

With the ^ pointing to the beginning of ::rebind.

The full prepocessed, stripped file is here:

http://cci.lbl.gov/~rwgk/tmp/zzstrip.cpp

Are there any insights what the compiler is choking on here?

Thanks,
        Ralf

__________________________________________________
Do you Yahoo!?
Yahoo! Tax Center - forms, calculators, tips, more
http://taxes.yahoo.com/


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