PR c++/87095
commit57d80b90c00dd015eabf5243882db051048275d9
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 29 Aug 2018 21:43:18 +0000 (29 21:43 +0000)
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 29 Aug 2018 21:43:18 +0000 (29 21:43 +0000)
treee9969bd7b11fc9b19be570b837a4ec3185ec6f29
parent921675b5b69e67e799554b87e384935f55445951
PR c++/87095
* decl.c (begin_destructor_body): If current_class_type has
virtual bases and the primary base is nearly empty virtual base,
voidify clearing of vptr and make it conditional on in-charge
argument.

* g++.dg/ubsan/vptr-13.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@263967 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/cp/ChangeLog
gcc/cp/decl.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/ubsan/vptr-13.C [new file with mode: 0644]