<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/60549>60549</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
FAILED: tools/clang/lib/Lex/CMakeFiles/obj.clangLex.dir/Lexer.cpp.obj
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
Michaelzhouisnotwhite
</td>
</tr>
</table>
<pre>
The Error happened when I build clangd version 16.0.0. Build tools are MSVC. Cmake command is `cmake -DCMAKE_INSTALL_PREFIX="$LLVM_ROOT/build-msvc/install-dir" $LLVM_ROOT/llvm/ -DCMAKE_BUILD_TYPE=Release -DLLVM_ENABLE_PROJECTS="clang;clang-tools-extra" -G Ninja`
build command is `cmake --build $LLVM_ROOT/build-msvc --target clangd -j 10`
```
[1553/2808] Building CXX object tools\clang\lib\Lex\CMakeFiles\obj.clangLex.dir\Lexer.cpp.obj
FAILED: tools/clang/lib/Lex/CMakeFiles/obj.clangLex.dir/Lexer.cpp.obj
C:\tools\VISAUL~1\VC\Tools\MSVC\1434~1.319\bin\Hostx64\x64\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_HAS_EXCEPTIONS=0 -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:\tools\msys64\home\michael\llvm-project\build-msvc\tools\clang\lib\Lex -IC:\tools\msys64\home\michael\llvm-project\clang\lib\Lex -IC:\tools\msys64\home\michael\llvm-project\clang\include -IC:\tools\msys64\home\michael\llvm-project\build-msvc\tools\clang\include -IC:\tools\msys64\home\michael\llvm-project\build-msvc\include -IC:\tools\msys64\home\michael\llvm-project\llvm\include /DWIN32 /D_WINDOWS /Zc:inline /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 -wd4324 -w14062 -we4238 /Gw /MD /O2 /Ob2 /DNDEBUG /EHs-c- /GR- -std:c++17 /showIncludes /Fotools\clang\lib\Lex\CMakeFiles\obj.clangLex.dir\Lexer.cpp.obj /Fdtools\clang\lib\Lex\CMakeFiles\obj.clangLex.dir\ /FS -c C:\tools\msys64\home\michael\llvm-project\clang\lib\Lex\Lexer.cpp
C:\tools\msys64\home\michael\llvm-project\clang\lib\Lex\UnicodeCharSets.h(1): warning C4819: The file contains a character that cannot be represented in the current code page (936). Save the file in Unicode format to prevent data loss
C:\tools\msys64\home\michael\llvm-project\clang\lib\Lex\UnicodeCharSets.h(394): error C2226: syntax error: unexpected type 'llvm::sys::UnicodeCharRange'
C:\tools\msys64\home\michael\llvm-project\clang\lib\Lex\UnicodeCharSets.h(394): error C2143: syntax error: missing ';' before '{'
C:\tools\msys64\home\michael\llvm-project\clang\lib\Lex\UnicodeCharSets.h(394): error C2447: '{': missing function header (old-style formal list?)
C:\tools\msys64\home\michael\llvm-project\clang\lib\Lex\Lexer.cpp(1479): error C2665: 'llvm::sys::UnicodeCharSet::UnicodeCharSet': no overloaded function could convert all the argument types
C:\tools\msys64\home\michael\llvm-project\llvm\include\llvm/Support/UnicodeCharRanges.h(96): note: could be 'llvm::sys::UnicodeCharSet::UnicodeCharSet(llvm::sys::UnicodeCharSet &&)'
C:\tools\msys64\home\michael\llvm-project\clang\lib\Lex\Lexer.cpp(1479): note: 'llvm::sys::UnicodeCharSet::UnicodeCharSet(llvm::sys::UnicodeCharSet &&)': cannot convert argument 1 from 'const llvm::sys::UnicodeCharRange []' to 'llvm::sys::UnicodeCharSet &&'
C:\tools\msys64\home\michael\llvm-project\clang\lib\Lex\Lexer.cpp(1480): note: Reason: cannot convert from 'const llvm::sys::UnicodeCharRange []' to 'llvm::sys::UnicodeCharSet'
C:\tools\msys64\home\michael\llvm-project\clang\lib\Lex\Lexer.cpp(1480): note: No constructor could take the source type, or constructor overload resolution was ambiguous
C:\tools\msys64\home\michael\llvm-project\llvm\include\llvm/Support/UnicodeCharRanges.h(96): note: or 'llvm::sys::UnicodeCharSet::UnicodeCharSet(const llvm::sys::UnicodeCharSet &)'
C:\tools\msys64\home\michael\llvm-project\clang\lib\Lex\Lexer.cpp(1479): note: 'llvm::sys::UnicodeCharSet::UnicodeCharSet(const llvm::sys::UnicodeCharSet &)': cannot convert argument 1 from 'const llvm::sys::UnicodeCharRange []' to 'const llvm::sys::UnicodeCharSet &'
C:\tools\msys64\home\michael\llvm-project\clang\lib\Lex\Lexer.cpp(1480): note: Reason: cannot convert from 'const llvm::sys::UnicodeCharRange []' to 'const llvm::sys::UnicodeCharSet'
C:\tools\msys64\home\michael\llvm-project\clang\lib\Lex\Lexer.cpp(1480): note: No constructor could take the source type, or constructor overload resolution was ambiguous
C:\tools\msys64\home\michael\llvm-project\llvm\include\llvm/Support/UnicodeCharRanges.h(55): note: or 'llvm::sys::UnicodeCharSet::UnicodeCharSet(llvm::sys::UnicodeCharSet::CharRanges)'
C:\tools\msys64\home\michael\llvm-project\clang\lib\Lex\Lexer.cpp(1479): note: 'llvm::sys::UnicodeCharSet::UnicodeCharSet(llvm::sys::UnicodeCharSet::CharRanges)': cannot convert argument 1 from 'const llvm::sys::UnicodeCharRange []' to 'llvm::sys::UnicodeCharSet::CharRanges'
C:\tools\msys64\home\michael\llvm-project\clang\lib\Lex\Lexer.cpp(1480): note: No constructor could take the source type, or constructor overload resolution was ambiguous
C:\tools\msys64\home\michael\llvm-project\clang\lib\Lex\Lexer.cpp(1479): note: while trying to match the argument list '(const llvm::sys::UnicodeCharRange [])'
C:\tools\msys64\home\michael\llvm-project\clang\lib\Lex\Lexer.cpp(1508): error C2065: 'C11AllowedIDCharRanges': undeclared identifier
C:\tools\msys64\home\michael\llvm-project\clang\lib\Lex\Lexer.cpp(1548): error C2665: 'llvm::sys::UnicodeCharSet::UnicodeCharSet': no overloaded function could convert all the argument types
C:\tools\msys64\home\michael\llvm-project\llvm\include\llvm/Support/UnicodeCharRanges.h(96): note: could be 'llvm::sys::UnicodeCharSet::UnicodeCharSet(llvm::sys::UnicodeCharSet &&)'
C:\tools\msys64\home\michael\llvm-project\clang\lib\Lex\Lexer.cpp(1548): note: 'llvm::sys::UnicodeCharSet::UnicodeCharSet(llvm::sys::UnicodeCharSet &&)': cannot convert argument 1 from 'const llvm::sys::UnicodeCharRange []' to 'llvm::sys::UnicodeCharSet &&'
C:\tools\msys64\home\michael\llvm-project\clang\lib\Lex\Lexer.cpp(1549): note: Reason: cannot convert from 'const llvm::sys::UnicodeCharRange []' to 'llvm::sys::UnicodeCharSet'
C:\tools\msys64\home\michael\llvm-project\clang\lib\Lex\Lexer.cpp(1549): note: No constructor could take the source type, or constructor overload resolution was ambiguous
C:\tools\msys64\home\michael\llvm-project\llvm\include\llvm/Support/UnicodeCharRanges.h(96): note: or 'llvm::sys::UnicodeCharSet::UnicodeCharSet(const llvm::sys::UnicodeCharSet &)'
C:\tools\msys64\home\michael\llvm-project\clang\lib\Lex\Lexer.cpp(1548): note: 'llvm::sys::UnicodeCharSet::UnicodeCharSet(const llvm::sys::UnicodeCharSet &)': cannot convert argument 1 from 'const llvm::sys::UnicodeCharRange []' to 'const llvm::sys::UnicodeCharSet &'
C:\tools\msys64\home\michael\llvm-project\clang\lib\Lex\Lexer.cpp(1549): note: Reason: cannot convert from 'const llvm::sys::UnicodeCharRange []' to 'const llvm::sys::UnicodeCharSet'
C:\tools\msys64\home\michael\llvm-project\clang\lib\Lex\Lexer.cpp(1549): note: No constructor could take the source type, or constructor overload resolution was ambiguous
C:\tools\msys64\home\michael\llvm-project\llvm\include\llvm/Support/UnicodeCharRanges.h(55): note: or 'llvm::sys::UnicodeCharSet::UnicodeCharSet(llvm::sys::UnicodeCharSet::CharRanges)'
C:\tools\msys64\home\michael\llvm-project\clang\lib\Lex\Lexer.cpp(1548): note: 'llvm::sys::UnicodeCharSet::UnicodeCharSet(llvm::sys::UnicodeCharSet::CharRanges)': cannot convert argument 1 from 'const llvm::sys::UnicodeCharRange []' to 'llvm::sys::UnicodeCharSet::CharRanges'
C:\tools\msys64\home\michael\llvm-project\clang\lib\Lex\Lexer.cpp(1549): note: No constructor could take the source type, or constructor overload resolution was ambiguous
C:\tools\msys64\home\michael\llvm-project\clang\lib\Lex\Lexer.cpp(1548): note: while trying to match the argument list '(const llvm::sys::UnicodeCharRange [])'
[1562/2808] Building CXX object tools\clang\lib\Basic\CMakeFiles\obj.clangBasic.dir\Attributes.cpp.obj
ninja: build stopped: subcommand failed.
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzsWktz4joW_jViozJlyw9gwcLYOM0MgRQmnZ7ZULItsHKNRElySGZxf_uUZCfkOZPbCenHTVfax3r403lLpxCWkm4YIUPgj4Afd3CtSi6GpzQvMan-U_KaSsbVvqSKdDJe3AyXJYFjIbiAJd7tCCMF3JeEwQnMaloVMK8w2xTwighJOYNO0LW7dheOzKDivJIQCwJP069RF0Zb_AeBOd9uMSsglRAEdm76rDg6Df85Xk1m6TKcTldni3Ey-QbcGCAEkDedfj1dLebzJUCJWdfayqscoIQyqXBVWQUVACH4aGpVXW0BSu7QR-eTabxa_utsDNx4QSqCpV7afDKehaPpeHW2mP9jHC3TZmkjHXBHhlpGHItcK4H1YtYJnFF2iUFgAzsGdthq5DnxrGbsRVGgZSksNkTdKtS6hI59h_zgGdjtX9P0R47vuwAlqG_3gR83uqdsA6Nv3yDPLkmuGksAP2oE8qOKZsCPpuQa-FF0iv8gCa2InsCzy66ZNCXXXa1VM4uIbr7bdXl22SyahJPpOAZu2AKjpAFGiQZGiQZGyT1glDwBNrMeA0fADYEf3bL7dZKG59M_Hf0aAT9atv3anYAfOZ7r_el0XWcA_CijDPjRFy7VdeABP2qeedUl1wQClDBe8Q3Xb8szaMUny3G6XH0J09ViuZwAN7ahFZ_PJtE8HkMrXkWL5Wo2n6XLOFrN5qt4fLYYR-HyubGLcDGbzE7S26F0HJ0vxs9-dRi6_5HmYvwtGp8tJ_NZ2vKySqPpS1APh-5D3ZNgZfiLNJ_hbLk6DaPFPD0MJPPFafi0ezo5nRx6J48MspU30ui15Fui203m0B5VXW2tneDa3bQ1DlF6-PqJ971hgWNgUZZXdUGOJfY7w78dzuTHAxBASXwxmbnIvK0uJrN4fpFCqJv_zoEbUlZRRu6aq1W-q2qp_-u-OdXPjG54dqnfdkRsqZT0ili6eeFBa194jue0NDAUeU0_CnoNHTTjrt9Qzw9a2mtpv6UDQ33bNTRADU5PZ2aNb9sNRc13voPa-X4z37Hb_ob2bNTy47ftZl33btxpabOe2x-0OE1_v8VFdsOH32vWtVt5_AFq8QYtTkNdw7fj2YEeJx5y-1pbJ3v9PI2NYo1B5lljl1k8Hp2fGKOMv0grN8o9WVjQkqoAbpgDNAJo5PR0vyz5ftKY19go4e-2Exi44i1wBiGFVg7fLQncZ_LZHeVN0OeM5rwgUYlFSpTslgD1HYAGeiPcY8HMpuv1HdOhT05rWunzDlOYMgkxzEsscK6IgKrECuaYMa5gRqAgO0EkYYoUkDKoSgLzWgjCFNQrwh3e6LjrD9wAoEEXpviKmFlmBcpgyxpcc7HFer-HO0Gu9PcFVhhWXMqP0Yc78FqNEHNsjBBCgW7KG6bwddOr2zUj1zuSa4nVzU5L1zP5yA2BG8ob2bzcW2KB2YYA1PtRcjie-5wcJsexjeYfuCOAejAjay6MQKA3-oEMe15PNw983ON2XbNc6RN7SXBBhPYtXhWWVDdV60QVrKhUwE006rtLcIhS1He83uAR60Hgt6z_b59IiXq2rxGWcciviKg4LkhxEDnntTmnsysiFMRVZSIJi0291QGjvfGNwfJwY73tQEla73ZcKICSx37d2HAQtHpgXBFNG1azV0THi5ro_9_vIECB-RscxVlfMPWtiB8nmdZnk3HvbH9rcweuBd9qXnLOpIKvyESwqaF1wCv-KinuuDm6kvv2IyUvCJacPaOBDxD7R8g749BIJOpccdGGkdKluA51yWuRExPoAEXQTDhMvk0ZUBDJq9qkjD2WEG8zuql5_bPkBi5g8-8NEfQas9957q-WHv66cEfOEH-Jod8qSbxS8s9U8S6pwvefpopjbrNN34GJXy9VfK-IP_pI8ZStzwB6mxPtS11RK3GjqyTF4RarvHxYIOi6yFRVr9tiHpr2AyLDt_uPyin7rpyKHCesKr4nxSR-6DamJC9IXmFBCkgLwhRdUyKOzaz3mNnP2u83rf0Opv6s_Y6o5McZ7feu_Z7K-xPvR5-130elh8_a76dJEj9N7fe3SBV_i9rvY08Sn7XfrxhA3-FEH1f7mVtbAfquW1sjLGn-4s_rZrT9gT1UStCsVkQ-vGXFzLU1N2zv8EnFdztSmB836-z2_toa04oU3WcvnXWKoVsM3AHukKET9PwgGAR-0CmHfTsPir7reAT3g9zPsFv0XGeNbWeA3fXa6dAhspFrIzuwe17PDbrIITjLC6_ARd53ewR4NtliWnW1YrtcbDpUypoMA9v3Bp0KZ6SS5voiQozsoRkECAE_7oihcYGs3kjg2dpS8oCiqKrI8AgX1zq1qIalUjtjfZQAlGyoKuusm_Pt4RLiA-9EieFbwxu5_hsAAP__r8IdZg">