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

    <tr>
        <th>Summary</th>
        <td>
            [Clang][Driver][Test] No negative tests for unsupported options in different drivers
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            test-suite,
            clang:driver
      </td>
    </tr>

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

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

<pre>
    Recently while exposing more options to the Fortran `flang` driver, some options were accidentally exposed to `clang-cl` and `clang-dxc` too. This was not caught by the test-suite because there are generally no tests to verify which options are **not** supported by specific drivers.

It should be possible to automatically generate a test that tests each unsupported option + driver flavor. Checking in the generated tests to version control would then allow for checking that only intended changes to option visibility is present during code-review.

>From a high level look creating such a script should be fairly straightforward by parsing the tablegen json output of `Options.td`.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJxkU82u6yYQfhqyGSWycezECy9yz1GkLtpK1X0BDGPDvQQsZuzcvH0FyWladWUL8f0x3ygiNwfEQbTfRPu5UyvbmIbfFfKGjnZjNI_hL9QY2D_gbp1HwF9LJBdmuMWEEBd2MRBwBLYI15g4qQCiqyavwiy6CkxyGyYhP4Di7Y24Y0JQWjuDgZX3jyczmswlukpn_F77TKGCeR-ZXzqfcYwH-G4dwV0RhMig1TpbhvFRrDAS72l1jDCiVithPs6aCWHGgKmIhlhulgQbJjeVnNr-4zNfF_Ii5CVEfv4ArcsSE6PJYrSgdpPTr6B0ENVFVJffGMjG1RsYEZZI5EaPWUWtHG-KnS76TyeMoIoPYKv45QiVtrCGt9jTEgj57aUFk1dbTAf4sKh_5qG4UMJ_sZr_hKOM1jFwih7uxRtbDKC8j3eYYgL9xVNsxOAf4AJjMGhAWxVmLFwvI5sjNzrv-AGOYElIGBjMmjKDjgb3CTeH99eLXFO8gQLrZgseN_TgY_wJOqHijKBVW1BAOrnl3483KZf8A4iTcrPlKaa7SuXpF5Xo6RaB1ehxxgA_KAaIKy8rQ5xyb_58jvLARnTVYWeGxvRNr3Y41KemOTXnpu12djhOsj3JWtf1ue_UqTvVvTpOx07VfYvjaHZukJU81rLqq77t6-6AjTyfzXRumh7lsWrFscKbcv7g_XY7xDTvHNGKQ133dV_tvBrRU1k2Kd_9FFIK-SGkLP0WzeVrY2TeyTRksv24ziSOlXfE9KZnx75s70eBtp-i_fb5RJf_70gs2k_4I0LAWbHb8NWIPO3_d4tygYybJkxllM9G79bkB8u8kGguQl6FvM6O7ToedLwJec12Xp_9kuIP1CzktUQnIa-v9Nsg_w4AAP__cYaKQQ">