Uploaded image for project: 'Qt for Python'
  1. Qt for Python
  2. PYSIDE-498

weird design error in shiboken

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • P2: Important
    • 6.0, 6.1
    • 5.6
    • Shiboken
    • macOS
    • fd3dbb4678526535bb3e50d39dd69d590304890b (pyside/pyside-setup/dev) 089165649cdac84d589b886f390eb990e021aee6 (pyside/pyside-setup/6.1)

    Description

      There is a design bug in shiboken since Qt5 and PySide2 exists.
      I fixed it with an ugly workaround and added a nagging message since
      July 2015, and I'm not sure if anybody ever paid attention to this message?

      Please read this commit message of 70afb33fd3e9e87ac86f635ba88e005af5eabf86:

      fixed a problem with qRegisterMetaType that came up with Qt5.
      
      The problem is that an unqualified name gets registered ("iterator") by some hard to
      understand heuristics of shiboken. This way, the same name is used for objects which have
      different size in Qt5, and therefore things crash.
      
      The quick fix was to skip exactly the name "iterator" and output a warning.
      This needs to be fixed in a better way, but costs too much time at the moment,
      because I don't understand enough about possible side-effects, yet.
      

      You can see my ugly work-around in `cppgenerator.cpp:4817`. Just look for the text "hack(ct)".

      Shiboken finds 'iterator' for some reason and wants to produce wrong code. My hack simply
      intercepts and skips the case, but this is no solution!

      Some brave soul should please

      • comment the patch away and
      • check the wrong behavior by building PySide2.

      This is really broken.

      Attachments

        For Gerrit Dashboard: PYSIDE-498
        # Subject Branch Project Status CR V

        Activity

          People

            Unassigned Unassigned
            ctismer Christian Tismer
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes