[codeview] Extend the heuristic for detecting classes imported from DLLs
authorReid Kleckner <rnk@google.com>
Fri, 9 Sep 2016 16:27:04 +0000 (16:27 +0000)
committerReid Kleckner <rnk@google.com>
Fri, 9 Sep 2016 16:27:04 +0000 (16:27 +0000)
commitc9404e103935abbada1a13fc0861247051538c23
treeeb7a290d8f6633155762252f111b9778ab3eafe0
parent5aea5653b39bb54c675a8b6729171f2069ed4238
[codeview] Extend the heuristic for detecting classes imported from DLLs

If a dynamic class contains a dllimport method, then assume the class
may not be constructed in this DLL, and therefore the vtable will live
in a different PDB.

This heuristic is still incomplete, and will miss things like abstract
base classes that are only constructed on one side of the DLL interface.
That said, this heuristic does detect some cases that are currently
problematic, and may be useful to other projects that don't use many
DLLs.

llvm-svn: 281053
clang/lib/CodeGen/CGDebugInfo.cpp
clang/test/CodeGenCXX/debug-info-dllimport-base-class.cpp