Details
-
Bug
-
Resolution: Done
-
P3: Somewhat important
-
5.14.2, 5.15.2
-
None
-
Plugins using Qt in an alien non-Qt application.
-
-
c2c163a7d8cb95a4901b742a72184975e791635a (qt/qtbase/dev) 15d497c38d1f1a482553f5f3db852d9dfcd78c24 (qt/qtbase/6.0) fbf51efafde9eed7e9effd33eba65d32866f8a10 (qt/qtbase/5.15)
Description
When I loaded 3rd-party plugins from 2 vendors using Qt 5.12 and Qt 5.14 into Adobe Illustrator on Mac, each using a custom QT_NAMESPACE, I noticed two instances of the infamous "Class XX is implemented in both Qt5Core...5.12... and Qt5Core....5.14.... One of the two will be used. Which one is undefined" message.
With XX being KeyValueObserver and RunLoopModeTracker. Apparently there is missing macro QT_MANGLE_NAMESPACE on one place for each of the two classes.
Please find attached a patch file for 5.14.2. I tested it, it solves the issue.
As the issue seems to appear also in 5.15.2, I am also attaching a patch file for 5.15.2. Although untested, it should work as well.