Details
-
Bug
-
Resolution: Done
-
Not Evaluated
-
Qt Creator 6.0.0-beta1
-
None
-
Windows
-
-
57b5cd69b922bb377f956ce13c9e3124f1e65784 (qt-creator/qt-creator/6.0)
Description
Hi All,
QTCreator latest code (master 2d99462) failed to build with /std:c++latest on MSVC. This issue is a bit similar to QTCREATORBUG-25598, both are related to erase, but not the same. That would be great if someone helps to fix this issue.
- git clone git://code.qt.io/qt-creator/qt-creator qt-creator
- cd qt-creator
- set CL=/D_HAS_AUTO_PTR_ETC=1 /D_HAS_DEPRECATED_RESULT_OF=1 /D_SILENCE_CXX17_RESULT_OF_DEPRECATION_WARNING /D_HAS_DEPRECATED_UNCAUGHT_EXCEPTION=1 /D_SILENCE_CXX17_UNCAUGHT_EXCEPTION_DEPRECATION_WARNING /std:c++latest /permissive /Zc:rewrittenExpressions-
- set PATH=F:\gitP\qt-creator\qt-creator\..\qt\msvc2017_64\bin;%PATH%
- set PATH=F:\gitP\qt-creator\qt-creator\..\jom_1_1_2;%PATH%
- qmake -r qtcreator.pro
- jom /U
Error info:
project.cpp C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\include\xmemory(1991): error C2678: binary '==': no operator found which takes a left-hand operand of type 'const _Ty' (or there is no acceptable conversion) with [ _Ty=ProjectExplorer::Project::setExtraProjectFiles::<lambda_1> ] C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\shared\guiddef.h(192): note: could be 'bool operator ==(const GUID &,const GUID &)' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qchar.h(61): note: or 'bool operator ==(char,QLatin1Char) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qchar.h(68): note: or 'bool operator ==(QLatin1Char,char) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qchar.h(614): note: or 'bool operator ==(QChar,QChar) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qchar.h(623): note: or 'bool operator ==(QChar,std::nullptr_t) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qchar.h(625): note: or 'bool operator ==(std::nullptr_t,QChar) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qbytearray.h(662): note: or 'bool operator ==(const QByteArray &,const QByteArray &) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qbytearray.h(664): note: or 'bool operator ==(const QByteArray &,const char *) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qbytearray.h(666): note: or 'bool operator ==(const char *,const QByteArray &) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1825): note: or 'bool operator ==(QChar,const QString &) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1844): note: or 'bool operator ==(QChar,const QStringRef &) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1863): note: or 'bool operator ==(QChar,QLatin1String) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1338): note: or 'bool operator ==(QLatin1String,QLatin1String) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1762): note: or 'bool operator ==(const QStringRef &,const QStringRef &) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1774): note: or 'bool operator ==(const QString &,const QStringRef &) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1781): note: or 'bool operator ==(const QStringRef &,const QString &) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1810): note: or 'bool operator ==(QLatin1String,const QStringRef &) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1817): note: or 'bool operator ==(const QStringRef &,QLatin1String) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1836): note: or 'bool operator ==(const QString &,QChar) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1855): note: or 'bool operator ==(const QStringRef &,QChar) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1874): note: or 'bool operator ==(QLatin1String,QChar) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1882): note: or 'bool operator ==(QStringView,QStringView) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1890): note: or 'bool operator ==(QStringView,QChar) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1897): note: or 'bool operator ==(QChar,QStringView) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1905): note: or 'bool operator ==(QStringView,QLatin1String) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1912): note: or 'bool operator ==(QLatin1String,QStringView) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qpoint.h(165): note: or 'bool operator ==(const QPoint &,const QPoint &)' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qpoint.h(357): note: or 'bool operator ==(const QPointF &,const QPointF &)' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qhash.h(139): note: or 'bool operator ==(const QHashDummyValue &,const QHashDummyValue &) noexcept' [found using argument-dependent lookup] C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\include\variant(1686): note: or 'bool std::operator ==(std::monostate,std::monostate) noexcept' [found using argument-dependent lookup] F:\gitP\qt-creator\qt\msvc2017_64\include\QtCore\qvariant.h(609): note: or 'bool operator ==(const QVariant &,const QVariantComparisonHelper &)' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qmargins.h(135): note: or 'bool operator ==(const QMargins &,const QMargins &) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qmargins.h(372): note: or 'bool operator ==(const QMarginsF &,const QMarginsF &) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qsize.h(175): note: or 'bool operator ==(const QSize &,const QSize &) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qsize.h(350): note: or 'bool operator ==(const QSizeF &,const QSizeF &) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtGui/qcursor.h(113): note: or 'bool operator ==(const QCursor &,const QCursor &) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qrect.h(454): note: or 'bool operator ==(const QRect &,const QRect &) noexcept' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtCore/qrect.h(860): note: or 'bool operator ==(const QRectF &,const QRectF &) noexcept' [found using argument-dependent lookup] F:\gitP\qt-creator\qt-creator\src\plugins\projectexplorer\deployablefile.h(66): note: or 'bool ProjectExplorer::operator ==(const ProjectExplorer::DeployableFile &,const ProjectExplorer::DeployableFile &)' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtGui/qvector2d.h(211): note: or 'bool operator ==(const QVector2D &,const QVector2D &)' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtGui/qevent.h(830): note: or 'bool operator ==(QKeyEvent *,QKeySequence::StandardKey)' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtGui/qevent.h(831): note: or 'bool operator ==(QKeySequence::StandardKey,QKeyEvent *)' [found using argument-dependent lookup] ..\..\..\..\qt\msvc2017_64\include\QtGui/qevent.h(865): note: or 'bool operator ==(QPointingDeviceUniqueId,QPointingDeviceUniqueId) noexcept' [found using argument-dependent lookup] F:\gitP\qt-creator\qt-creator\src\plugins\projectexplorer\task.h(138): note: or 'bool ProjectExplorer::operator ==(const ProjectExplorer::Task &,const ProjectExplorer::Task &)' [found using argument-dependent lookup] F:\gitP\qt-creator\qt-creator\src\plugins\projectexplorer\buildtargetinfo.h(56): note: or 'bool ProjectExplorer::operator ==(const ProjectExplorer::BuildTargetInfo &,const ProjectExplorer::BuildTargetInfo &)' [found using argument-dependent lookup] C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\include\thread(244): note: or 'bool std::operator ==(std::thread::id,std::thread::id) noexcept' [found using argument-dependent lookup] C:\Program Files (x86)\Windows Kits\10\include\10.0.19041.0\shared\guiddef.h(192): note: or 'bool operator ==(const GUID &,const GUID &)' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qchar.h(61): note: or 'bool operator ==(char,QLatin1Char) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qchar.h(68): note: or 'bool operator ==(QLatin1Char,char) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qchar.h(614): note: or 'bool operator ==(QChar,QChar) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qchar.h(623): note: or 'bool operator ==(QChar,std::nullptr_t) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qchar.h(625): note: or 'bool operator ==(std::nullptr_t,QChar) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qbytearray.h(662): note: or 'bool operator ==(const QByteArray &,const QByteArray &) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qbytearray.h(664): note: or 'bool operator ==(const QByteArray &,const char *) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qbytearray.h(666): note: or 'bool operator ==(const char *,const QByteArray &) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1825): note: or 'bool operator ==(QChar,const QString &) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1844): note: or 'bool operator ==(QChar,const QStringRef &) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1863): note: or 'bool operator ==(QChar,QLatin1String) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1338): note: or 'bool operator ==(QLatin1String,QLatin1String) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1762): note: or 'bool operator ==(const QStringRef &,const QStringRef &) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1774): note: or 'bool operator ==(const QString &,const QStringRef &) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1781): note: or 'bool operator ==(const QStringRef &,const QString &) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1810): note: or 'bool operator ==(QLatin1String,const QStringRef &) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1817): note: or 'bool operator ==(const QStringRef &,QLatin1String) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1836): note: or 'bool operator ==(const QString &,QChar) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1855): note: or 'bool operator ==(const QStringRef &,QChar) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1874): note: or 'bool operator ==(QLatin1String,QChar) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1882): note: or 'bool operator ==(QStringView,QStringView) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1890): note: or 'bool operator ==(QStringView,QChar) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1897): note: or 'bool operator ==(QChar,QStringView) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1905): note: or 'bool operator ==(QStringView,QLatin1String) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qstring.h(1912): note: or 'bool operator ==(QLatin1String,QStringView) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qpoint.h(165): note: or 'bool operator ==(const QPoint &,const QPoint &)' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qpoint.h(357): note: or 'bool operator ==(const QPointF &,const QPointF &)' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qhash.h(139): note: or 'bool operator ==(const QHashDummyValue &,const QHashDummyValue &) noexcept' [synthesized expression 'y == x'] C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\include\variant(1686): note: or 'bool std::operator ==(std::monostate,std::monostate) noexcept' [synthesized expression 'y == x'] F:\gitP\qt-creator\qt\msvc2017_64\include\QtCore\qvariant.h(609): note: or 'bool operator ==(const QVariant &,const QVariantComparisonHelper &)' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qmargins.h(135): note: or 'bool operator ==(const QMargins &,const QMargins &) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qmargins.h(372): note: or 'bool operator ==(const QMarginsF &,const QMarginsF &) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qsize.h(175): note: or 'bool operator ==(const QSize &,const QSize &) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qsize.h(350): note: or 'bool operator ==(const QSizeF &,const QSizeF &) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtGui/qcursor.h(113): note: or 'bool operator ==(const QCursor &,const QCursor &) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qrect.h(454): note: or 'bool operator ==(const QRect &,const QRect &) noexcept' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtCore/qrect.h(860): note: or 'bool operator ==(const QRectF &,const QRectF &) noexcept' [synthesized expression 'y == x'] F:\gitP\qt-creator\qt-creator\src\plugins\projectexplorer\deployablefile.h(66): note: or 'bool ProjectExplorer::operator ==(const ProjectExplorer::DeployableFile &,const ProjectExplorer::DeployableFile &)' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtGui/qvector2d.h(211): note: or 'bool operator ==(const QVector2D &,const QVector2D &)' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtGui/qevent.h(830): note: or 'bool operator ==(QKeyEvent *,QKeySequence::StandardKey)' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtGui/qevent.h(831): note: or 'bool operator ==(QKeySequence::StandardKey,QKeyEvent *)' [synthesized expression 'y == x'] ..\..\..\..\qt\msvc2017_64\include\QtGui/qevent.h(865): note: or 'bool operator ==(QPointingDeviceUniqueId,QPointingDeviceUniqueId) noexcept' [synthesized expression 'y == x'] F:\gitP\qt-creator\qt-creator\src\plugins\projectexplorer\task.h(138): note: or 'bool ProjectExplorer::operator ==(const ProjectExplorer::Task &,const ProjectExplorer::Task &)' [synthesized expression 'y == x'] F:\gitP\qt-creator\qt-creator\src\plugins\projectexplorer\buildtargetinfo.h(56): note: or 'bool ProjectExplorer::operator ==(const ProjectExplorer::BuildTargetInfo &,const ProjectExplorer::BuildTargetInfo &)' [synthesized expression 'y == x'] C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\include\thread(244): note: or 'bool std::operator ==(std::thread::id,std::thread::id) noexcept' [synthesized expression 'y == x'] C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\include\xmemory(1991): note: while trying to match the argument list '(std::unique_ptr<Core::IDocument,std::default_delete<Core::IDocument>>, const _Ty)' with [ _Ty=ProjectExplorer::Project::setExtraProjectFiles::<lambda_1> ] C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\include\xmemory(2029): note: see reference to function template instantiation '_FwdIt std::remove<std::unique_ptr<Core::IDocument,std::default_delete<Core::IDocument>>*,_Uty>(_FwdIt,const _FwdIt,const _Ty &)' being compiled with [ _FwdIt=std::unique_ptr<Core::IDocument,std::default_delete<Core::IDocument>> *, _Uty=ProjectExplorer::Project::setExtraProjectFiles::<lambda_1>, _Ty=ProjectExplorer::Project::setExtraProjectFiles::<lambda_1> ] C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\VC\Tools\MSVC\14.29.30133\include\vector(1917): note: see reference to function template instantiation 'unsigned __int64 std::_Erase_remove<std::vector<std::unique_ptr<Core::IDocument,std::default_delete<Core::IDocument>>,std::allocator<std::unique_ptr<Core::IDocument,std::default_delete<Core::IDocument>>>>,_Uty>(_Container &,const _Uty &)' being compiled with [ _Uty=ProjectExplorer::Project::setExtraProjectFiles::<lambda_1>, _Container=std::vector<std::unique_ptr<Core::IDocument,std::default_delete<Core::IDocument>>,std::allocator<std::unique_ptr<Core::IDocument,std::default_delete<Core::IDocument>>>> ] F:\gitP\qt-creator\qt-creator\src\plugins\projectexplorer\project.cpp(381): note: see reference to function template instantiation 'unsigned __int64 std::erase<std::unique_ptr<Core::IDocument,std::default_delete<Core::IDocument>>,std::allocator<std::unique_ptr<Core::IDocument,std::default_delete<Core::IDocument>>>,ProjectExplorer::Project::setExtraProjectFiles::<lambda_1>>(std::vector<std::unique_ptr<Core::IDocument,std::default_delete<Core::IDocument>>,std::allocator<std::unique_ptr<Core::IDocument,std::default_delete<Core::IDocument>>>> &,const _Uty &)' being compiled with [ _Uty=ProjectExplorer::Project::setExtraProjectFiles::<lambda_1> ]