test case for poisoning trivial members
authorNaomi Musgrave <nmusgrave@google.com>
Mon, 10 Aug 2015 22:39:09 +0000 (22:39 +0000)
committerNaomi Musgrave <nmusgrave@google.com>
Mon, 10 Aug 2015 22:39:09 +0000 (22:39 +0000)
commit8759aa3db1beb4be3f5ccabe3a8f0b3a3cd6a8c6
tree59432dfb4fdad31a9403d830102c780eaaa1afe9
parent4a6422562d797fd2d860800992620a4a16021872
test case for poisoning trivial members

Summary:
A virtual base class and derived class should only poison their
respective members upon destruction. In particular, trivial members should
be poisoned directly, non-trivial members should be poisoned by their
respective destructors, and references to non-trivial members should be
poisoned.

Reviewers: eugenis, kcc

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

Test case avoids casting to access members

Run configurations to reflect expected runtime failure on assertions.

Simplified access to internal members.

Updated internal member structure of base.

Revised assert in main to verify successful poisoning after dtor.

Verify address of pointer is poisoned.

Fixed assert err.

Cleaned up test by removing extraneous prints, asserts.

llvm-svn: 244521
compiler-rt/test/msan/dtor-base-access.cc [new file with mode: 0644]