From: Timur Iskhodzhanov Date: Thu, 12 Dec 2013 11:07:03 +0000 (+0000) Subject: Add a test case for the PR17748 crash X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=f3da4d3615259a042f697f917454c2f3e0495cc4;p=clang Add a test case for the PR17748 crash git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@197143 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/test/CodeGenCXX/microsoft-abi-vtables-virtual-inheritance.cpp b/test/CodeGenCXX/microsoft-abi-vtables-virtual-inheritance.cpp index b58a0b14cd..7ef9a7aff4 100644 --- a/test/CodeGenCXX/microsoft-abi-vtables-virtual-inheritance.cpp +++ b/test/CodeGenCXX/microsoft-abi-vtables-virtual-inheritance.cpp @@ -430,6 +430,26 @@ void X::f() {} X x; } +namespace Test11 { +struct X : virtual A {}; +struct Y { virtual void g(); }; + +struct Z : virtual X, Y { + // MANGLING-DAG: @"\01??_7Z@Test11@@6BY@1@@" + + // FIXME this one is wrong: + // MANGLING-DAG-SHOULD-BE: @"\01??_7Z@Test11@@6BX@1@@" + // INCORRECT MANGLING-DAG: @"\01??_7Z@Test11@@6BA@@@" +}; + +Z z; + +struct W : virtual X, A {}; + +// PR17748 FIXME this one hits UNREACHABLE: +// W w; +} + namespace vdtors { struct X { virtual ~X();