Uploaded image for project: 'Qt Creator'
  1. Qt Creator
  2. QTCREATORBUG-20598

WIN64: 'constexpr constructor must initialize direct base class "std::array<ClangBackEnd::SymbolTag' error for builds using Windows ICC

    XMLWordPrintable

Details

    Description

      Hello, everyone,

      For builds using Windows ICC got errors:

              cd clangrefactoringbackend\ && ( if not exist Makefile C:\libQT-5.12-dev\ICC64RH\bin\qmake.exe -o Makefile C:\QTCREATOR-4.8.0-dev\build\src\tools\clangrefactoringbackend\clangrefactoringbackend.pro "CONFIG-=precompile_header" "QTC_PREFIX=C:\QTCREATOR-4.8.0-dev\build\..\ICC64RH" ) && C:\Windows\jom.exe -f Makefile
              C:\Windows\jom.exe -f Makefile.Release
              icl -c -nologo -Zc:wchar_t -Qprec -Zm200 -Zc:forScope -IC:\ProgramData\LLVM\include  /DWIN32 /D_WINDOWS   /Zc:inline /Zc:strictStrings  /Zc:rvalueCast  -wd4141 -wd4146 -wd4180 -wd4244 -wd4258 -wd4267 -wd4291 -wd4345 -wd4351 -wd4355 -wd4456 -wd4457 -wd4458 -wd4459 -wd4503 -wd4624 -wd4722 -wd4800 -wd4100 -wd4127 -wd4512 -wd4505 -wd4610 -wd4510 -wd4702 -wd4245 -wd4706 -wd4310 -wd4701 -wd4703 -wd4389 -wd4611 -wd4805 -wd4204 -wd4577 -wd4091 -wd4592 -wd4319 -wd4324 -w14062 -we4238 /MD   /DNDEBUG   /GR -D_CRT_SECURE_NO_DEPRECATE -D_CRT_SECURE_NO_WARNINGS -D_CRT_NONSTDC_NO_DEPRECATE -D_CRT_NONSTDC_NO_WARNINGS -D_SCL_SECURE_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS -DUNICODE -D_UNICODE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -O2 -MD -W3 -Qdiag-disable:673,809,1738,1744,3373 -w44996 -EHsc -DUNICODE -D_UNICODE -DWIN32 -DWIN64 -D"RELATIVE_PLUGIN_PATH=\"../lib/qtcreator/plugins\"" -D"RELATIVE_LIBEXEC_PATH=\".\"" -D"RELATIVE_DATA_PATH=\"../share/qtcreator\"" -D"RELATIVE_DOC_PATH=\"../share/doc/qtcreator\"" -DIDE_LIBRARY_BASENAME=\"lib\" -DQT_CREATOR -DQT_NO_CAST_TO_ASCII -DQT_RESTRICTED_CAST_FROM_ASCII -DQT_DISABLE_DEPRECATED_BEFORE=0x050600 -DQT_USE_FAST_OPERATOR_PLUS -DQT_USE_FAST_CONCATENATION -D_CRT_SECURE_NO_WARNINGS -DQT_NO_DEBUG -DQT_FORCE_ASSERTS -DQT_CONCURRENT_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -DNDEBUG -I..\..\..\src -I..\..\..\src -I..\..\libs -IC:/QTCREATOR-4.8.0-dev/build/tools -I..\..\plugins -I..\..\libs -I..\..\libs\clangsupport -I..\..\libs\sqlite -Isource -IC:\ProgramData\LLVM\include -IC:\libQT-5.12-dev\ICC64RH\include -IC:\libQT-5.12-dev\ICC64RH\include\QtConcurrent -IC:\libQT-5.12-dev\ICC64RH\include\QtWidgets -IC:\libQT-5.12-dev\ICC64RH\include\QtGui -IC:\libQT-5.12-dev\ICC64RH\include\QtANGLE -IC:\libQT-5.12-dev\ICC64RH\include\QtNetwork -IC:\libQT-5.12-dev\ICC64RH\include\QtCore -Irelease -I"C:\Program Files (x86)\VulkanSDK\include" -IC:\libQT-5.12-dev\ICC64RH\mkspecs\win32-icc -Forelease\ @C:\Users\test\AppData\Local\Temp\refactoringserver.obj.7496.31.jom
      refactoringserver.cpp
      C:\ProgramData\LLVM\include\clang/Basic/Specifiers.h(187): warning #1011: missing return statement at end of non-void function "clang::isTemplateExplicitInstantiationOrSpecialization"
          }
          ^
      
      <snip>
      
      C:\ProgramData\LLVM\include\clang/AST/DeclTemplate.h(2447): warning #873: function "clang::Decl::operator new(size_t={unsigned __int64}, const clang::ASTContext &, clang::DeclContext *, size_t={unsigned __int64})" has no corresponding operator delete (to be called if an exception is thrown during initialization of an allocated object)
            return new (C, DC) ClassScopeFunctionSpecializationDecl(
                   ^
      
      symbolindexer.cpp
      ../../libs/utils/sizedarray.h(37): error: constexpr constructor must initialize direct base class "std::array<ClangBackEnd::SymbolTag, 7Ui64>"
        class SizedArray : public std::array<T, MaxSize>
                                  ^
                detected during instantiation of class "Utils::SizedArray<T, MaxSize> [with T=ClangBackEnd::SymbolTag, MaxSize=(uint8_t={unsigned char})'\a']" at line 49 of "C:\QTCREATOR-4.8.0-dev\build\src\tools\clangrefactoringbackend\source\symbolentry.h"
      
      jom: C:\QTCREATOR-4.8.0-dev\build\src\tools\clangrefactoringbackend\Makefile.Release [release\refactoringserver.obj] Error 2
      jom: C:\QTCREATOR-4.8.0-dev\build\src\tools\clangrefactoringbackend\Makefile [release] Error 2
      jom: C:\QTCREATOR-4.8.0-dev\build\src\tools\Makefile [sub-clangrefactoringbackend-make_first] Error 2
      jom: C:\QTCREATOR-4.8.0-dev\build\src\Makefile [sub-tools-make_first-ordered] Error 2
      jom: C:\QTCREATOR-4.8.0-dev\build\Makefile [sub-src-make_first-ordered] Error 2
      

       

      Reproduced for:

      • builds using Windows ICC with Release configuration.

      not reproduced for:

      • builds using Windows ICC with Debug configuration (with warning 'Some of the required modules (equals(LLVM_BUILDMODE, Debug)) are not available." "Skipped."'),
      • builds using mingw-w64 and MSVC.

       

      CC: con, thiago.

       

      Best,

      Alexander

       

      Attachments

        For Gerrit Dashboard: QTCREATORBUG-20598
        # Subject Branch Project Status CR V

        Activity

          People

            bubke Marco Bubke
            sav sav
            Votes:
            1 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes