diff options
Diffstat (limited to 'clang/test/CodeGenCXX/vtable-linkage.cpp')
-rw-r--r-- | clang/test/CodeGenCXX/vtable-linkage.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/clang/test/CodeGenCXX/vtable-linkage.cpp b/clang/test/CodeGenCXX/vtable-linkage.cpp index 39435a3c7fd..4eae3175a07 100644 --- a/clang/test/CodeGenCXX/vtable-linkage.cpp +++ b/clang/test/CodeGenCXX/vtable-linkage.cpp @@ -15,10 +15,20 @@ struct B { B::B() { } +struct C { + C(); + virtual void f() { } +}; + +C::C() { } + // B has a key function that is not defined in this translation unit so its vtable // has external linkage. // CHECK: @_ZTV1B = external constant +// C has no key function, so its vtable should have weak_odr linkage. +// CHECK: @_ZTV1C = weak_odr constant + // The A vtable should have internal linkage since it is inside an anonymous // namespace. // CHECK: @_ZTVN12_GLOBAL__N_11AE = internal constant |