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

    <tr>
        <th>Summary</th>
        <td>
            [clang-tidy] Extend readability-simplify-boolean-expr to extract common subexpressions from AND/OR chains
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            clang-tidy
      </td>
    </tr>

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

    <tr>
      <th>Reporter</th>
      <td>
          chrchr-github
      </td>
    </tr>
</table>

<pre>
    ~~~c++
bool f(bool a, bool b, bool c, bool d) {
    return (a && b) || (a && c) || (a && d);
    // return a && (b || c || d);
}
bool g(bool a, bool b, bool c, bool d) {
    return (a || b) && (a || c) && (a || d);
    // return a || (b && c && d);
}
~~~
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJysU02PmzAU_DWPi0VkPyDAwYfdpBxbqf_A2A64MjiyzSq58Nsr54Nmpa56qYTEaPAMb4aHCMEMs9YcqneojplY4ug8l6OXo88HE8elz3qnrnxdVwn4ni56BPrWO2fJCbC5AQF4IDfUb0huSAG2BOqHkhBCvI6LnwlgIwjgHnCfhOnQAerDJ15-wSdTKF48ATvA7mm9nUsjPvXyCT6JoT6-ZBr-S6b7a-6Ztjk2Xn7B_zvT1kO_9fPXQrZM67pmiheqLVqRac5qZC1r6oJlIz8JpfeMMiUqVtZN1eiK0QI1E0Ur65PODEeKJa2xYmVZFWzHGlT7gvZVU7eqVBRKqidh7M7aj2nn_JCZEBbNGaVVwzIrem3DbbkQpRXzkEejroCYls3zpMr7ZQhQUmtCDH98oon2tpYvsupIvl2inhXxWijRG2viNQ9mOltzuubpu2gx5_py9iQ6oi_RCxmJdNPkZhKWPj3RIRg3B3LybiJv34-A3Y-fRI7CzCFbvOVjjOcAxdu9-_s_sJNuAuzSdI9bfvbul5YRsLtFDoDdI_UHx98BAAD__8w28J4">