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

    <tr>
        <th>Summary</th>
        <td>
            -Wconditional-uninitialized false positive
        </td>
    </tr>

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

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

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

<pre>
    broken out of qt's `QColorTransferFunction`:

```
struct foo {

    void bar()
    {
        float a;
        if (m_b)
            a = std::pow(1.0f / m_a, 1.f);
        if (m_b)
 std::isfinite(a);
        if (m_b && std::isfinite(a))
 return;
    }

    float m_a;
    bool m_b;
};
```

`-Wconditional-uninitialized` warns about `a` not being initialized in `std::isfinite(a)`, but in both cases the variable is initialized
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyMU81u2zwQfJrVZWGDpP4POiQxdP-AD-gxWIqUxZYiXZJy0D59QTdx7AAJSgj6Gc0MRkMtxWiOTusB6keoDwVtafFhSGaVVk_LSs4V0qtfgwz-h3bot4R-xp8JRBsRGvbfk7c-_B_IxVmHcXNTMt5Bw6B8AHYA9nZu2OtxeYwpbFPC2XuE9vGWiIh49kahpACiA9G_41cqvq7ZekpIUH7AzYwguvVZ3snfFiGUB4xJ5Yzlw8m_gOj4nmXRiOszgXhCvp-z-B-cr0YmzsaZpEF09KUWQTQgms-VV--g0xbcnRO0h499_a0hB78lSu8t5qRvYFZe7-_34wruvk3eKZM3kexuczmWIWt-awUNwxcKLiLJ_B9AwyhjzieU2rgj3pDRuEz49AsblkuWW8pE6dOCE0UdMS0azxQMSavRxFvLQg2l6sueCj3wlte8LkXPi2XQM3VVXVVcMK7mpu94VbdtyRXX1aSkLswgmKhYzTrWio7zPVMVqbmnruadpopDxfRKxu6tPa97H46FiXHTQ8-rsissSW3jZUSEcPoFLy9BiDwxYciandyOESpmTUzx3SWZZPXwRac4k40aTz6aZM662IIdlpROMbcmRhDj0aRlk_vJryDGbPx62Z2C_66nBGK8xIkgxkvcPwEAAP__scoaew">