|
Boost Testing : |
From: Toon Knapen (toon.knapen_at_[hidden])
Date: 2005-06-06 06:03:43
John Maddock <john_at_[hidden]> wrote:
>OK I can only see one difference: you're code doesn't have a leading ::
removing this does'nt have any effect ;-(
>
>Failing that, you could try:
>
>template <>
>struct is_enum_helper<false>
>{
>template <typename T> struct type
>: {
>BOOST_STATIC_CONSTANT(bool, value = (::boost::is_convertible<typename
>boost::add_reference<T>::type,::boost::detail::int_convertible>::value));
>
>};
>};
Good idea. Well now the compiler complains that is_convertible is not
defined. This I found hard to believe because is_convertible.hpp is included
at the beginning of is_enum.hpp. So I even simplified it to
static const bool value = ::boost::is_convertible < int, float >::value ;
(which is of course not correct but just for testing if vacpp has a problem
with is_convertible inside this is_enum_impl) and still vacpp says
is_convertible is not declared.
So I preprocessed the file and indeed, the include of is_convertible.hpp
seems to fail or soth because the statement above is the first occurence of
is_convertible and thus is_convertible is indeed not declared. But it
should! So I'm guessing there is soth. wrong with the preprocessor, not the
compiler. So could it be that the vacpp PP has a problem with
BOOST_TT_AUX_BOOL_TRAIT_DEF2(is_convertible,From,To,(::boost::detail::is_convertible_impl_dispatch<From,To>::value))
which is AFAICT the declaration of is_convertible in is_convertible.hpp (I
have to admit that I have no idea what this does exactly, I probably should
get up to speed with the boost.pp library;-(
Ideas ???
I've attached the preprocessed process_jam_log.cpp just in case it might
provide a clue to someone