]> granicus.if.org Git - clang/commit
CGDebugInfo: Use DIBuilder API for self-referencing DICompositeTypes
authorDuncan P. N. Exon Smith <dexonsmith@apple.com>
Thu, 18 Dec 2014 00:48:56 +0000 (00:48 +0000)
committerDuncan P. N. Exon Smith <dexonsmith@apple.com>
Thu, 18 Dec 2014 00:48:56 +0000 (00:48 +0000)
commit8422f691261bc6e04a4e15ea3b4589e79154a08f
tree093ae1b3ebc950d62d66ce231b336afd77e605a6
parent914c0b56cc898980619b20ca38e324c31c7f30a9
CGDebugInfo: Use DIBuilder API for self-referencing DICompositeTypes

Use new `DIBuilder` API from LLVM r224482 to mutate `DICompositeType`s,
rather than changing them directly.  This allows `DIBuilder` to track
otherwise orphaned cycles when `CollectContainingType()` creates a
self-reference.

Fixes PR21941.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@224483 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/CGDebugInfo.cpp
test/CodeGenCXX/vtable-holder-self-reference.cpp [new file with mode: 0644]