[C++-sig] Ellipsis parameter not handled in PYSTE

GameGuy gameguy at eastlink.ca
Mon Feb 16 14:51:29 CET 2004


FYI,

Normally this really isn't a problem, but if the ellipsis is used in the definition of a pure 
virtual member function then we get compilation errors.

PYSTE also tries to expose the member function in the class definition in the module.  As discussed 
already, this can't be done automatically (thanks David!).

I'm not exactly sure how PYSTE should wrap the pure virtual method so that it's portable (I'm kind 
of new to C++ so I may be professing ignorance here), but it definitely shouldn't be exposed in a 
.def in the class.

~Shaun


Foo.cpp
\Boost\include\boost-1_31\boost\python\object\value_holder.hpp(71) : error C2259: 
'`anonymous-namespace'::Foo_Wrapper' : cannot instantiate abstract class
         due to following members:
         'void Foo::method(const char *,...) const' : pure virtual function was not defined
         Foo.h(3) : see declaration of 'Foo::method'
         \Boost\include\boost-1_31\boost\type_traits\alignment_of.hpp(37) : see reference to class 
template instantiation 'boost::python::objects::value_holder_back_reference<Value,Held>' being compiled
         with
         [
             Value=Foo,
 
Held=boost::python::class_<Foo,boost::noncopyable,`anonymous-namespace'::Foo_Wrapper>::held_type
         ]
         \Boost\include\boost-1_31\boost\type_traits\alignment_of.hpp(52) : see reference to class 
template instantiation 'boost::detail::alignment_of_hack<T>' being compiled
         with
         [
             T=holder
         ]
         \Boost\include\boost-1_31\boost\type_traits\alignment_of.hpp(61) : see reference to class 
template instantiation 'boost::detail::alignment_of_impl<T>' being compiled
         with
         [
             T=holder
         ]
         \Boost\include\boost-1_31\boost\python\object\instance.hpp(30) : see reference to class 
template instantiation 'boost::alignment_of<T>' being compiled
         with
         [
             T=holder
         ]
         \Boost\include\boost-1_31\boost\python\object\instance.hpp(45) : see reference to class 
template instantiation 'boost::python::objects::instance<Data>' being compiled
         with
         [
             Data=holder
         ]
         \Boost\include\boost-1_31\boost\python\class.hpp(643) : see reference to class template 
instantiation 'boost::python::objects::additional_instance_size<Data>' being compiled
         with
         [
             Data=holder
         ]
         \Boost\include\boost-1_31\boost\function\function_template.hpp(383) : while compiling 
class-template member function 'void boost::python::class_<T,X1,X2>::register_holder(void)'
         with
         [
             T=Foo,
             X1=boost::noncopyable,
             X2=`anonymous-namespace'::Foo_Wrapper
         ]
         Foo.cpp(37) : see reference to function template instantiation 
'boost::python::class_<T,X1,X2>::class_<boost::python::init<>>(const char *,const 
boost::python::init_base<DerivedT> &)' being compiled
         with
         [
             T=Foo,
             X1=boost::noncopyable,
             X2=`anonymous-namespace'::Foo_Wrapper,
             DerivedT=boost::python::init<>
         ]

-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: Foo.h
URL: <http://mail.python.org/pipermail/cplusplus-sig/attachments/20040216/bc176226/attachment.txt>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: Foo.cpp
URL: <http://mail.python.org/pipermail/cplusplus-sig/attachments/20040216/bc176226/attachment-0001.txt>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: Foo.pyste
URL: <http://mail.python.org/pipermail/cplusplus-sig/attachments/20040216/bc176226/attachment-0002.txt>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Foo.xml
Type: text/xml
Size: 1591 bytes
Desc: not available
URL: <http://mail.python.org/pipermail/cplusplus-sig/attachments/20040216/bc176226/attachment.bin>


More information about the Cplusplus-sig mailing list