<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/57845>57845</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
libcxx 15.0.1 fails tests when using clang-16
</td>
</tr>
<tr>
<th>Labels</th>
<td>
libc++
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
mgorny
</td>
</tr>
</table>
<pre>
When building libcxx 15.0.1 using clang-16, there's a lot of warnings like:
```
[564/565] Building CXX object libcxx/src/CMakeFiles/cxx_static.dir/locale.cpp.o
In file included from /home/mgorny/git/llvm-project/libcxx/src/locale.cpp:16:
In file included from /home/mgorny/git/llvm-project/build-cxx/include/c++/v1/algorithm:1709:
In file included from /home/mgorny/git/llvm-project/build-cxx/include/c++/v1/__debug:16:
In file included from /home/mgorny/git/llvm-project/build-cxx/include/c++/v1/type_traits:421:
In file included from /home/mgorny/git/llvm-project/build-cxx/include/c++/v1/__functional/invoke.h:17:
/home/mgorny/git/llvm-project/build-cxx/include/c++/v1/__type_traits/decay.h:30:8: warning: keyword '__decay' will be made available as an identifier for the remainder of the translation unit [-Wkeyword-compat]
struct __decay {
^
In file included from /home/mgorny/git/llvm-project/libcxx/src/locale.cpp:16:
In file included from /home/mgorny/git/llvm-project/build-cxx/include/c++/v1/algorithm:1709:
In file included from /home/mgorny/git/llvm-project/build-cxx/include/c++/v1/__debug:16:
In file included from /home/mgorny/git/llvm-project/build-cxx/include/c++/v1/type_traits:511:
/home/mgorny/git/llvm-project/build-cxx/include/c++/v1/__type_traits/make_signed.h:42:8: warning: keyword '__make_signed' will be made available as an identifier for the remainder of the translation unit [-Wkeyword-compat]
struct __make_signed {};
^
In file included from /home/mgorny/git/llvm-project/libcxx/src/locale.cpp:16:
In file included from /home/mgorny/git/llvm-project/build-cxx/include/c++/v1/algorithm:1709:
In file included from /home/mgorny/git/llvm-project/build-cxx/include/c++/v1/__debug:16:
In file included from /home/mgorny/git/llvm-project/build-cxx/include/c++/v1/type_traits:512:
/home/mgorny/git/llvm-project/build-cxx/include/c++/v1/__type_traits/make_unsigned.h:44:8: warning: keyword '__make_unsigned' will be made available as an identifier for the remainder of the translation unit [-Wkeyword-compat]
struct __make_unsigned {};
^
3 warnings generated.
```
Since tests use `-Werror` this causes them to fail.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJztVk2L2zAQ_TX2RcTY8ldy8KHZbaCHnnrYvQVZHttqZClIcrL59x3ZCcnSwhZasrBscIQsjfTmzcwzU-vmVD31oEg9CtkI1REpav7yQpI8iqOEjNavcclUt0iKgD4Q14OBgJaWMCK1I7olR2YUmlk8u4Mg_RLEj0F8GYv4_Myv-TovsoBu8iIP8keyvsA-PD8TXf8E7s4eoI01HMeH72wHGyHB4gtubK1jTvCoEQYXpOZMQsT3-0jPEN8UadGaCMXl2EBDWqMHgqa9HtDxzdBpo0446YTzF8jDsNgb7aH962vw6_XICwNwIfdvIFOwFzPO-QbPLaDr6dkcEhyYxDuE6wePXMare2Jvtw3UY3d3zu60h60zTDiLsBlN7ku6HRV3QismJ7uD3kHUT-G_VvX_RbwlTDcNcHaaENMYhyX-L-Ly0x2cjto0yLr0CUJbnJGjkJLUQAbWAGEHJiSrMVAMBaqIaEA50QowpNXGi5cYGJhQDa6gdP0CwisrmSdORiUcQZEuns5gC66HPXOo1Zm_dWZEjZ7xSVCu53Uy_4L866cKP5YK8yS5T_UP-J3fWtEpaCYNZPQtDdyceEcl3Hgx6aF8DNJPVXx4VdA7qmJUt7rI_koXlzPvrYyLH29pI732kR0oMMwh3z83kdP4A0OIjoF1FttUILi9eAJjtMEZOi0s4Qw3rCcwEKdJi7yjEKqkKNJiGcclDZsqbVbpioVOOAnV6-bX29szwtE3ya-7YRKORla9c3tfEJiqOe_9WEcYkHP6f68CYe049bJ5uczysK-KnOWUtzyDmq9SVjZAVywpIFvyOmsyFmKyQNoKQx5Q6l28VAzFkIeiojGl8YrGSUqThEZpDnW64nh9XOctdhJZ7NMpI-9IpE0XmmryCVVkcVMKJHjdZHbKF0x4eD8bXa9NNZd2OHlfTa7_AoNx77Q">