<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/132272>132272</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[clang-include-cleaner] unnecessary include suggested when including fully contained header
</td>
</tr>
<tr>
<th>Labels</th>
<td>
false-positive,
clang-include-cleaner
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
firewave
</td>
</tr>
</table>
<pre>
test.h
```cpp
#include <string>
struct S
{
const std::string& str() const;
std::string mStr;
};
```
test.cpp
```cpp
#include "test.h"
const std::string& S::str() const
{
return mStr;
}
```
```
$ clang-include-cleaner --print=changes test.cpp
[...]
+ <string>
```
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJx0kl2OqzoMx1cTXiJQ6iRQHnhop7cbmBUkwYVcpQHFoaPZ_REtPWc-JSTiOLZ__tuGyA8RsWP6yPSpMEsep9RdfMI3c8PCTv17l5FyNTJxYLV4fG6eVxOkjy4sPXImXygnHwcm_1s94kA5LS7z19VqjkwcOOfcTZEyp9wzeWDysIVAzSknBnsG7eMJk8-IL2_59TWnh5c1p-3wpHoUvtNugL_zAmxdATzCfkV7_XvxifBjWwnzkuIXtm9gn0xQ3AUTh3IjKl1AEzHxspyTj5nJkxtNHJD4x4b0saoqpu_Z4fhN9meFou9k38rWFNjtGgWqrRWIYuy01aqWSluUbeN2yrS46y814r4WVltX-A4EaCFB7Paq1m1l1V5YA0r2VjXWCaYEXo0PVQi3azWlofBEC3Y7CdBAEYzFQPd1AriYQFjOE_nsb7hKDS8M4MfGV68-Falb85Z2GYgpETxl-lcp-xzuq_pzBn3iS4zokMikd_6cNS3DgJSx528jxu163aXLEsL7Os5sfMSej2h6TMWSQjfmPNM6eDgzOA8-j4ut3HRlcF5ptl85p-l_dJnB-S4CMThvOtw6-BMAAP__A5kDYA">