Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-8803

Broken bindings compatibility after qt 4.5.x -> 4.6.x transition.

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Invalid
    • Icon: Not Evaluated Not Evaluated
    • 4.6.3
    • 4.6.0, 4.6.1, 4.6.2
    • None
    • Linux kernel version - 2.6.31-20-generic.
      Distro name - Kubuntu 9.10 Jaunty.
      Compiler - g++ (Ubuntu 4.4.1-4ubuntu9) 4.4.1
    • d27163a7a8e81f05dae2e975e4d59d8226dbd9ec

      After updating Qt on my linux from 4.5.x to 4.6.2 the following binding does not compile anymore: qtHaskell. It returns the following errors, starting from this line:

      g++ -c -pipe -O2 -Wall -W -D_REENTRANT -fPIC -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB -DQT_SHARED -I/usr/share/qt4/mkspecs/linux-g++ -I. -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4 -I../include -I../.moc -o ../.obj/release/QGraphicsSceneContextMenuEvent.o ../src/gui/QGraphicsSceneContextMenuEvent.cpp
      In file included from /usr/include/qt4/QtGui/QGraphicsSceneEvent:1,
      from ../include/DhOther_gui.h:18,
      from ../src/gui/QGraphicsSceneContextMenuEvent.cpp:22:
      /usr/include/qt4/QtCore/qscopedpointer.h: In copy constructor 'QGraphicsSceneEvent::QGraphicsSceneEvent(const QGraphicsSceneEvent&)':
      /usr/include/qt4/QtCore/qscopedpointer.h:170: error: 'QScopedPointer<T, Cleanup>::QScopedPointer(const QScopedPointer<T, Cleanup>&) [with T = QGraphicsSceneEventPrivate, Cleanup = QScopedPointerDeleter<QGraphicsSceneEventPrivate>]' is private
      /usr/include/qt4/QtGui/qgraphicssceneevent.h:68: error: within this context
      /usr/include/qt4/QtGui/qgraphicssceneevent.h: In copy constructor 'QGraphicsSceneContextMenuEvent::QGraphicsSceneContextMenuEvent(const QGraphicsSceneContextMenuEvent&)':
      /usr/include/qt4/QtGui/qgraphicssceneevent.h:163: note: synthesized method 'QGraphicsSceneEvent::QGraphicsSceneEvent(const QGraphicsSceneEvent&)' first required here
      ../src/gui/QGraphicsSceneContextMenuEvent.cpp: In function 'void* qtc_QGraphicsSceneContextMenuEvent1(void*)':
      ../src/gui/QGraphicsSceneContextMenuEvent.cpp:35: note: synthesized method 'QGraphicsSceneContextMenuEvent::QGraphicsSceneContextMenuEvent(const QGraphicsSceneContextMenuEvent&)' first required here
      In file included from /usr/include/qt4/QtCore/qobject.h:54,
      from /usr/include/qt4/QtCore/qpointer.h:45,
      from ../include/qtc_def.h:28,
      from ../include/qtc_wrp_core.h:13,
      from ../src/gui/QGraphicsSceneContextMenuEvent.cpp:15:
      /usr/include/qt4/QtCore/qscopedpointer.h: In static member function 'static void QScopedPointerDeleter<T>::cleanup(T*) [with T = QGraphicsSceneEventPrivate]':
      /usr/include/qt4/QtCore/qscopedpointer.h:100: instantiated from 'QScopedPointer<T, Cleanup>::~QScopedPointer() [with T = QGraphicsSceneEventPrivate, Cleanup = QScopedPointerDeleter<QGraphicsSceneEventPrivate>]'
      /usr/include/qt4/QtGui/qgraphicssceneevent.h:68: instantiated from here
      /usr/include/qt4/QtCore/qscopedpointer.h:59: error: invalid application of 'sizeof' to incomplete type 'QGraphicsSceneEventPrivate'
      /usr/include/qt4/QtCore/qscopedpointer.h:59: error: creating array with negative size ('-0x00000000000000001')
      /usr/include/qt4/QtCore/qscopedpointer.h:62: warning: possible problem detected in invocation of delete operator:
      /usr/include/qt4/QtCore/qscopedpointer.h:54: warning: 'pointer' has incomplete type
      /usr/include/qt4/QtGui/qgraphicssceneevent.h:66: warning: forward declaration of 'struct QGraphicsSceneEventPrivate'
      /usr/include/qt4/QtCore/qscopedpointer.h:62: note: neither the destructor nor the class-specific operator delete will be called, even if they are declared when the class is defined.

      and it stops here.

      I don't know if this is intended, but in qtHaskell "user guide" it says that it should work with future versions.

      p.s. Google search on "qscopedpointer.h:170" returns that there are similar problems with bindings to other languages. For example - http://www.mail-archive.com/fink-users@lists.sourceforge.net/msg31936.html shows that there are problems with python bindings in qt 4.6.x.

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

            goffart Olivier Goffart (closed Nokia identity) (Inactive)
            evgenijm86 Evgenij
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

              Created:
              Updated:
              Resolved:

                There are no open Gerrit changes