PySide Bugzilla Closed for New Bugs

PySide is now a Qt Add-on and uses the Qt Project's JIRA Bug Tracker instead of this Bugzilla instance. This Bugzilla is left for reference purposes.

Bug 422 - New: Incorrect code generated when declaring a signal using QList as argument.
: New: Incorrect code generated when declaring a signal using QList as argument.
Status: CLOSED FIXED
Product: PySide
Classification: Unclassified
Component: Shiboken
: HEAD
: All All
: P3 normal
Assigned To: Marcelo Lira
:
:
:
  Show dependency treegraph
 
Reported: 2010-10-20 11:06 EEST by Willer Moreira
Modified: 2010-11-25 17:48 EET (History)
8 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Willer Moreira 2010-10-20 11:06:56 EEST
I have a class that declares a signal:

modified(QList<const char *>&)

Shiboken is generating the following code:

Shiboken::TypeResolver::createValueTypeResolver<QList<const char  > >("QList<
char> const");

The code generated for this signal is breaking the compilation:

cd /home/willer/upload/meegotouch/python-meegotouch/build-2.6-dbg/MeeGo/Touch
&& /scratchbox/compilers/bin/c++   -DTouch_EXPORTS -DQT_GUI_LIB -DQT_CORE_LIB
-DPy_DEBUG -DQT_DEBUG -g -O2  -Wall -fvisibility=hidden -Wno-strict-aliasing -g
-fPIC -I/usr/include/qt4 -I/usr/include/qt4/QtGui -I/usr/include/qt4/QtCore
-I/home/willer/upload/meegotouch/python-meegotouch/MeeGo/Touch/Touch
-I/usr/include/shiboken -I/usr/include/python2.6 -I/usr/include/PySide
-I/usr/include/PySide/QtCore -I/usr/include/PySide/QtGui
-I/usr/include/PySide/QtNetwork -I/usr/include/PySide/QtXml
-I/usr/include/PySide/QtOpenGL -I/usr/include/qt4/QtNetwork
-I/usr/include/qt4/QtXml -I/usr/include/qt4/QtOpenGL -I/usr/include/meegotouch 
 -o CMakeFiles/Touch.dir/MeeGo/Touch/mwidgetmodel_wrapper.cpp.o -c
/home/willer/upload/meegotouch/python-meegotouch/build-2.6-dbg/MeeGo/Touch/MeeGo/Touch/mwidgetmodel_wrapper.cpp
In file included from /usr/include/shiboken/shiboken.h:30,
                 from
/home/willer/upload/meegotouch/python-meegotouch/build-2.6-dbg/MeeGo/Touch/MeeGo/Touch/mwidgetmodel_wrapper.cpp:29:
/usr/include/shiboken/conversions.h: In static member function 'static
PyObject* Shiboken::StdListConverter<StdList>::toPython(const StdList&) [with
StdList = QList<const char>]':
/usr/include/shiboken/conversions.h:585:   instantiated from 'static PyObject*
Shiboken::StdListConverter<StdList>::toPython(void*) [with StdList =
QList<const char>]'
/usr/include/shiboken/typeresolver.h:85:   instantiated from 'static
Shiboken::TypeResolver* Shiboken::TypeResolver::createValueTypeResolver(const
char*) [with T = QList<const char>]'
/home/willer/upload/meegotouch/python-meegotouch/build-2.6-dbg/MeeGo/Touch/MeeGo/Touch/mwidgetmodel_wrapper.cpp:1300:
  instantiated from here
/usr/include/shiboken/conversions.h:592: error: 'toPython' is not a member of
'Shiboken::Converter<const char>'
/usr/include/shiboken/conversions.h: In static member function 'static StdList
Shiboken::StdListConverter<StdList>::toCpp(PyObject*) [with StdList =
QList<const char>]':
/usr/include/shiboken/typeresolver.h:38:   instantiated from 'void*
Shiboken::pythonToValueType(PyObject*) [with T = QList<const char>]'
/usr/include/shiboken/typeresolver.h:85:   instantiated from 'static
Shiboken::TypeResolver* Shiboken::TypeResolver::createValueTypeResolver(const
char*) [with T = QList<const char>]'
/home/willer/upload/meegotouch/python-meegotouch/build-2.6-dbg/MeeGo/Touch/MeeGo/Touch/mwidgetmodel_wrapper.cpp:1300:
  instantiated from here
/usr/include/shiboken/conversions.h:604: error: 'toCpp' is not a member of
'Shiboken::Converter<const char>'
In file included from /usr/include/qt4/QtCore/qobject.h:50,
                 from /usr/include/qt4/QtCore/QObject:1,
                 from /usr/include/PySide/qsignal.h:28,
                 from
/home/willer/upload/meegotouch/python-meegotouch/build-2.6-dbg/MeeGo/Touch/MeeGo/Touch/mwidgetmodel_wrapper.cpp:30:
/usr/include/qt4/QtCore/qlist.h: In member function 'void
QList<T>::node_copy(QList<T>::Node*, QList<T>::Node*, QList<T>::Node*) [with T
= const char]':
/usr/include/qt4/QtCore/qlist.h:696:   instantiated from 'void
QList<T>::detach_helper(int) [with T = const char]'
/usr/include/qt4/QtCore/qlist.h:710:   instantiated from 'void
QList<T>::detach_helper() [with T = const char]'
/usr/include/qt4/QtCore/qlist.h:118:   instantiated from 'QList<T>::QList(const
QList<T>&) [with T = const char]'
/usr/include/shiboken/conversions.h:93:   instantiated from 'static T*
Shiboken::CppObjectCopier<T, false>::copy(const T&) [with T = QList<const
char>]'
/usr/include/shiboken/typeresolver.h:38:   instantiated from 'void*
Shiboken::pythonToValueType(PyObject*) [with T = QList<const char>]'
/usr/include/shiboken/typeresolver.h:85:   instantiated from 'static
Shiboken::TypeResolver* Shiboken::TypeResolver::createValueTypeResolver(const
char*) [with T = QList<const char>]'
/home/willer/upload/meegotouch/python-meegotouch/build-2.6-dbg/MeeGo/Touch/MeeGo/Touch/mwidgetmodel_wrapper.cpp:1300:
  instantiated from here
/usr/include/qt4/QtCore/qlist.h:386: error: invalid conversion from 'const
void*' to 'void*'
Comment 1 renato filho 2010-10-20 14:20:43 EEST
fixed on shiboken commit:

commit 4ecf999ebfd00a604de6a8e0859a65f2489263aa
Author: renatofilho <renato.filho@openbossa.org>
Date:   Wed Oct 20 11:44:09 2010 -0300
Comment 2 renato filho 2010-11-25 17:48:14 EET
released on 1.0.0~beta1