Zero vptr in dtor for -fsanitize=vptr.
commitf1278899f0156de5cc8d450153ade046d189852d
authormarxin <marxin@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 15 Nov 2017 07:01:01 +0000 (15 07:01 +0000)
committermarxin <marxin@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 15 Nov 2017 07:01:01 +0000 (15 07:01 +0000)
treecf440ff8306354ca1233cc796105d1c100583a0d
parent0618a201f59699d48fd68edac10d9ad9da6b4c54
Zero vptr in dtor for -fsanitize=vptr.

2017-11-15  Martin Liska  <mliska@suse.cz>

* decl.c (begin_destructor_body): In case of VPTR sanitization
(with disabled recovery), zero vptr in order to catch virtual calls
after lifetime of an object.
2017-11-15  Martin Liska  <mliska@suse.cz>

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

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