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

    <tr>
        <th>Summary</th>
        <td>
            extend `-Wnonnull` diagnostics for `returns_nonnull` function attribute
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            enhancement,
            clang:diagnostics
      </td>
    </tr>

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

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

<pre>
    ```cpp
static char* cb()
{
    return nullptr;
}

[[gnu::returns_nonnull]] static char* f()
{
    return cb();
}

int main()
{
 f();
}
```
https://godbolt.org/z/d9dz8dxE9
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyEkcuO2zoMhp-G3ggTyPR9oUVyfPwKXRa62VahSIFET6fz9IXHSVsEHRQwLAoU_4_kL3N2S7BWQHOBZizkRmtMYnbJfpevtlDR_BDQ8uPTtxvwEfg5kySnmV5lAjwzrQB7wOFIQnc5AsYYS5a2FFjYvL9RguryeDPeg-O_0y9L2KA6Q3U-ivLXEMNeCM0IzcieoPO_mL-6-gTqArGrdOHvOvOnxY9tHNeV6Jb3tnECnJZoVPR0imkBnN4BJzOY9968_T8URlRmqAZZWFF22PK66_q2WIU0M2961RjDq7ZRg5aqs7prlJ6NxtoUTiDHmg9lyYe64u2pr7tybusStemboZ-h5vYqnT95_3rd2YXLebOi5H3Z1YWXyvr8YTGiDasM2l5tIEAE_A8QtZdhgepsnFxCzOR03nPNWCSxS76obclQc-8y5d8QcuStsG9kg2HQ8pcvD8Nazv7QYnNMe_7Z1pazeQuaXAxMEiWnNrLFlrx4WqqjdVMnHa-A006_Hy-3FL9ZTYDTx7wZcLqP_CrwZwAAAP__R0jXog">