1 // RUN: %clang_cc1 -triple x86_64-windows-gnu -fdeclspec -emit-llvm -o - %s | FileCheck %s 2 // RUN: %clang_cc1 -triple x86_64-windows-itanium -fdeclspec -emit-llvm -o - %s | FileCheck %s 3 4 struct __declspec(dllexport) A { 5 virtual void m(); 6 }; 7 struct __declspec(dllexport) B { 8 virtual void m(); 9 }; 10 struct __declspec(dllexport) C : A, B { 11 virtual void m(); 12 }; 13 void C::m() {} 14 // CHECK: define dllexport void @_ZThn8_N1C1mEv 15 16 struct Base { 17 virtual void m(); 18 }; 19 struct __declspec(dllexport) Derived : virtual Base { 20 virtual void m(); 21 }; 22 void Derived::m() {} 23 // CHECK: define dllexport void @_ZTv0_n24_N7Derived1mEv 24