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

    <tr>
        <th>Summary</th>
        <td>
            Audit/Update `select` uses in DiagnosticXKinds.td to use `enum_select`.
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            good first issue,
            clang:diagnostics
      </td>
    </tr>

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

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

<pre>
    `enum_select` was added in this patch here: https://github.com/llvm/llvm-project/pull/122505

It is a really useful version of `select` that also creates an `enum` so that we don't have to use unreliable 'magic numbers'.  However, the original patch touches one such diagnostic.

We need someone to audit all of our uses of `select` and see if:
1- the `select` has a significant number of `items` in it.
2- A lot of the uses of the `select` for the diagnostic in the source use a lot of magic numbers, OR an enum-made-just-for it

So if the diagnostic tends to have a lot of `/* ThingIWantSelected */ 5` sort of things (or worse, just the `5`!), it is likely a good candidate.  Ones that are 'calculated' based on some other criteria aren't a great.

One such example is from: https://github.com/llvm/llvm-project/pull/120327 , which is what encouraged this patch.  

Once we have ones identified, someone should then go through and convert these diagnostics.
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJykVM1u4zYQfhr6MrAgUZEdH3RwszC66CFAt8X2VozJkTS7FGlwSLt5-4KynWQ3p6InA-bo4_c3RBEePVGvul9U92mFOU0h9hTZTN8JPa2Owb70alOTz_PfQo5MUpsaLiiA1pIF9pAmFjhhMhNMFEm1e5hSOolq90oflD6MnKZ8rEyYlT44d77_rE8xfCuI-nDKzil9aLTu6k7Ve1XvPydgAYRI6NwLZKEhOzhTFA4ewgBqU78xShMmQCcBTCRMJIAebsTLuYTryIXABq_0NsGEZ4IUCjJkH8kxHh2B0tsZRzbg83ykKEpvK4Bfw4XOFJV-gjQRhMgje3Q33SlkM5FA8ASSzQSWcfRBEpvqquYrgSeyIGGmMpUCYLZcOLsiJuRYiMgHYegtCBHwUPys9816IfDDzFTigJIlD2zQpxv3GxgnmqXMsQdOhZBewx5cSGWgoN1v_oA8hLj8-abnmjiBhBzN8iXgHeon357g-fcSQ8lgPaOl9bcsaV0wOV1t-RKAh59vSOStFIeWhF7R1aZe-rSHPyb24-ev6NOXhSlZULqUDbpr1vGmjP0ooPRjiHAJUahwKhzuQrsFs1F6V054aZzj7-ReAGEMwYJBb9liogrg2ZPcihaXnhh0JjtMZJXewhGFLAS_ZAwhTRTBRE4UGcsX19YhjKWgt1o83wtD_-B8clQIDDHM_2-J6lZvoSi6TGymgnkprMmbkCOOZN_tbAVwp2KorMdieihS2ZJPPHCR9_TaXJlCdgWBPIxlq2LI47T01AR_pri4K-8TlWpl-9bu2h2uqG-27Wa3fdhuutXUbxrbNseHtmsGtKh3j1brRz3Ug9ntHqzGFfe61l3dNJ2uu53uKmOpe9zp7miGut0OR_VQ04zsquJGFeK4YpFMfaPbRjcrh0dysrxwWi-RDhylJC2ZlNZKPymtjUM_qnb_jnM56z6tYr-4fMyjqIfasSR5uylxctTvyyIrffjzVIry4wItm8UePr0C__UbeytVsve358PzWq1ydP1_jn9RJEsBFuXnXv8bAAD__zgb8Ww">