diff options
author | Dimitry Andric <dim@FreeBSD.org> | 2015-05-27 18:47:56 +0000 |
---|---|---|
committer | Dimitry Andric <dim@FreeBSD.org> | 2015-05-27 18:47:56 +0000 |
commit | 5e20cdd81c44a443562a09007668ffdf76c455af (patch) | |
tree | dbbd4047878da71c1a706e26ce05b4e7791b14cc /test/CodeGenCXX/ms-novtable.cpp | |
parent | d5f23b0b7528b5c3caed1ba14f897cc4aaa9e3c3 (diff) |
Notes
Diffstat (limited to 'test/CodeGenCXX/ms-novtable.cpp')
-rw-r--r-- | test/CodeGenCXX/ms-novtable.cpp | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/test/CodeGenCXX/ms-novtable.cpp b/test/CodeGenCXX/ms-novtable.cpp new file mode 100644 index 0000000000000..8d54878d23f99 --- /dev/null +++ b/test/CodeGenCXX/ms-novtable.cpp @@ -0,0 +1,21 @@ +// RUN: %clang_cc1 -triple i386-pc-win32 %s -emit-llvm -fms-extensions -fms-compatibility -fno-rtti -o - | FileCheck %s + +// CHECK-NOT: @"\01??_7C@@6B@" + +// CHECK-DAG: @"\01??_7A2@@6B@" + +// CHECK-DAG: @"\01??_7B2@@6B@" + +// CHECK-NOT: @"\01??_7B1@@6B@" + +// CHECK-NOT: @"\01??_7A1@@6B@" + +struct __declspec(novtable) A1 { + virtual void a(); +} a1; +struct A2 { + virtual void a(); +}; +struct __declspec(novtable) B1 : virtual A1 {} b1; +struct B2 : virtual A1 {} b2; +struct __declspec(novtable) C : virtual A2 {} c; |