<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Wed, Mar 26, 2014 at 1:30 AM, Timur Iskhodzhanov <span dir="ltr"><<a href="mailto:timurrrr@google.com" target="_blank">timurrrr@google.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">2014-03-25 22:33 GMT+04:00 Reid Kleckner <span dir="ltr"><<a href="mailto:reid@kleckner.net" target="_blank">reid@kleckner.net</a>></span>:<div class="">
<br>

<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div style="overflow:hidden">--- cfe/trunk/lib/AST/VTableBuilder.cpp (original)<br>



+++ cfe/trunk/lib/AST/VTableBuilder.cpp Tue Mar 25 13:33:27 2014<br>
@@ -3210,6 +3210,8 @@ void MicrosoftVTableContext::computeVTab<br>
     // morally virtual bases.<br>
     for (const auto &I : Base->vbases())<br>
       <span>VBasesSeen</span>.insert(I.getType()->getAsCXXRecordDecl());<br>
+    if (I.isVirtual())<br>
+      <span>VBasesSeen</span>.insert(Base);<br>
   }</div></blockquote></div></div><br>Wow, that revealed that we have a variable name shadowing going on here!</div><div class="gmail_extra">Fixed in r204787.</div></div></blockquote><div><br></div><div>Yes, when using the new for each loop syntax, I really prefer using meaningful names instead of I.  I think we've only been using I for iterators and indices because they're this cruddy little implementation detail that we'd rather skip over and forget about.  :)</div>
<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra">I also kinda think the if() is more logical/readable to go before for().</div>


<div class="gmail_extra">WDYT?</div></div></blockquote><div><br></div><div>Sure.</div></div></div></div>