KDevelop 5.6 beta 1 released

René J. V. Bertin rjvbertin at gmail.com
Fri Aug 28 21:51:34 BST 2020


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).

The reason I think it's a change in the headers is that I tried something a bit 
unorthodox: I executed the 5.6 compile command for projectmodel.cpp in the 5.5.2 
build directory. That still builds the 5.5.2 version of the file, but the build 
fails with the same error. Then I checked the 2 compile commands, and the only 
differences with 1) the Qt and KF deprecated_before macros (verified to be 
irrelevant) and 2) the -I header paths. There are lots of them, but I think it 
should be possible to switch them one by one and see when the build fails.

BTW, I've encountered a similar issue in IdealDockWidget::IdealDockWidget(), 
with `setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea | 
Qt::BottomDockWidgetArea);`

In both cases the "fix" is to do an explicit cast. 

R.



More information about the KDevelop-devel mailing list