Details
-
Bug
-
Resolution: Done
-
P2: Important
-
Qt Creator 4.4.1
-
None
-
Windows 10
MSYS2 64bit as of 20170918
Qt 5.9.3
Description
windebuginterface.cpp fails to compile due to 'incomplete type'.
Here is the log.
C:/msys64/home/Tadahito/extlib/qt-creator-opensource-src-4.4.1/src/plugins/projectexplorer/windebuginterface.cpp: In member function 'bool ProjectExplorer::Internal::WinDebugInterface::runLoop()': C:/msys64/home/Tadahito/extlib/qt-creator-opensource-src-4.4.1/src/plugins/projectexplorer/windebuginterface.cpp:136:27: error: aggregate 'QMap<long long int, QString> delayedMessages' has incomplete type and cannot be defined QMap<qint64, QString> delayedMessages; ^~~~~~~~~~~~~~~ C:/msys64/home/Tadahito/extlib/qt-creator-opensource-src-4.4.1/src/plugins/projectexplorer/windebuginterface.cpp: In lambda function: C:/msys64/home/Tadahito/extlib/qt-creator-opensource-src-4.4.1/src/plugins/projectexplorer/windebuginterface.cpp:139:19: error: 'delayedMessages' is not captured auto it = delayedMessages.constBegin(); ^~~~~~~~~~~~~~~ C:/msys64/home/Tadahito/extlib/qt-creator-opensource-src-4.4.1/src/plugins/projectexplorer/windebuginterface.cpp:138:57: note: the lambda has no capture-default auto flushMessages = [this, &delayedMessages, &timer](){ ^ C:/msys64/home/Tadahito/extlib/qt-creator-opensource-src-4.4.1/src/plugins/projectexplorer/windebuginterface.cpp:136:27: note: '<typeprefixerror>delayedMessages' declared here QMap<qint64, QString> delayedMessages; ^~~~~~~~~~~~~~~ C:/msys64/home/Tadahito/extlib/qt-creator-opensource-src-4.4.1/src/plugins/projectexplorer/windebuginterface.cpp:140:20: error: 'delayedMessages' is not captured auto end = delayedMessages.constEnd(); ^~~~~~~~~~~~~~~ C:/msys64/home/Tadahito/extlib/qt-creator-opensource-src-4.4.1/src/plugins/projectexplorer/windebuginterface.cpp:138:57: note: the lambda has no capture-default auto flushMessages = [this, &delayedMessages, &timer](){ ^ C:/msys64/home/Tadahito/extlib/qt-creator-opensource-src-4.4.1/src/plugins/projectexplorer/windebuginterface.cpp:136:27: note: '<typeprefixerror>delayedMessages' declared here QMap<qint64, QString> delayedMessages; ^~~~~~~~~~~~~~~ C:/msys64/home/Tadahito/extlib/qt-creator-opensource-src-4.4.1/src/plugins/projectexplorer/windebuginterface.cpp:143:9: error: 'delayedMessages' is not captured delayedMessages.clear(); ^~~~~~~~~~~~~~~ C:/msys64/home/Tadahito/extlib/qt-creator-opensource-src-4.4.1/src/plugins/projectexplorer/windebuginterface.cpp:138:57: note: the lambda has no capture-default auto flushMessages = [this, &delayedMessages, &timer](){ ^ C:/msys64/home/Tadahito/extlib/qt-creator-opensource-src-4.4.1/src/plugins/projectexplorer/windebuginterface.cpp:136:27: note: '<typeprefixerror>delayedMessages' declared here QMap<qint64, QString> delayedMessages; ^~~~~~~~~~~~~~~ make[4]: *** [Makefile.Release:44858: release/windebuginterface.o] Error 1 make[3]: *** [Makefile:36: release] Error 2 make[2]: *** [Makefile:337: sub-projectexplorer-make_first] Error 2 make[1]: *** [Makefile:396: sub-plugins-make_first-ordered] Error 2 make: *** [Makefile:42: sub-src-make_first-ordered] Error 2
adding
#include <QMap>
to windebuginterface.cpp fixes the issue.