ayzhao requested changes to this revision.
ayzhao added a comment.
This revision now requires changes to proceed.

This still fails to build on Windows with MSVC's `cl.exe` compiler:

  C:\src\llvm-project\build-ninja>ninja all
  [49/4908] Building CXX object 
lib\Demangle\CMakeFiles\LLVMDemangle.dir\ItaniumDemangle.cpp.obj
  FAILED: lib/Demangle/CMakeFiles/LLVMDemangle.dir/ItaniumDemangle.cpp.obj
  
C:\PROGRA~1\MICROS~2\2022\PROFES~1\VC\Tools\MSVC\1435~1.322\bin\Hostx86\x86\cl.exe
  /nologo /TP -DGTEST_HAS_RTTI=0 -DUNICODE -D_CRT_NONSTDC_NO_DEPRECATE 
-D_CRT_NONSTDC_NO_WARNINGS -D_CRT_SECURE_NO_DEPRECATE -D_CRT_SECURE_NO_WARNINGS 
-D_FILE_OFFSET_BITS=64 -D_GLIBCXX_ASSERTIONS -D_HAS_EXCEPTIONS=0 
-D_LARGEFILE_SOURCE -D_LIBCPP_ENABLE_ASSERTIONS -D_SCL_SECURE_NO_DEPRECATE 
-D_SCL_SECURE_NO_WARNINGS -D_UNICODE -D__STDC_CONSTANT_MACROS 
-D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS 
-IC:\src\llvm-project\build-ninja\lib\Demangle 
-IC:\src\llvm-project\llvm\lib\Demangle 
-IC:\src\llvm-project\build-ninja\include -IC:\src\llvm-project\llvm\include 
/DWIN32 /D_WINDOWS   /Zc:inline /Zc:preprocessor /Zc:__cplusplus /Oi /bigobj 
/permissive- /W4 -wd4141 -wd4146 -wd4244 -wd4267 -wd4291 -wd4351 -wd4456 
-wd4457 -wd4458 -wd4459 -wd4503 -wd4624 -wd4722 -wd4100 -wd4127 -wd4512 -wd4505 
-wd4610 -wd4510 -wd4702 -wd4245 -wd4706 -wd4310 -wd4701 -wd4703 -wd4389 -wd4611 
-wd4805 -wd4204 -wd4577 -wd4091 -wd4592 -wd4319 -wd4709 -wd5105 -wd4324 -w14062 
-we4238 /Gw /MD /O2 /Ob2  /EHs-c- /GR- -UNDEBUG -std:c++17 /showIncludes 
/Folib\Demangle\CMakeFiles\LLVMDemangle.dir\ItaniumDemangle.cpp.obj 
/Fdlib\Demangle\CMakeFiles\LLVMDemangle.dir\LLVMDemangle.pdb /FS -c 
C:\src\llvm-project\llvm\lib\Demangle\ItaniumDemangle.cpp
  C:\src\llvm-project\llvm\include\llvm/Demangle/ItaniumDemangle.h(3718): error 
C2665: 'llvm::itanium_demangle::ScopedOverride<const char *>::ScopedOverride': 
no overloaded function could convert all the argument types
  C:\src\llvm-project\llvm\include\llvm\Demangle\Utility.h(194): note: could be 
'llvm::itanium_demangle::ScopedOverride<const char *>::ScopedOverride(T &,T)'
          with
          [
              T=const char *
          ]
  C:\src\llvm-project\llvm\include\llvm/Demangle/ItaniumDemangle.h(3718): note: 
'llvm::itanium_demangle::ScopedOverride<const char *>::ScopedOverride(T &,T)': 
cannot convert argument 2 from 'std::_String_view_iterator<_Traits>' to 'T'
          with
          [
              T=const char *
          ]
          and
          [
              _Traits=std::char_traits<char>
          ]
          and
          [
              T=const char *
          ]
  C:\src\llvm-project\llvm\include\llvm/Demangle/ItaniumDemangle.h(3718): note: 
No user-defined-conversion operator available that can perform this conversion, 
or the operator cannot be called
  C:\src\llvm-project\llvm\include\llvm/Demangle/ItaniumDemangle.h(3718): note: 
while trying to match the argument list '(const char *, 
std::_String_view_iterator<_Traits>)'
          with
          [
              _Traits=std::char_traits<char>
          ]
  C:\src\llvm-project\llvm\include\llvm/Demangle/ItaniumDemangle.h(3707): note: 
while compiling class template member function 'llvm::itanium_demangle::Node 
*llvm::itanium_demangle::AbstractManglingParser<llvm::itanium_demangle::ManglingParser<`anonymous-namespace'::DefaultAllocator>,Alloc>::parseQualifiedType(void)'
          with
          [
              Alloc=`anonymous-namespace'::DefaultAllocator
          ]
  C:\src\llvm-project\llvm\include\llvm/Demangle/ItaniumDemangle.h(3796): note: 
see reference to function template instantiation 'llvm::itanium_demangle::Node 
*llvm::itanium_demangle::AbstractManglingParser<llvm::itanium_demangle::ManglingParser<`anonymous-namespace'::DefaultAllocator>,Alloc>::parseQualifiedType(void)'
 being compiled
          with
          [
              Alloc=`anonymous-namespace'::DefaultAllocator
          ]
  C:\src\llvm-project\llvm\include\llvm/Demangle/ItaniumDemangle.h(3472): note: 
while compiling class template member function 'std::string_view 
llvm::itanium_demangle::AbstractManglingParser<llvm::itanium_demangle::ManglingParser<`anonymous-namespace'::DefaultAllocator>,Alloc>::parseNumber(bool)'
          with
          [
              Alloc=`anonymous-namespace'::DefaultAllocator
          ]
  C:\src\llvm-project\llvm\include\llvm/Demangle/ItaniumDemangle.h(5489): note: 
see reference to function template instantiation 'std::string_view 
llvm::itanium_demangle::AbstractManglingParser<llvm::itanium_demangle::ManglingParser<`anonymous-namespace'::DefaultAllocator>,Alloc>::parseNumber(bool)'
 being compiled
          with
          [
              Alloc=`anonymous-namespace'::DefaultAllocator
          ]
  C:\src\llvm-project\llvm\include\llvm/Demangle/ItaniumDemangle.h(5469): note: 
while compiling class template member function 'llvm::itanium_demangle::Node 
*llvm::itanium_demangle::AbstractManglingParser<llvm::itanium_demangle::ManglingParser<`anonymous-namespace'::DefaultAllocator>,Alloc>::parse(void)'
          with
          [
              Alloc=`anonymous-namespace'::DefaultAllocator
          ]
  C:\src\llvm-project\llvm\lib\Demangle\ItaniumDemangle.cpp(378): note: see 
reference to function template instantiation 'llvm::itanium_demangle::Node 
*llvm::itanium_demangle::AbstractManglingParser<llvm::itanium_demangle::ManglingParser<`anonymous-namespace'::DefaultAllocator>,Alloc>::parse(void)'
 being compiled
          with
          [
              Alloc=`anonymous-namespace'::DefaultAllocator
          ]
  C:\src\llvm-project\llvm\include\llvm/Demangle/ItaniumDemangle.h(5505): note: 
see reference to class template instantiation 
'llvm::itanium_demangle::AbstractManglingParser<llvm::itanium_demangle::ManglingParser<`anonymous-namespace'::DefaultAllocator>,Alloc>'
 being compiled
          with
          [
              Alloc=`anonymous-namespace'::DefaultAllocator
          ]
  C:\src\llvm-project\llvm\lib\Demangle\ItaniumDemangle.cpp(377): note: see 
reference to class template instantiation 
'llvm::itanium_demangle::ManglingParser<`anonymous-namespace'::DefaultAllocator>'
 being compiled
  C:\src\llvm-project\llvm\include\llvm/Demangle/ItaniumDemangle.h(3719): error 
C2665: 'llvm::itanium_demangle::ScopedOverride<const char *>::ScopedOverride': 
no overloaded function could convert all the argument types
  C:\src\llvm-project\llvm\include\llvm\Demangle\Utility.h(194): note: could be 
'llvm::itanium_demangle::ScopedOverride<const char *>::ScopedOverride(T &,T)'
          with
          [
              T=const char *
          ]
  C:\src\llvm-project\llvm\include\llvm/Demangle/ItaniumDemangle.h(3719): note: 
'llvm::itanium_demangle::ScopedOverride<const char *>::ScopedOverride(T &,T)': 
cannot convert argument 2 from 'std::_String_view_iterator<_Traits>' to 'T'
          with
          [
              T=const char *
          ]
          and
          [
              _Traits=std::char_traits<char>
          ]
          and
          [
              T=const char *
          ]
  C:\src\llvm-project\llvm\include\llvm/Demangle/ItaniumDemangle.h(3719): note: 
No user-defined-conversion operator available that can perform this conversion, 
or the operator cannot be called
  C:\src\llvm-project\llvm\include\llvm/Demangle/ItaniumDemangle.h(3719): note: 
while trying to match the argument list '(const char *, 
std::_String_view_iterator<_Traits>)'
          with
          [
              _Traits=std::char_traits<char>
          ]
  [97/4908] Building CXX object 
tools\clang\utils\TableGen\CMakeFiles\clang-tblgen.dir\ClangAttrEmitter.cpp.obj
  ninja: build stopped: subcommand failed.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D148546/new/

https://reviews.llvm.org/D148546

_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to