Should the unwinder fail when constructing the inner most frame, then the back-trace code aborts; instead the code should always construct a simple inner-most frame that returns the underlying tasks registers. As an alternative implementation: The simple inner most frame could be created without trying to create the corresponding cursor. Cursor construction being delayed until an unwind is requested, and if the unwind fails, construct/return an Error frame.