meta-openembedded/meta-oe/recipes-extended/minifi-cpp/files/0001-Fix-the-constness-issues-around-autovector-iterator_.patch
Martin Jansa c572d66a69 minifi-cpp, mozjs-115, redis-7.2.1, pv: add missing Upstream-Status
Signed-off-by: Martin Jansa <martin.jansa@gmail.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
(cherry picked from commit 5733ddc8346d9dfd47abe773ea93aafb0f451ffa)
Signed-off-by: Armin Kuster <akuster808@gmail.com>
2023-10-04 07:52:48 -07:00

66 lines
1.9 KiB
Diff

From 787d5052a6034cc722b073c652cc610ae037f933 Mon Sep 17 00:00:00 2001
From: Levi Tamasi <ltamasi@fb.com>
Date: Fri, 22 Nov 2019 18:12:35 -0800
Subject: [PATCH 1/2] Fix the constness issues around
autovector::iterator_impl's dereference operators (#6057)
Summary:
As described in detail in issue https://github.com/facebook/rocksdb/issues/6048, iterators' dereference operators
(`*`, `->`, and `[]`) should return `pointer`s/`reference`s (as opposed to
`const_pointer`s/`const_reference`s) even if the iterator itself is `const`
to be in sync with the standard's iterator concept.
Pull Request resolved: https://github.com/facebook/rocksdb/pull/6057
Test Plan: make check
Differential Revision: D18623235
Pulled By: ltamasi
fbshipit-source-id: 04e82d73bc0c67fb0ded018383af8dfc332050cc
---
Upstream-Status: Pending
thirdparty/rocksdb/util/autovector.h | 15 ++++-----------
1 file changed, 4 insertions(+), 11 deletions(-)
diff --git a/thirdparty/rocksdb/util/autovector.h b/thirdparty/rocksdb/util/autovector.h
index b5c84712..6d337908 100644
--- a/thirdparty/rocksdb/util/autovector.h
+++ b/thirdparty/rocksdb/util/autovector.h
@@ -120,27 +120,20 @@ class autovector {
}
// -- Reference
- reference operator*() {
+ reference operator*() const {
assert(vect_->size() >= index_);
return (*vect_)[index_];
}
- const_reference operator*() const {
- assert(vect_->size() >= index_);
- return (*vect_)[index_];
- }
-
- pointer operator->() {
+ pointer operator->() const {
assert(vect_->size() >= index_);
return &(*vect_)[index_];
}
- const_pointer operator->() const {
- assert(vect_->size() >= index_);
- return &(*vect_)[index_];
+ reference operator[](difference_type len) const {
+ return *(*this + len);
}
-
// -- Logical Operators
bool operator==(const self_type& other) const {
assert(vect_ == other.vect_);
--
2.41.0