<div dir="auto"><div>Hi!<div dir="auto"><br></div><div dir="auto">Thank you so much for this! I'm very grateful for all the reviews and feedback I've been given, makes my work so much more enjoyable.</div><div dir="auto"><br></div><div dir="auto">I'm aware of this issue, LLVM/Clang is littered with these constructs. I haven't tried to fix it just yet. Maybe add a heuristic that fields/types with "Kind" or "Tag" substring in them should be ignored?</div><div dir="auto"><br></div><div dir="auto">Best regards,</div><div dir="auto">Kristóf Umann</div><div dir="auto"><br></div><div dir="auto">(Btw my first name is Kristóf, it's quite confusing in hungarian)</div><br><div class="gmail_extra"><br><div class="gmail_quote">On 13 Aug 2018 20:15, "George Karpenkov" <<a href="mailto:ekarpenkov@apple.com">ekarpenkov@apple.com</a>> wrote:<br type="attribution"><blockquote class="quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br>
<br>
I have recently evaluated the  (relatively recently developed, available with -Xclang -analyzer-checker=alpha.<wbr>cplusplus.UninitializedObject)<br>
UninitializedObjectChecker, which warns after the constructor call if any of the fields were left uninitialized.<br>
<br>
Good news: I have found a few actual bugs<br>
Bad news: Those bugs were hidden under hundreds of other reports<br>
<br>
Most of the false alarms come from a case where a class is actually used as a union,<br>
and a field is used to differentiate between those types.<br>
Then unused types are simply left uninitialized.<br>
Conceptually, this is not a correct design, but nevertheless, it is rather ubiquitous.<br>
<br>
I have no idea whether we can work around this case, @Umann, any ideas there?<br>
<font color="#888888"><br>
George<br>
</font></blockquote></div><br></div></div></div>