-
- Downloads
PR32042: Create inlined debug info for EmitInlinedInheritingCXXConstructorCall.
When clang emits an inheriting C++ constructor it may inline code during the CodeGen phase. This patch ensures that any debug info in this inlined code gets a proper inlined location. Otherwise we can end up with invalid debug info metadata, since all inlined local variables and function arguments would be reparented into the call site. Analogous to ApplyInlineLocation this patch introduces a ApplyInlineDebugLocation scoped helper to facilitate entering an inlined scope and cleaning up afterwards. This fixes one of the issues discovered in PR32042. rdar://problem/30679307 git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@296388 91177308-0d34-0410-b5e6-96231b3b80d8
Showing
- lib/CodeGen/CGClass.cpp 3 additions, 1 deletionlib/CodeGen/CGClass.cpp
- lib/CodeGen/CGDebugInfo.cpp 95 additions, 23 deletionslib/CodeGen/CGDebugInfo.cpp
- lib/CodeGen/CGDebugInfo.h 41 additions, 3 deletionslib/CodeGen/CGDebugInfo.h
- test/CodeGenCXX/debug-info-inheriting-constructor.cpp 25 additions, 0 deletionstest/CodeGenCXX/debug-info-inheriting-constructor.cpp
Loading
Please register or sign in to comment