Revert "Revert "qmake: Work around MSVC compiler bug.""
The assert still happens on MSVC 2015 64 bit when running qmake -tp vc -r. This reverts commit f4169a633b97b7b6e7365172cf3d38d2f16a8914. Fixes: QTBUG-71228 Change-Id: I05bd3e0677414edb970f07e0555cdc95ce32f592 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
This commit is contained in:
parent
fe4448e9e8
commit
4be8168ff7
@ -208,6 +208,16 @@ struct VcsolutionDepend {
|
||||
QStringList dependencies;
|
||||
};
|
||||
|
||||
/* Disable optimization in getProjectUUID() due to a compiler
|
||||
* bug in MSVC 2015 that causes ASSERT: "&other != this" in the QString
|
||||
* copy constructor for non-empty file names at:
|
||||
* filename.isEmpty()?project->first("QMAKE_MAKEFILE"):filename */
|
||||
|
||||
#if defined(Q_CC_MSVC) && !defined(Q_CC_CLANG)
|
||||
# pragma optimize( "g", off )
|
||||
# pragma warning ( disable : 4748 )
|
||||
#endif
|
||||
|
||||
QUuid VcprojGenerator::getProjectUUID(const QString &filename)
|
||||
{
|
||||
bool validUUID = true;
|
||||
@ -239,6 +249,10 @@ QUuid VcprojGenerator::getProjectUUID(const QString &filename)
|
||||
return uuid;
|
||||
}
|
||||
|
||||
#if defined(Q_CC_MSVC) && !defined(Q_CC_CLANG)
|
||||
# pragma optimize( "g", on )
|
||||
#endif
|
||||
|
||||
QUuid VcprojGenerator::increaseUUID(const QUuid &id)
|
||||
{
|
||||
QUuid result(id);
|
||||
|
Loading…
x
Reference in New Issue
Block a user