]> granicus.if.org Git - clang/commit
Implementation and testing for poisoning vtable
authorNaomi Musgrave <nmusgrave@google.com>
Wed, 16 Sep 2015 00:38:22 +0000 (00:38 +0000)
committerNaomi Musgrave <nmusgrave@google.com>
Wed, 16 Sep 2015 00:38:22 +0000 (00:38 +0000)
commitde170619af325aae89f95762ac512feff798d396
treed81bd3c320813e815df6ab7057d520bf82d04b8f
parent45a70593b1a6ce551549ea0d6f3dc9babf4be9b9
Implementation and testing for poisoning vtable
ptr in dtor.

Summary:
After destruction, invocation of virtual functions prevented
by poisoning vtable pointer.

Reviewers: eugenis, kcc

Subscribers: cfe-commits

Differential Revision: http://reviews.llvm.org/D12712

Fixed testing callback emission order to account for vptr.
Poison vtable in either complete or base dtor, depending on
if virtual bases exist. If virtual bases exist, poison in
complete dtor. Otherwise, poison in base.
Remove commented-out block.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@247762 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/CGClass.cpp
test/CodeGenCXX/sanitize-dtor-derived-class.cpp
test/CodeGenCXX/sanitize-dtor-vtable.cpp [new file with mode: 0644]