<div dir="ltr"><div>Hello,</div><div><br></div><div>Using clang-tidy-12, I'm getting false warnings when using structured bindings. There can actually be a variety of issues, but here is a very small example I've narrowed it down to:</div><div><br></div><div>auto [ptr, num] = std::make_tuple(malloc(1), 1);<br>free(ptr);</div><div><br></div><div>For which I get the following warning:<br></div><br><div>/tmp/test.cpp:7:5: warning: Potential leak of memory pointed to by '._M_head_impl' [clang-analyzer-unix.Malloc]<br>    free(ptr);<br>    ^<br>/tmp/test.cpp:6:39: note: Memory is allocated<br>    auto [ptr, num] = std::make_tuple(malloc(1), 1);<br>                                      ^<br>/tmp/test.cpp:7:5: note: Potential leak of memory pointed to by '._M_head_impl'<br>    free(ptr);<br>    ^<br></div><div><br></div><div>Searching online, I saw that I'm not the first person to encounter such issues (<a href="https://stackoverflow.com/questions/62706928/clang-tidy-vs-structured-bindings">https://stackoverflow.com/questions/62706928/clang-tidy-vs-structured-bindings</a>) but I couldn't find any solution.</div><div><br></div><div>Is this a bug in clang-tidy or am I missing something? Is there anything I can do to solve this other than stopping using structured bindings?</div><div><br></div><div>Thanks,</div><div>Tamir<br></div></div>