[PATCH] D26559: Insert a type check before reading vtable.

Ivan Krasin via cfe-commits cfe-commits at lists.llvm.org
Mon Nov 14 14:25:17 PST 2016


krasin added inline comments.


================
Comment at: lib/CodeGen/CGExprCXX.cpp:93
+
+  EmitTypeCheck(CodeGenFunction::TCK_MemberCall,
+                CallLoc, This, C.getRecordType(DD->getParent()));
----------------
pcc wrote:
> pcc wrote:
> > Is it correct to emit a type check at this point? Looking at [0] it looks like this function is only called from the Microsoft C++ ABI after we have already resolved the virtual function pointer.
> > 
> > [0] http://llvm-cs.pcc.me.uk/tools/clang/lib/CodeGen/CGExprCXX.cpp/rEmitCXXDestructorCall
> What about this comment?
Sorry, I have missed the comment. I have added this check here to preserve the existing behavior.

>From what you describe, there could be a very similar issue related to the Microsoft C++ ABI to the one that I fix here. I am okay to file a bug or add a note about this, your choice.


https://reviews.llvm.org/D26559





More information about the cfe-commits mailing list