<html><head><meta http-equiv="Content-Type" content="text/html charset=iso-8859-1"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On Jun 25, 2012, at 16:27 , Nico Weber <<a href="mailto:thakis@chromium.org">thakis@chromium.org</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite">On Mon, Jun 25, 2012 at 3:49 PM, Jordan Rose <<a href="mailto:jordan_rose@apple.com">jordan_rose@apple.com</a>> wrote:<br><blockquote type="cite"><br>On Jun 25, 2012, at 14:43 , Nico Weber <<a href="mailto:thakis@chromium.org">thakis@chromium.org</a>> wrote:<br><br><blockquote type="cite">Full build of the 'chrome' target with this warning on my MBP: real   31m41.500s<br>Same clang binary at the same revision, without the warning: real     31m53.572s<br><br>So the compile-time impact of the warning is below noise I'd say.<br><br>Nico<br></blockquote><br>Did you remember to add a guard around the "work" part of CheckIdentityMemvarAssignment? Or were you still doing the work and just not emitting the warning?<br></blockquote><br>I uncommented the call to "CheckIdentityMemvarAssignment" (and clang<br>warned me that the static function CheckIdentityMemvarAssignment<br>wasn't used). With "same binary" I meant "built at the same revision"</blockquote><br></div><div>Okay, I see. I'm a little concerned along with Ted because copying over pieces of another struct does seem like something common enough to do, but I guess it's fine.</div><div><br></div><div>This probably won't catch "this->_a = _a", but maybe that's okay. It is a typo you might make in a setter, though.</div><div><br></div><div>BTW, this would be a good warning to have in Objective-C as well (<span style="font-family: Menlo; font-size: 11px; ">ObjCIvarRefExpr</span>). The equivalent example there would be "self->_a = _a".</div><div><br></div><div>Thanks for working on this. I think over all it is a good warning to have.</div><div><br></div><div>Jordan</div></body></html>