Details
-
Bug
-
Resolution: Done
-
P2: Important
-
Qt Creator 4.0.0-beta1, Qt Creator 4.0.0-rc1
-
Windows 8.1 (64-bit)
Qt 5.6.0 for MSVC 2015 (32-bit)
Description
Analyzing an arbitrary Qt/MSVC 2015 project results in many errors reported in the MSVC headers, such as these:
:-1: warning: Command line: "C:/QtCreator/bin/clang-cl.exe" "--analyze" "-o" "C:/Users/bullinger/AppData/Local/Temp/qtc-clangstaticanalyzer-Cdoo7y/report-main.cpp-kv1928.plist" "-m32" "/TP" "/D__MSVCRT__=" "/D__w64=" "/D__int64=long long" "/D__int32=long" "/D__int16=short" "/D__int8=char" "/D__ptr32=" "/D__ptr64=" "/D__COUNTER__=0" "/D_CPPRTTI=1" "/D_CPPUNWIND=1" "/D_DEBUG=1" "/D_DLL=1" "/D__FUNCDNAME__= __FUNCDNAME__ " "/D__FUNCSIG__= __FUNCSIG__ " "/D__FUNCTION__= __FUNCTION__ " "/D_INTEGRAL_MAX_BITS=64" "/D_M_IX86=600" "/D_M_IX86_FP=2" "/D_MSC_BUILD=0" "/D_MSC_EXTENSIONS=1" "/D_MSC_FULL_VER=190023506" "/D_MSC_VER=1900" "/D_MT=1" "/D_NATIVE_WCHAR_T_DEFINED=1" "/D_WCHAR_T_DEFINED=1" "/D_WIN32=1" "/D__DATE__="Mar 24 2016"" "/D__TIME__="13:10:01"" "/D__TIMESTAMP__="Thu Mar 24 13:10:01 2016"" "/DUNICODE=1" "/DWIN32=1" "/DQT_QML_DEBUG=1" "/DQT_WIDGETS_LIB=1" "/DQT_GUI_LIB=1" "/DQT_NETWORK_LIB=1" "/DQT_CORE_LIB=1" "/IS:/temp/QWidgetsTestProject/QWidgetsTestProject" "/IC:/Qt/5.6/msvc2015/include" "/IC:/Qt/5.6/msvc2015/include/QtWidgets" "/IC:/Qt/5.6/msvc2015/include/QtGui" "/IC:/Qt/5.6/msvc2015/include/QtANGLE" "/IC:/Qt/5.6/msvc2015/include/QtNetwork" "/IC:/Qt/5.6/msvc2015/include/QtCore" "/IC:/Qt/5.6/msvc2015/mkspecs/win32-msvc2015" "/IC:/Users/bullinger/Build/QWidgetsTestProject-Qt_5_6_0_msvc2015-Debug" "/IC:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE" "/IC:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\ATLMFC\INCLUDE" "/IC:\Program Files (x86)\Windows Kits\10\include\10.0.10240.0\ucrt" "/IC:\Program Files (x86)\Windows Kits\NETFXSDK\4.6\include\um" "/IC:\Program Files (x86)\Windows Kits\8.1\include\\shared" "/IC:\Program Files (x86)\Windows Kits\8.1\include\\um" "/IC:\Program Files (x86)\Windows Kits\8.1\include\\winrt" "/EHsc" "S:\temp\QWidgetsTestProject\QWidgetsTestProject\main.cpp" Process Error: 5 Output: In file included from S:\temp\QWidgetsTestProject\QWidgetsTestProject\main.cpp:1: In file included from S:/temp/QWidgetsTestProject/QWidgetsTestProject/mainwindow.h:4: In file included from C:/Qt/5.6/msvc2015/include/QtWidgets\QMainWindow:1: In file included from C:/Qt/5.6/msvc2015/include/QtWidgets/qmainwindow.h:37: In file included from C:/Qt/5.6/msvc2015/include\QtWidgets/qwidget.h:37: In file included from C:/Qt/5.6/msvc2015/include\QtGui/qwindowdefs.h:37: In file included from C:/Qt/5.6/msvc2015/include\QtCore/qglobal.h:74: In file included from C:/Qt/5.6/msvc2015/include\QtCore/qcompilerdetection.h:928: In file included from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\utility:6: In file included from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\xstddef:11: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\xtr1common(207,22) : error: use of undeclared identifier 'char16_t' struct _Is_integral<char16_t> ^ C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\xtr1common(213,22) : error: use of undeclared identifier 'char32_t' struct _Is_integral<char32_t> ^ In file included from S:\temp\QWidgetsTestProject\QWidgetsTestProject\main.cpp:1: In file included from S:/temp/QWidgetsTestProject/QWidgetsTestProject/mainwindow.h:4: In file included from C:/Qt/5.6/msvc2015/include/QtWidgets\QMainWindow:1: In file included from C:/Qt/5.6/msvc2015/include/QtWidgets/qmainwindow.h:37: In file included from C:/Qt/5.6/msvc2015/include\QtWidgets/qwidget.h:37: In file included from C:/Qt/5.6/msvc2015/include\QtGui/qwindowdefs.h:37: In file included from C:/Qt/5.6/msvc2015/include\QtCore/qglobal.h:74: In file included from C:/Qt/5.6/msvc2015/include\QtCore/qcompilerdetection.h:928: In file included from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\utility:6: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\xstddef(405,14) : error: use of undeclared identifier 'char16_t' struct hash<char16_t> ^ C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\xstddef(411,14) : error: use of undeclared identifier 'char32_t' struct hash<char32_t> ^ In file included from S:\temp\QWidgetsTestProject\QWidgetsTestProject\main.cpp:1: In file included from S:/temp/QWidgetsTestProject/QWidgetsTestProject/mainwindow.h:4: In file included from C:/Qt/5.6/msvc2015/include/QtWidgets\QMainWindow:1: In file included from C:/Qt/5.6/msvc2015/include/QtWidgets/qmainwindow.h:37: In file included from C:/Qt/5.6/msvc2015/include\QtWidgets/qwidget.h:37: In file included from C:/Qt/5.6/msvc2015/include\QtGui/qwindowdefs.h:37: In file included from C:/Qt/5.6/msvc2015/include\QtCore/qglobal.h:74: In file included from C:/Qt/5.6/msvc2015/include\QtCore/qcompilerdetection.h:928: In file included from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\utility:7: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\iosfwd(267,21) : error: use of undeclared identifier 'char16_t' struct char_traits<char16_t> ^ C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\iosfwd(276,21) : error: use of undeclared identifier 'char32_t' struct char_traits<char32_t> ^ In file included from S:\temp\QWidgetsTestProject\QWidgetsTestProject\main.cpp:1: In file included from S:/temp/QWidgetsTestProject/QWidgetsTestProject/mainwindow.h:4: In file included from C:/Qt/5.6/msvc2015/include/QtWidgets\QMainWindow:1: In file included from C:/Qt/5.6/msvc2015/include/QtWidgets/qmainwindow.h:37: In file included from C:/Qt/5.6/msvc2015/include\QtWidgets/qwidget.h:37: In file included from C:/Qt/5.6/msvc2015/include\QtGui/qwindowdefs.h:37: In file included from C:/Qt/5.6/msvc2015/include\QtCore/qglobal.h:85: In file included from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\algorithm:6: In file included from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\xmemory:6: In file included from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\xmemory0:8: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\limits(611,33) : error: use of undeclared identifier 'char16_t' template<> class numeric_limits<char16_t> ^ C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\limits(901,33) : error: use of undeclared identifier 'char32_t' template<> class numeric_limits<char32_t> ^ In file included from S:\temp\QWidgetsTestProject\QWidgetsTestProject\main.cpp:1: In file included from S:/temp/QWidgetsTestProject/QWidgetsTestProject/mainwindow.h:4: In file included from C:/Qt/5.6/msvc2015/include/QtWidgets\QMainWindow:1: In file included from C:/Qt/5.6/msvc2015/include/QtWidgets/qmainwindow.h:37: In file included from C:/Qt/5.6/msvc2015/include\QtWidgets/qwidget.h:37: In file included from C:/Qt/5.6/msvc2015/include\QtGui/qwindowdefs.h:37: In file included from C:/Qt/5.6/msvc2015/include\QtCore/qglobal.h:1107: In file included from C:/Qt/5.6/msvc2015/include\QtCore/qtypeinfo.h:34: C:/Qt/5.6/msvc2015/include\QtCore/qtypetraits.h(245,31) : error: use of undeclared identifier 'char16_t' template<> struct is_integral<char16_t> : true_type { }; ^ C:/Qt/5.6/msvc2015/include\QtCore/qtypetraits.h(246,31) : error: use of undeclared identifier 'char32_t' template<> struct is_integral<char32_t> : true_type { }; ^ In file included from S:\temp\QWidgetsTestProject\QWidgetsTestProject\main.cpp:1: In file included from S:/temp/QWidgetsTestProject/QWidgetsTestProject/mainwindow.h:4: In file included from C:/Qt/5.6/msvc2015/include/QtWidgets\QMainWindow:1: In file included from C:/Qt/5.6/msvc2015/include/QtWidgets/qmainwindow.h:37: In file included from C:/Qt/5.6/msvc2015/include\QtWidgets/qwidget.h:38: In file included from C:/Qt/5.6/msvc2015/include\QtCore/qobject.h:41: In file included from C:/Qt/5.6/msvc2015/include\QtCore/qstring.h:42: In file included from C:/Qt/5.6/msvc2015/include\QtCore/qbytearray.h:45: In file included from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\string:6: In file included from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\istream:6: In file included from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\ostream:6: In file included from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\ios:6: In file included from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\xlocnum:10: In file included from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\streambuf:6: In file included from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\xiosbase:6: In file included from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\xlocale:8: In file included from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\stdexcept:7: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\xstring(2623,22) : error: use of undeclared identifier 'char16_t' typedef basic_string<char16_t, char_traits<char16_t>, allocator<char16_t> > ^ C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\xstring(2623,53) : error: expected unqualified-id typedef basic_string<char16_t, char_traits<char16_t>, allocator<char16_t> > ^ C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\xstring(2625,22) : error: use of undeclared identifier 'char32_t' typedef basic_string<char32_t, char_traits<char32_t>, allocator<char32_t> > ^ C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\xstring(2625,53) : error: expected unqualified-id typedef basic_string<char32_t, char_traits<char32_t>, allocator<char32_t> > ^ In file included from S:\temp\QWidgetsTestProject\QWidgetsTestProject\main.cpp:1: In file included from S:/temp/QWidgetsTestProject/QWidgetsTestProject/mainwindow.h:4: In file included from C:/Qt/5.6/msvc2015/include/QtWidgets\QMainWindow:1: In file included from C:/Qt/5.6/msvc2015/include/QtWidgets/qmainwindow.h:37: In file included from C:/Qt/5.6/msvc2015/include\QtWidgets/qwidget.h:38: In file included from C:/Qt/5.6/msvc2015/include\QtCore/qobject.h:41: In file included from C:/Qt/5.6/msvc2015/include\QtCore/qstring.h:42: In file included from C:/Qt/5.6/msvc2015/include\QtCore/qbytearray.h:45: In file included from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\string:6: In file included from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\istream:6: In file included from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\ostream:6: In file included from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\ios:6: In file included from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\xlocnum:10: In file included from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\streambuf:6: In file included from C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\xiosbase:6: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\xlocale(1004,30) : error: use of undeclared identifier 'char16_t' class _CRTIMP2_PURE codecvt<char16_t, char, _Mbstatet> ^ C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\xlocale(1328,30) : error: use of undeclared identifier 'char32_t' class _CRTIMP2_PURE codecvt<char32_t, char, _Mbstatet> ^ In file included from S:\temp\QWidgetsTestProject\QWidgetsTestProject\main.cpp:1: In file included from S:/temp/QWidgetsTestProject/QWidgetsTestProject/mainwindow.h:4: In file included from C:/Qt/5.6/msvc2015/include/QtWidgets\QMainWindow:1: In file included from C:/Qt/5.6/msvc2015/include/QtWidgets/qmainwindow.h:37: In file included from C:/Qt/5.6/msvc2015/include\QtWidgets/qwidget.h:38: In file included from C:/Qt/5.6/msvc2015/include\QtCore/qobject.h:41: In file included from C:/Qt/5.6/msvc2015/include\QtCore/qstring.h:42: In file included from C:/Qt/5.6/msvc2015/include\QtCore/qbytearray.h:45: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\string(640,8) : error: unknown type name 'u16string' inline u16string operator "" s(const char16_t *_Str, size_t _Len) ^ C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\string(640,38) : error: unknown type name 'char16_t' inline u16string operator "" s(const char16_t *_Str, size_t _Len) ^ C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\INCLUDE\string(645,8) : error: unknown type name 'u32string' inline u32string operator "" s(const char32_t *_Str, size_t _Len) ^ fatal error: too many errors emitted, stopping now [-ferror-limit=] 20 errors generated.
Attachments
Issue Links
- is duplicated by
-
QTCREATORBUG-15357 MSVC2015: Clang Static Analyzer throwing errors on
- Closed
- relates to
-
QTCREATORBUG-15519 MSVC 2015: Clang backend does not acknowledge char16_t
- Closed
- links to