]> granicus.if.org Git - clang/commit
[MS ABI] Correctly mangling vbase destructors
authorDavid Majnemer <david.majnemer@gmail.com>
Tue, 14 Feb 2017 00:54:11 +0000 (00:54 +0000)
committerDavid Majnemer <david.majnemer@gmail.com>
Tue, 14 Feb 2017 00:54:11 +0000 (00:54 +0000)
commitcc8bc8ac38a541be2e25eefeaa7692b29879ecf3
tree0b7f716febbf627bcac88392f7de8c5cbcbffc43
parent5b38d7133e9cd36796e369aaa8f58b51dfe972d1
[MS ABI] Correctly mangling vbase destructors

They are a little bit of a special case in the mangling. They are always
mangled without taking into account their virtual-ness of the
destructor. They are also mangled to return void, unlike the actual
destructor.

This fixes PR31931.

Differential Revision: https://reviews.llvm.org/D29912

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@295010 91177308-0d34-0410-b5e6-96231b3b80d8
lib/AST/MicrosoftMangle.cpp
test/CodeGenCXX/debug-info-ms-dtor-thunks.cpp
test/CodeGenCXX/exceptions-cxx-new.cpp
test/CodeGenCXX/inheriting-constructor.cpp
test/CodeGenCXX/microsoft-abi-dynamic-cast.cpp
test/CodeGenCXX/microsoft-abi-structors.cpp
test/CodeGenCXX/microsoft-abi-throw.cpp
test/CodeGenCXX/microsoft-abi-virtual-inheritance.cpp
test/CodeGenCXX/regcall.cpp