Re: [sigc] ANNOUNCE: libsigc++ 1.9.12 (aka libsigc++ 2.0 beta 1)



Am 2003.11.10 10:50 schrieb(en) Roel Vanhout:
Ok I'm back from my week training so I had a chance to check 1.9.12 with Visual Studio.

First off, I could see in the changelog that the Visual Studio project files should be in 1.9.12 but they were not in the tarball that I downloaded. So I just copied over the old files that I had.

I didn't check this. Probably, Makefiles are needed in the
subdirectories that define EXTRA_DIST. I will add them later this
week unless somebody else provides a patch.

8 of the test succeed, 10 still fail. One of the problems is that in adaptor_trait.h it says

#ifdef MSVC
#define LIBSIGC_TEMPLATE_PREFIX
#else
#define LIBSIGC_TEMPLATE_PREFIX template
#endif

But 'MSVC' isn't necessarily defined on the vc compiler; I changed the first line to

#ifdef _MSC_VER

and then 14 tests succeeded and only 4 still failed.

Good. I'm committing this to cvs, now.

Those 4 all use bind.h (test_size, test_functor_trait, test_compatibility and test_bind) so I think it is safe to assume that this error is the last one left.

The problem is still in

template <int I_location, class T_bound1, class T_bound2, class T_functor>
inline bind_functor<I_location, typename unwrap_reference<T_bound1>::
type,
bind_functor<I_location?I_location+1:0, typename unwrap_reference<T_bound2>::type, T_functor> >
bind(const T_functor& _A_functor, T_bound1 _A_b1, T_bound2 _A_b2)
{
return bind_functor<I_location, typename unwrap_reference<T_bound1>::type, bind_functor<I_location?I_location+1:0, typename unwrap_reference<T_bound2>::type, T_functor> > (bind<I_location?I_location+1:0>(_A_functor, _A_b2), _A_b1);
}

The error is

c:\test\libsigc++-1.9.12\sigc++\adaptors\bind.h(507) : error C2143: syntax error : missing ',' before '<end Parse>'

(documentation for this error says:
syntax error : missing 'token1' before 'token2'

The compiler expected a specific token (a language element other than white space) and found another token instead.)

Hm, we already made sure that the compiler understands expressions like
bind<I_location?I_location+1:0> so I'm completely at sea why this still
fails. Could you try to play around with the bind function a bit?
Comment out the return expression and other stuff and see if it works
then. "line 507" as given by the compiler doesn't help much.

Thanks!

  Martin



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]