> Are you using Ubuntu 9.10 (karmic)?
> 
> We are trying to fix the very same issue on PySide, and so far the
> problem seems only to happen on Karmic. On Ubuntu 9.04 (jaunty) the
> same binary package works fine.

Hi, yes, I am at ubuntu karmic. (It was me discussing that with you on IRC
 a few days back). By bisecting the (quite small) py++-generated wrapper that
I use I found out that the problem is caused by def_readonly. If I comment them
out, everything works fine. 

Isolating the offensive code (by hand):

BOOST_PYTHON_MODULE(miniWm3Wrap){
  typedef bp::class_< Wm3::Quaternion< double > > Quaternion_exposer_t;
  Quaternion_exposer_t Quaternion_exposer =
    Quaternion_exposer_t( "Quaternion", bp::init< >() );
  // ...
  Quaternion_exposer.def_readonly( "IDENTITY",
    Wm3::Quaternion< double >::IDENTITY );
}

the last line will cause the trouble. The decl&definition of
Quaternion<double>::IDENTITY:
 
  // template in the header
  static const Quaternion IDENTITY;
  // in the .cpp
  template<> const Quaternion<double> 
    Quaternion<double>::IDENTITY(1.0,0.0,0.0,0.0);

If I have time, I will try to make minimum example exhibiting the bug. That
should make it easier to find out what's gouing wrong.

As an information for other people: this bug was consistently present at
the mentioned ubuntu version (the future 9.10) regardless of complier/boost 
version, python 2.6.2. I wasn't able to reproduce it on debian/other ubuntu
versions either.

Hope we will be able to sort it out soon.

Cheers, Vaclav

_______________________________________________
Cplusplus-sig mailing list
Cplusplus-sig@python.org
http://mail.python.org/mailman/listinfo/cplusplus-sig

Reply via email to