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

    <tr>
        <th>Summary</th>
        <td>
            [clang-doc] Reconsider use of enum InfoType::IT_default
        </td>
    </tr>

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

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

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

<pre>
    The use of `InfoType::IT_default` seems to clash with LLVM style which [prefers to warn if not all enums are covered in a switch without `default`](https://llvm.org/docs/CodingStandards.html#don-t-use-default-labels-in-fully-covered-switches-over-enumerations). We use our own default enum, which a.) could just be covered by `default` and b.) might prevent us from seeing the warning.

It doesn't look like we set it anywhere besides when default constructing an `Info`, so I doubt that it's actually checked before a proper type is set. It's not checked in the  unit tests where it is explicitly passed to construct a reference.
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJx0k8GPszYQxf8a5zICERNCcuCw364iRfp6aVftsTL2AP7WsZFnHEr_-spsotUeekIIz-P3xu8pIjt6xE40P0TztlOJpxA7vKPDf9tdH8zavU8IiRDCAOJYXf0Q3tcZRf0i6pfr-98GB5Uci2MFhHgj4ADaKZpgsTzBz59__gbEq0NYJqsnEM2POeKAcTu5qOjBDuADg3IO0KcbgYoIOtwxogHrQQEtlvWnYkicOb5-K5o3IU8T80wZSl6EvDh3v5UhjkJeTNAk5OU1GOvHP1h5o6KhcuKbE7I2wRdcJMLiIVg41aOjwvpiSM6txYOj-ERAKvJ7kTkxKrbBk5DnEv56LClFCIuHh9rmR8jXh3dVCnkGHZIz8CsRQ__ls1-_2wLlDfTbwM2OE8Mc8Y6eIREMMdzytq0fgSfctmj9WIrqRVQvVwYTkLyQLYML4QOc_UBYEAgZLIPy6zJhROiRrEGCZcIvZB08cUyas7ryz0vPm5avQAGuYELqGXhSWU7IlkBpTsq5FfSE-iPbwSFEBAVzDDNG4HVGsJQRSrh-DuVLf563fnMCyVsGRuKNKmLmtQT4z-ystuxWmBURmi1mT1JQsEUKvcZyZ7ranOuz2mG3bw_n6ryXzWE3dUYOzak9tUaeTb1va6WV2au2GZTeH-u-3dlOVrKpjlVTyUPVHMr-KJWppKr6Y31uTlIcKrwp68pnvnaWKGG3P8jT6bT7jM7WJSk9LrB9FVLmasUuDxV9GkkcKmeJ6UuGLbuthNopPxYmaNG8we-YHVqD8VnAHCf4vwruUnTd9x6MlqfUlzrcHqV4PIo5hl-oWcjLxpgb8jBx7-R_AQAA__-5J2Fm">