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

    <tr>
        <th>Summary</th>
        <td>
            Differing behavior of `std::type_index` hash and equality from libc++ and libstdc+++
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

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

    <tr>
      <th>Reporter</th>
      <td>
          Skylion007
      </td>
    </tr>
</table>

<pre>
    Full background can be found on the linked discussion https://github.com/pybind/pybind11/pull/4319#issuecomment-1480244859 Essentially the behavior of `std::type_index` is different between the two standard libraries. This behavior seems like a bug in llvm's implementation and requires us to be careful whenever storing std::type_index in a hashmap when using libc++;
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyMUs2O4ygQfhp8KXWEMXacgw8d9foFdu8rMGW7NhjSFHQ2bz-yWzM9h9FoJCQKFfXz_RhmWgLiINqraN8qU_Ia0_D37ekpBinPlY3uOYzFe7Bmui0pluBgMgEswnw8YoC8IngKN3TgiKfCTDHAmvOdRfMq1CjUuFBeiz1NcRNqvD8tBfcjqOs9LN4LNeqmvgjVEHPBKW4bhvxS614qrfv2An8xY8hkvH8eYy2u5oNigjiD6CRnt09sXvPzjv9ScPi_6CQQg6N5xoQhg8X8QPzcOj8icDbBmeTAk00mEfIJ_lmJv3oz4sbg6YZgwJYFKID3H5tQZwba7h73NU3eUZvgIOF7oYQMhSHHnarJJJyLh8eKAT8wAeeYKCzwi4X37gZWw-tm7kcFFN7_erKTUNf9NNfKDY27NBdT4VB3vawvstddtQ6T1Z06t-fz5LR2aFxtWn3ua7RauXMnKxqUVI1sGlm3Wuru1LfYNmpWeOnRuqYTWuJmyJ92jKeYlupQY-jqXveVNxY9H45RKuADjqRQajdQGvaaF1sWFlp64sxfXTJlj8PbIcSO58-024k4WMX3YjzlJ8wpbj-RcSQ9Wc7uOz3qWpXkh9848FO-43q5p_gfTlmo8YDCQo0H1G8BAAD__0LrCao">