Re: KDevelop 5.6 beta 1 released
"Friedrich W. H. Kossebau" <[email protected]> Sat, 29 Aug 2020 01:20:12 +0200
| Newsgroups | gmane.comp.kde.devel.kdevelop |
|---|---|
| Organization | KDE |
| Message-ID | <3516231.ok6ZCnVLbk@klux> |
Am Freitag, 28. August 2020, 22:51:34 CEST schrieb René J. V. Bertin: > Friedrich W. H. Kossebau wrote: > > Hi René, > > > > Am Freitag, 28. August 2020, 21:38:07 CEST schrieb René J.V. Bertin: > >> Any idea why I'm getting this error (on Linux, and idem when using clang > >> 8 > >> and for the record, this on unpatched sources): > >> > >> [ 34%] Building CXX object > >> kdevplatform/project/CMakeFiles/KDevPlatformProject.dir/projectmodel.cpp. > >> o > >> cd /path/to/build/kdevplatform/project && /opt/local/bin/ccache > >> /opt/local/bin/clang++-mp-5.0 -DKCOREADDONS_LIB > >> -DKDevPlatformProject_EXPORTS -DKF_DEPRECATED_WARNINGS_SINCE=0x060000 > >> -DKF_DISABLE_DEPRECATED_BEFORE_AND_AT=0x053200 -DQT_CONCURRENT_LIB > >> -DQT_CORE_LIB -DQT_DBUS_LIB -DQT_DEPRECATED_WARNINGS > >> -DQT_DEPRECATED_WARNINGS_SINCE=0x060000 > >> -DQT_DISABLE_DEPRECATED_BEFORE=0x050800 -DQT_GUI_LIB -DQT_NETWORK_LIB > >> -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_FROM_BYTEARRAY -DQT_NO_CAST_TO_ASCII > >> -DQT_NO_DEBUG -DQT_NO_NARROWING_CONVERSIONS_IN_CONNECT > >> -DQT_NO_SIGNALS_SLOTS_KEYWORDS -DQT_NO_URL_CAST_FROM_STRING > >> -DQT_STRICT_ITERATORS -DQT_USE_QSTRINGBUILDER -DQT_WIDGETS_LIB > >> -DQT_XML_LIB > >> -DTRANSLATION_DOMAIN=\"kdevplatform\" -D_GNU_SOURCE -D_LARGEFILE64_SOURCE > >> -I/path/to/build/kdevplatform/project > >> -I/path/to/kf5-kdevelop-5/kdevplatform/project > >> -I/path/to/build/kdevplatform/project/KDevPlatformProject_autogen/include > >> -I/path/to/build -I/path/to/kf5-kdevelop-5/kdevplatform > >> -I/path/to/build/kdevplatform -I/path/to/build/kdevplatform/interfaces > >> -I/path/to/kf5-kdevelop-5/kdevplatform/interfaces > >> -I/path/to/build/kdevplatform/util > >> -I/path/to/kf5-kdevelop-5/kdevplatform/util > >> -I/path/to/build/kdevplatform/vcs > >> -I/path/to/kf5-kdevelop-5/kdevplatform/vcs > >> -I/path/to/build/kdevplatform/outputview > >> -I/path/to/kf5-kdevelop-5/kdevplatform/outputview > >> -I/path/to/build/kdevplatform/serialization > >> -I/path/to/kf5-kdevelop-5/kdevplatform/serialization > >> -I/path/to/build/kdevplatform/sublime > >> -I/path/to/kf5-kdevelop-5/kdevplatform/sublime -isystem > >> /opt/local/include/KF5/KTextEditor -isystem /opt/local/include/KF5 > >> -isystem > >> /opt/local/include/KF5/KParts -isystem /opt/local/include/KF5/KIOWidgets > >> -isystem /opt/local/include/KF5/KIOCore -isystem > >> /opt/local/include/KF5/KCoreAddons -isystem /opt/local/include/qt5 > >> -isystem > >> /opt/local/include/qt5/QtCore -isystem > >> /opt/local/share/qt5/mkspecs/linux-clang -isystem > >> /opt/local/include/KF5/KService -isystem > >> /opt/local/include/KF5/KConfigCore > >> -isystem /opt/local/include/qt5/QtNetwork -isystem > >> /opt/local/include/qt5/QtConcurrent -isystem > >> /opt/local/include/qt5/QtDBus > >> -isystem /opt/local/include/KF5/KJobWidgets -isystem > >> /opt/local/include/qt5/QtWidgets -isystem /opt/local/include/qt5/QtGui > >> -isystem /opt/local/include -isystem /opt/local/include/KF5/KCompletion > >> -isystem /opt/local/include/KF5/KWidgetsAddons -isystem > >> /opt/local/include/KF5/KXmlGui -isystem /opt/local/include/qt5/QtXml > >> -isystem /opt/local/include/KF5/KConfigWidgets -isystem > >> /opt/local/include/KF5/KCodecs -isystem /opt/local/include/KF5/KConfigGui > >> -isystem /opt/local/include/KF5/KAuth -isystem > >> /opt/local/include/KF5/KTextWidgets -isystem > >> /opt/local/include/KF5/SonnetUi -isystem /opt/local/include/KF5/KI18n > >> -O3 > >> -march=native -g -fno-limit-debug-info -fstandalone-debug -std=c++11 > >> -isystem/opt/local/include -g -fno-limit-debug-info -fstandalone-debug > >> -m64 > >> -fno-operator-names -fno-exceptions -DQT_NO_EXCEPTIONS > >> -Wno-gnu-zero-variadic-macro-arguments -Wall -Wextra -Wcast-align > >> -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith > >> -Wundef > >> -Wnon-virtual-dtor -Woverloaded-virtual -Werror=return-type -Wvla > >> -Wdate-time -Wzero-as-null-pointer-constant -fPIC -fvisibility=hidden > >> -fvisibility-inlines-hidden -Wno-missing-field-initializers > >> -Werror=switch -Werror=undefined-bool-conversion > >> -Werror=tautological-undefined-compare -Werror=implicit-fallthrough > >> -Wdocumentation -Wcovered-switch-default -Wunreachable-code-break > >> -Wno-gnu-zero-variadic-macro-arguments -pedantic -fPIC -std=gnu++11 -o > >> CMakeFiles/KDevPlatformProject.dir/projectmodel.cpp.o -c > >> /path/to/kf5-kdevelop-5/kdevplatform/project/projectmodel.cpp > >> /path/to/kf5-kdevelop-5/kdevplatform/project/projectmodel.cpp:174:14: > >> error: no viable overloaded '=' d->flags = Qt::ItemIsSelectable | > >> Qt::ItemIsEnabled; > >> > >> ~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > >> > >> /opt/local/include/qt5/QtCore/qflags.h:91:7: note: candidate function > >> (the > >> implicit copy assignment operator) not viable: no known conversion from > >> 'int' to 'const QFlags<Qt::ItemFlag>' for 1st argument class QFlags > >> > >> ^ > >> > >> /opt/local/include/qt5/QtCore/qflags.h:91:7: note: candidate function > >> (the > >> implicit move assignment operator) not viable: no known conversion from > >> 'int' to 'QFlags<Qt::ItemFlag>' for 1st argument 1 error generated. > >> make[1]: *** > >> [kdevplatform/project/CMakeFiles/KDevPlatformProject.dir/projectmodel.cpp > >> .o > >> ] Error 1 > > > > Thanks for reporting. What version of Qt & KF? > > Qt 5.9.8, KF5 5.60.0, ECM 5.70.3 (for both reported cases of course). Ah, Qt 5.9. Meh, guess a commit of mine is to blame, the one which moved Q_DECLARE_OPERATORS_FOR_FLAGS into the closest enclosing namespaces of the flags for which they declare the operator|() methods (-> bd8a49a10ab290874bfddf2c9824697bc1a04243). And while that commit should actually prevent the very same build errors with our KDevelop flags, they on the other hand seem to now trigger instead themselves those build errors with Qt < 5.12, as Qt itself was only fixed for Qt 5.12 for this, cmp. https://codereview.qt-project.org/c/qt/qtbase/+/225348 I did a commit now adapting that to use the new Q_DECLARE_OPERATORS_FOR_FLAGS locations only for Qt >= 5.12, and the old for Qt 5.12. Pushed both to 5.6 & master. Please give it a try and report. Cheers Friedrich