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

    <tr>
        <th>Summary</th>
        <td>
            _BitInt should not be allowed as underlying type of enumeration
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            c23,
            accepts-invalid,
            clang:diagnostics
      </td>
    </tr>

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

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

<pre>
    Clang is the only implementation that accept the following code (https://godbolt.org/z/dnerMvKxh):
```cpp
enum E : _BitInt(2) {};
```

https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3030.htm#design-bit.precise.integers suggests that this was considered and rejected due to interaction between bit-precise integers and integral promotion among other concerns. More details here: https://github.com/llvm/llvm-project/pull/69104#issuecomment-1771395567
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyUU12PpDYQ_DXmpTUI2gwfDzzs3h5SFN1viIzdAz4ZG9nNTia_PjIzuSj7Fglh2eqyq6uqVUp28USjuL6L60ehDl5DHL97Y51zxRzMY_zmlF_AJuCVIHj3ALvtjjbyrNgGD7wqBqU17XzW3IJz4W79AjoYAoH9yrwnId8ETgKnJZg5OC5DXAROfwmcjKf44_P3P1eBQy6rPkT1Jtrq-el9f56QPzb4DkK-wR_vln_zLLBHgQOI7l10H0K-f4G-tuf_vyTu93sZdvKXxObF5CfrWuCUNGIuWOrmWZcJBp0ETl5WsipX3gRKQ1m6y2y53CNpm6i0nmmhmCAdy0KJ01MaXm2Cu0qgg0_WUCQDyhuI9JM0kwFzEHCADI9Kn5rOxHciD7Ply-t6-HV9Bp-bqBzsMWzhxKgt-AUCrxTzU5qiTyX8CJHAECvrEqwUKcv3xRDL6zGXOmwCJ-c-_1kuewyZosBpP5wTOLVDXTUCpU3pIB22HIJL3XW1HK7XtivMKM0gB1XQWLdD18m2wqZYx1uP1F9b3d-qhnojh65vlNKdwYaaFlVhR6xQ1lU91B1WWJWdaqgdqBtkU-m-laKpaFPWlZlYNqw4OYzt0NZD4dRMLp0pRtQoRbbwm0B8xjJdrP9Uzppf5zqHWsg3Y9XiQ2Kb_cU8AnE8W5-PJYmmcjZx-vdNtuxofIUP0hoOZ8AHhplA5dRnaxMc3lB0jzwC_NgJwg1ydimeA1Mc0Y3_24Gz3XR60NbD3wEAAP__SF41AQ">