mirror of
https://github.com/Gericom/teak-llvm.git
synced 2025-06-20 03:55:48 -04:00

We must only set the construction vtable visibility after we create the vtable initializer, otherwise the global value will be treated as declaration rather than definition and the visibility won't be set. Differential Revision: https://reviews.llvm.org/D58010 llvm-svn: 353742
17 lines
432 B
C++
17 lines
432 B
C++
// RUN: %clang_cc1 -triple x86_64-linux-unknown -fvisibility hidden -emit-llvm %s -o - | FileCheck %s
|
|
|
|
struct Base {};
|
|
|
|
class Parent1 : virtual public Base {};
|
|
|
|
class Parent2 : virtual public Base {};
|
|
|
|
class Child : public Parent1, public Parent2 {};
|
|
|
|
void test() {
|
|
Child x;
|
|
}
|
|
|
|
// CHECK: @_ZTC5Child0_7Parent1 = linkonce_odr hidden unnamed_addr constant
|
|
// CHECK: @_ZTC5Child8_7Parent2 = linkonce_odr hidden unnamed_addr constant
|