View | Details | Raw Unified | Return to bug 274740
Collapse All | Expand All

(-)b/www/qt5-webengine/files/patch-src_3rdparty_chromium_third__party_perfetto_include_perfetto_ext_base_circular__queue.h (+35 lines)
Added Link Here
1
--- src/3rdparty/chromium/third_party/perfetto/include/perfetto/ext/base/circular_queue.h.orig	2023-07-14 13:25:01 UTC
2
+++ src/3rdparty/chromium/third_party/perfetto/include/perfetto/ext/base/circular_queue.h
3
@@ -67,25 +67,21 @@ class CircularQueue {
4
       ignore_result(generation);
5
     }
6
 
7
-    T* operator->() {
8
+    Iterator(const Iterator&) noexcept = default;
9
+    Iterator& operator=(const Iterator&) noexcept = default;
10
+    Iterator(Iterator&&) noexcept = default;
11
+    Iterator& operator=(Iterator&&) noexcept = default;
12
+
13
+    T* operator->() const {
14
 #if PERFETTO_DCHECK_IS_ON()
15
       PERFETTO_DCHECK(generation_ == queue_->generation());
16
 #endif
17
       return queue_->Get(pos_);
18
     }
19
 
20
-    const T* operator->() const {
21
-      return const_cast<CircularQueue<T>::Iterator*>(this)->operator->();
22
-    }
23
+    T& operator*() const { return *(operator->()); }
24
 
25
-    T& operator*() { return *(operator->()); }
26
-    const T& operator*() const { return *(operator->()); }
27
-
28
     value_type& operator[](difference_type i) { return *(*this + i); }
29
-
30
-    const value_type& operator[](difference_type i) const {
31
-      return const_cast<CircularQueue<T>::Iterator&>(*this)[i];
32
-    }
33
 
34
     Iterator& operator++() {
35
       Add(1);

Return to bug 274740