<div dir="ltr">On Thu, Jun 6, 2013 at 9:00 PM, John McCall <span dir="ltr"><<a href="mailto:rjmccall@apple.com" target="_blank">rjmccall@apple.com</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote">
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">+typedef llvm::ArrayRef<const CXXRecordDecl *> ClassArrayRef;<br>
+<br>
<br>
Don't do this. It's really not saving you anything, and it makes the API<br>
randomly harder to understand.<br></blockquote><div><br></div><div style>I blame Timur. :)</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
--- lib/CodeGen/CGVTables.cpp<br>
+++ lib/CodeGen/CGVTables.cpp<br>
<br>
Is this benefitting from being in this file? I actually want to eliminate<br>
CGVTables in the long run and replace it with minimal-surface-area<br>
builder classes specific to, and invoked by, the ABI classes. If you<br>
can do something more along those lines, I'd be happier. Think<br>
smaller, more single-purpose implementation files, with CGM-level<br>
state kept in the ABI class.<br></blockquote><div><br></div><div style>So, something along the lines of CodeGen/MicrosoftVBTables.cpp?</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
I'm happy that you seem to have figured out the disambiguation logic.<br>
That part all looks fine, although I haven't really reviewed your<br>
algorithm.<br>
<span class="HOEnZb"><font color="#888888"><br>
John.<br>
</font></span></blockquote></div><br></div></div>