<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/77773>77773</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            [libc++] does not define __cpp_lib_format
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            libc++
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          h-2
      </td>
    </tr>
</table>

<pre>
    https://github.com/llvm/llvm-project/commit/dff62f5251f26db856124526ae1b335ddc1e892c

states that

>  Some ``std::formatter`` specializations are not yet available since the class used in the specialization has not been implemented in libc++. This prevents the feature-test macro to be set.

Which specializations are that? I think it is unfortunate that the header is available for a while, but conforming code that relies on the macro cannot use it. Furthermore, `__cpp_lib_format_ranges` and `__cpp_lib_format_uchar` are set, which is weird, because they are features that build on `__cpp_lib_format` so implementations might even think that checking one of the former is sufficient, even though in this situation it is not?
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyUVM1u8zYQfBr6soghUT-WDzokTQ303AI9GvxZmduPIg1ymSB9-kKUi6RFLt_FFqjd4ezMrFTOdAuIsxhexPB6UIVdTLN7kgcd7cfsmO9ZdM9CXoS83Ihd0UcTVyEv3r_9-_d0T_EvNCzkxcR1pe3BLssol0EO7SJHq6dhbGU_yFFhq7tusNa0OJ2lEc2raJ7338yKMQM7xV-PRfcrwO9xRRBjI8Yms90odc9LTKtixrSfQ76jIeXpb8UUQwaVEEJk-EAG9abIK-0RMgWDwA7BeJUzlIwWKNST_yKAU7kCaMQAtN49rhh4L_ekjZAvQr4c4Q9HGe4J3zBwrkALKi4Jnxgzw6pMisARNEJGPn4d7k9Hxn3LvMrQXeA3YEfhBxADZShhiYlLULxX1NscKotpe_055hITKHh35FHIX0AXBhO35pXCDUy0j_6EnjBD3AXYqRoVtrFLRiA-wqUkdpjWmCqUGJvr1dzvV0_6untwTSrcMG8mqGC_rSjGqVQLUlVhQ3qvw1OGd6RkK000aruWHX7UyoeQeypAF_J24_rNDTUB8dOmh5Qr3RzDZs1DxwpkHJofmxAxIMRl9yymdVcxl2UhQxgqy0dvLDe352SrIC57RnZbQty8Oti5s-furA44t6emP0_dNJ0Obm4mufR6tN1w7k1nFz2dpe5MP0qJTa_GA82ykX3Ttm3bd1NzOg7judUn1Z87OaHtJtE3uCryx23hjjHdDpRzwfl0Op26g1cafa5bLOVnMoWU21anuW6pLrcs-sZT5vwJw8S-7v-XtuEVbMQ9-xYXCgj_V_tQkv_5z0PlnIW8VNr_BAAA___OUIDq">