krasin added inline comments.
================ Comment at: lib/CodeGen/CGExprCXX.cpp:93 + + EmitTypeCheck(CodeGenFunction::TCK_MemberCall, + CallLoc, This, C.getRecordType(DD->getParent())); ---------------- pcc wrote: > krasin wrote: > > 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. > Have you looked at how hard it would be to fix this? Done. Note: since I don't have an ability to test on Windows, this CL is now high-risk. If it breaks any Windows-specific tests, when submitted, I will revert the CL and undo the MSABI change. After all, the previous state was to keep things working as they were before. https://reviews.llvm.org/D26559 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits