KDevelop 5.6 beta 1 released
Friedrich W. H. Kossebau
kossebau at kde.org
Sat Aug 29 00:20:12 BST 2020
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
More information about the KDevelop-devel
mailing list