Details
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 |
355471,2 | shiboken: remove obsolete error message | dev | pyside/pyside-setup | Status: MERGED | +2 | 0 |
355542,2 | shiboken: remove obsolete error message | 6.1 | pyside/pyside-setup | Status: MERGED | +2 | 0 |