PDA

View Full Version : Compiling without Microsoft Language Extensions: qbytearray errors



trallallero
3rd December 2013, 12:19
I'm trying to compile our project without the Microsoft Language Extensions (-Za compiler option) but I get many errors on the Q_DECLARE_SHARED macro of qbytearray.h


D:\Qt\4.8.4\src\corelib\tools\qbytearray.h:611: error: C2059: syntax error : ':'
D:\Qt\4.8.4\src\corelib\tools\qbytearray.h:611: error: C2143: syntax error : missing ';' before '>'
D:\Qt\4.8.4\src\corelib\tools\qbytearray.h:611: error: C2958: the left bracket '[' found at 'd:\qt\4.8.4\src\corelib\tools\qbytearray.h(611)' was not matched correctly
D:\Qt\4.8.4\src\corelib\tools\qbytearray.h:611: error: C2143: syntax error : missing ']' before ':'
D:\Qt\4.8.4\src\corelib\tools\qbytearray.h:611: error: C2182: 'swap' : illegal use of type 'void'
D:\Qt\4.8.4\src\corelib\tools\qbytearray.h:611: error: C2988: unrecognizable template declaration/definition

The compiler command (without our files) is the following:


cl -c -nologo -Zm200 -Za -Zc:wchar_t- -Zi -MDd -EHsc -GR /Wall /wd4127 /wd4619 /wd4820 /wd4180 /wd4629 /wd2143 -w34100 -w34189 -DUNICODE -DWIN32 -DQT_LARGEFILE_SUPPORT -DLIBFEAST_LIBRARY -DFEAST_VERSION=0x020806 -DHAVE_EXPAT_CONFIG_H -D_DEBUG -DVERBOSE_MUTEX_DEBUG -D_DEBUG_REFCOUNTPTR -DQT_DLL -DQT_SCRIPT_LIB -DQT_SQL_LIB -DQT_XMLPATTERNS_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DQT_HAVE_MMX -DQT_HAVE_3DNOW -DQT_HAVE_SSE -DQT_HAVE_MMXEXT -DQT_HAVE_SSE2 -DQT_THREAD_SUPPORT -I"..\..\..\..\Qt\4.8.4\include\QtCore" -I"..\..\..\..\Qt\4.8.4\include\QtNetwork" -I"..\..\..\..\Qt\4.8.4\include\QtXmlPatterns" -I"..\..\..\..\Qt\4.8.4\include\QtSql" -I"..\..\..\..\Qt\4.8.4\include\QtScript" -I"..\..\..\..\Qt\4.8.4\mkspecs\win32-msvc2010" -Fotmp\debug\win32\

How can I solve the problem ?