Re: [sigc] Re: [Bug 147391] - test_lambda does not compile with SUN Forte 5.5



Wow, I think you got it.
make log attached.

----- Original Message -----
From: Martin Schulze <martin-ml hippogriff de>
Date: Friday, August 13, 2004 10:07 pm
Subject: Re: [sigc] Re: [Bug 147391] - test_lambda does not compile with SUN Forte 5.5

> Hi Damien!
> 
> Sorry for the break - Now I have time to look at this error. 
> Obviously  
> it occurs in the compatibility module, the reason being that the 
> FORTE  
> does not handle the "const" keyword correctly when building a slot 
> from  
> a const member method.
> 
> However, the implementation causing the error does not differ from  
> libsigc++-1.2's so most likely slots referring to const member 
> methods  
> didn't work with the FORTE before. Therefore, the compatibility 
> module  
> doesn't need to solve this non-trivial problem.
> 
> Instead, I will remove the const member method test from  
> test_compatibility.cc and upload to:
> 
>  http://www.hippogriff.de/libsigc++-2.0.4-test5.tar.gz
> 
> Please try this one!
> 
> Regards,
> 
>  Martin
> 
> 
> Am 11.08.2004 11:03:08 schrieb(en) Damien Carbery:
> > /sgnome/tools/sparc-solaris/forte/SOS8/SUNWspro/bin/CC  -I. -I. -I..
> > -I.. -I..    -g -c -o test_compatibility.o test_compatibility.cc
> > "../sigc++/object_slot.h", line 175: Error: Could not find a 
> match  
> > for
> > sigc::bound_mem_functor1<void, foo, const std::string
> > &>::bound_mem_functor1(const foo, void(foo::*)(const std::string
> > &)const).
> > "test_compatibility.cc", line 57:     Where: While instantiating
> > "SigC::slot<void, const std::string &, foo, foo>(const foo&,
> > void(foo::*)(const std::string &)const)".
> > "test_compatibility.cc", line 57:     Where: Instantiated from
> > non-template code.
> > 1 Error(s) detected.
> > make[2]: *** [test_compatibility.o] Error 1
> > make[2]: Leaving directory `/jds/libsigc/libsigc++-2.0.4/tests'
> > 
> > 
> > FYI: I used tarball test4.
> > I work with a clean directory each time, removing the old stuff  
> > first.
> > 
> > Damien
> > 
> > ----- Original Message -----
> > From: Martin Schulze <martin-ml hippogriff de>
> > Date: Tuesday, August 10, 2004 6:24 pm
> > Subject: Re: [sigc] Re: [Bug 147391] - test_lambda does not compile
> > with SUN Forte 5.5
> > 
> > > Am 10.08.2004 18:09:36 schrieb(en) Damien Carbery:
> > > > make failed.
> > > >
> > > > To be sure I have the correct tarball:
> > > > $ cksum libsigc++-2.0.4-test3.tar.gz
> > > > 761559274 1767826 libsigc++-2.0.4-test3.tar.gz
> > >
> > > The tarball is correct. I don't understand why the FORTE doesn't
> > > choose
> > > the template specialization:
> > >
> > >  template <class T_type>
> > >  struct convert_array
> > >  { typedef T_type& type; };
> > >
> > >  template <class T_type, int N>
> > >  struct convert_array<T_type[N]>
> > >  { typedef T_type* type; };
> > >
> > >  [...]
> > >
> > > 'convert_array<const T_type>::type' (with T_type='char(&)[2]')
> > > gives
> > > 'const char(&)[2]' instead of 'const char*'. gcc works as 
> expected.> >
> > > This is unnerving! Especially since glibmm uses the same trick to
> > > distinguish between array types and other types.
> > >
> > > Probably there is a compiler bug. I will upload a tarball that has
> > > the
> > > offending lines in test_lambda.cc disabled so that we can move on.
> > > Please try:
> > >
> > >  libsigc++-2.0.4-test4.tar.gz
> > >
> > > in two hours or so.
> > >
> > > Regards,
> > >
> > >  Martin
> > >
> > 
> 

Attachment: forte-aug14.tar.gz
Description: GNU Zip compressed data



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