[PATCH] D22034: [MSVC][DLL] use local vftable mangling only exported classes with virtual destructor
Dmitry Polukhin via cfe-commits
cfe-commits at lists.llvm.org
Wed Jul 6 11:25:01 PDT 2016
DmitryPolukhin added a comment.
In http://reviews.llvm.org/D22034#475551, @majnemer wrote:
> In http://reviews.llvm.org/D22034#475540, @DmitryPolukhin wrote:
>
> > Here is B::foo is not exported but required to build vftable for D.
>
>
> What happens if D also had a virtual destructor?
It seems that in this case MSVC never inline x-tors so there is no problem with using local vftable. I don't propose to do the same inline decisions like MSVC does so Clang may need/use different set of exported members and MSVC depending on optimization levels and other things may change these sets. But it seems that never use exported vftable is not aligned with ABI. MSVC seems to be very consistent about uses exported vftable when it is possible.
http://reviews.llvm.org/D22034
More information about the cfe-commits
mailing list