[llvm] [Minidump] Support multiple exceptions in a minidump (PR #107319)

Jacob Lalonde via llvm-commits llvm-commits at lists.llvm.org
Thu Sep 5 15:34:52 PDT 2024


================
@@ -216,8 +219,68 @@ class MinidumpFile : public Binary {
     bool IsEnd;
   };
 
+  class ExceptionStreamsIterator {
+  public:
+    static ExceptionStreamsIterator begin(ArrayRef<minidump::Directory> Streams,
+                                          const MinidumpFile *File) {
+      return ExceptionStreamsIterator(Streams, File);
+    }
+
+    static ExceptionStreamsIterator end() { return ExceptionStreamsIterator(); }
+
+    bool operator==(const ExceptionStreamsIterator &R) const {
+      return Streams.empty() && R.Streams.empty();
----------------
Jlalond wrote:

I replied on the Make_range comment as well, but I coudln't get the initializer list `{end(), end()}` to build. So I stuck with the behavior of the other iterators in the file, and compared by size.

https://github.com/llvm/llvm-project/pull/107319


More information about the llvm-commits mailing list