]> granicus.if.org Git - clang/commit
Debug Info: Fix a problem that resulted in missing DW_AT_specifications
authorAdrian Prantl <aprantl@apple.com>
Thu, 9 May 2013 23:16:27 +0000 (23:16 +0000)
committerAdrian Prantl <aprantl@apple.com>
Thu, 9 May 2013 23:16:27 +0000 (23:16 +0000)
commit0a050f7d56039bab7556e08b359e06d329977b6b
tree6def5ef873c299c1349a03ee6d25d873b2b72be7
parent192b030c8a887aa34db56d709136e533a454b2f3
Debug Info: Fix a problem that resulted in missing DW_AT_specifications
for C++ constructors.

If the DIType for a class was generated by
CGDebugInfo::createContextChain(), the cache contains only a
limited DIType wihtout any declarations. Since EmitFunctionStart()
needs to find the canonical declaration for each method, we
construct the complete type before emitting any method.

rdar://problem/13116508

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181561 91177308-0d34-0410-b5e6-96231b3b80d8
lib/CodeGen/CodeGenModule.cpp
lib/CodeGen/CodeGenModule.h
test/CodeGenCXX/debug-info-decl-nested.cpp [new file with mode: 0644]