]> granicus.if.org Git - clang/commit
Don't try to mark virtual members referenced for classes where the key function
authorAnders Carlsson <andersca@mac.com>
Thu, 3 Feb 2011 02:08:44 +0000 (02:08 +0000)
committerAnders Carlsson <andersca@mac.com>
Thu, 3 Feb 2011 02:08:44 +0000 (02:08 +0000)
commitaedd9d5ad3cc776fd61457050bcd54cac4c5ea66
treee87d32a8c47c8825b7774c82088568999cb01285
parentb51eee43676c2f4b7c4e1fa1648b438051b2b098
Don't try to mark virtual members referenced for classes where the key function
is not defined in the current translation unit. Doing so lead to compile errors
such as PR9114.

Instead, when CodeGen is building the vtable, don't try to emit a definition
for functions that aren't marked used in the current translation unit.
Fixes PR9114.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@124768 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/CGCXX.cpp
lib/CodeGen/CGVTables.cpp
lib/CodeGen/CodeGenModule.cpp
lib/CodeGen/CodeGenModule.h
lib/Sema/SemaDeclCXX.cpp
test/CodeGenCXX/vtable-available-externally.cpp