avogelsgesang added a comment. > I don't know much about coroutines, but it seems like your goal is to format > them like a linked list
Yes, and no. Coroutines are a compiler-provided type-erasure mechanism which (among other things) erase the type of the contained promise. One common use case is that the library types (`std::generator`, the upcoming `std::lazy`, user-defined types, ...) store a "next"/"continuation" pointer inside that promise. > so maybe the (synthetic) object which represents the "next" coroutine > (promise?) in the list should be of a pointer type, forcing the lldb (and > user) to do an actual dereference operation before viewing the next element. > Maybe that could be achieved by changing the type of > __promise.continuation.promise (I'm using the example from your patch > description) from std::...::promise_type to std::...::promise_type * ? Good idea. That should work! I will prepare a separate review which uses this approach. I would prefer to still first land this patch, then D132735 <https://reviews.llvm.org/D132735>, because I want to reuse helper functions from those two commits for making the proposed change Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D132624/new/ https://reviews.llvm.org/D132624 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits