]> granicus.if.org Git - clang/commit
[MinGW] Produce a vtable and RTTI for dllexported classes without a key function
authorMartin Storsjo <martin@martin.st>
Sat, 15 Dec 2018 08:08:11 +0000 (08:08 +0000)
committerMartin Storsjo <martin@martin.st>
Sat, 15 Dec 2018 08:08:11 +0000 (08:08 +0000)
commit58231a6ef9898e7dd5a147da579f1d05304f4334
tree4e95430677e3cf523dff21ccaf86452e6e4f30cf
parentfdb0118eb0129ef4f9907ac91f853df5db12ac1a
[MinGW] Produce a vtable and RTTI for dllexported classes without a key function

This matches what GCC does in these situations.

This fixes compiling Qt in debug mode. In release mode, references to
the vtable of this particular class ends up optimized away, but in debug
mode, the compiler creates references to the vtable, which is expected
to be dllexported from a different DLL. Make sure the dllexported
version actually ends up emitted.

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

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@349256 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Sema/SemaDeclCXX.cpp
test/CodeGenCXX/dllexport-missing-key.cpp [new file with mode: 0644]