[PATCH] Get rid of VTableContext::ComputeMethodVTableIndices() and VTableContext::getNumVirtualFunctionPointers()

Timur Iskhodzhanov timurrrr at google.com
Tue May 14 03:33:18 PDT 2013



================
Comment at: lib/AST/VTableBuilder.cpp:1592
@@ +1591,3 @@
+        ++NextMI;
+        assert(NextMI == E && "The implicit virtual destructor "
+               "should be the last method in a class");
----------------
Timur Iskhodzhanov wrote:
> I'm not 100% about this one, so please check my reasoning below.
> 
> a) the VTableBuilder code has always assumed that the implicit virtual dtor is at the end of the RD->method_* list, but the assert just wasn't there.
> b) I //think// the implicit virtual dtor, if present, should always be at the end of the methods list, as one can only tell there is no explicit dtor after he/she has finished reading the whole record definition.
Yeah, it fails on

  test/CodeGenCXX/thunks-available-externally.cpp


http://llvm-reviews.chandlerc.com/D785



More information about the cfe-commits mailing list