From 341e5bcb45c9aeab3584d0aaa07a814282ebbefc Mon Sep 17 00:00:00 2001 From: Alexey Samsonov Date: Tue, 18 Sep 2012 07:23:54 +0000 Subject: [TSan] port all output tests to lit and move them to lit_tests directory. This makes 'make check-tsan' command test both unit and output TSan tests. Old custom makefiles for running TSan tests are still functional as well. llvm-svn: 164110 --- .../lib/tsan/lit_tests/virtual_inheritance_compile_bug.cc | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 compiler-rt/lib/tsan/lit_tests/virtual_inheritance_compile_bug.cc (limited to 'compiler-rt/lib/tsan/lit_tests/virtual_inheritance_compile_bug.cc') diff --git a/compiler-rt/lib/tsan/lit_tests/virtual_inheritance_compile_bug.cc b/compiler-rt/lib/tsan/lit_tests/virtual_inheritance_compile_bug.cc new file mode 100644 index 00000000000..2275b8b8d21 --- /dev/null +++ b/compiler-rt/lib/tsan/lit_tests/virtual_inheritance_compile_bug.cc @@ -0,0 +1,15 @@ +// Regression test for http://code.google.com/p/thread-sanitizer/issues/detail?id=3. +// The C++ variant is much more compact that the LLVM IR equivalent. + +// RUN: %clangxx_tsan -O1 %s -o %t && %t 2>&1 | FileCheck %s +#include +struct AAA { virtual long aaa () { return 0; } }; // NOLINT +struct BBB: virtual AAA { unsigned long bbb; }; // NOLINT +struct CCC: virtual AAA { }; +struct DDD: CCC, BBB { DDD(); }; // NOLINT +DDD::DDD() { } +int main() { + DDD d; + printf("OK\n"); +} +// CHECK: OK -- cgit v1.2.3