[C++-sig] operator !=?

Giulio Eulisse giulio.eulisse at cern.ch
Mon Mar 31 11:11:13 CEST 2003


When trying to pystify any of the operator!= of any of the QT classes I
get the following error:

boostQT.cc: In function `void init_module_boostQT ()':
boostQT.cc:1458: no matching function for call to 
`boost::python::class_<QVariant, boost::python::detail::not_specified, 
boost::python::detail::not_specified, 
boost::python::detail::not_specified>::def (bool)'
boostQT.cc:1914: parse error before `.'
boostQT.cc:2914: no matching function for call to 
`boost::python::class_<QWidget, boost::noncopyable, 
{unnamed}::QWidget_Wrapper, boost::python::detail::not_specified>::def 
(const char[15], {unknown type}, void ({unnamed}::QWidget_Wrapper::*) 
(int, int))'
/usr/include/g++-3/stl_relops.h: In function `bool operator!= (const 
_Tp &, const _Tp &) [with _Tp = boost::python::self_ns::self_t]':
boostQT.cc:1458:   instantiated from here
/usr/include/g++-3/stl_relops.h:38: no match for 
`!boost::python::detail::operator_<op_eq, 
boost::python::self_ns::self_t, boost::python::self_ns::self_t>'
/usr/include/g++-3/stl_relops.h:38: candidates are: operator!(bool) 
<builtin>

It happens, for example, with QVariant:

class QVariant
{
[...]
bool operator==( const QVariant& ) const;
[...]
}; 

which gets converted to:


        .def( self != self )

which looks correct to me...Any idea?

-- 
Giulio Eulisse
Northeastern University, Boston, MA (USA)
CERN, Geneve, GE (CH)
Office: 40-3-A15
Office phone:76 71692 Cellphone:(+39) 3356972726
Homepage: http://home.cern.ch/eulisse/





More information about the Cplusplus-sig mailing list