[lldb/StackFrameList] Convert assert to defensive check in SynthesizeTailCallFrames
In order to synthesize tail call frames, the stack frame list must not be empty (otherwise, there is no "previous" frame to infer a tail call from). This case is hard to hit. To trigger it, we must first fail to push `unwind_frame_sp` because we either fail to get its SymbolContext, or given its SymbolContext the GetParentOfInlineScope call fails. This causes m_concrete_frames_fetched to be incremented while m_frames remains empty. Then, the next frame in the stack may fail within SynthesizeTailCallFrames. This crash arose during a kernel debugging session. rdar://59147051
Loading
Please sign in to comment