gfe-relnote: n/a, fix some compiler errors in QUICHE. Reported in: https://github.com/envoyproxy/envoy/issues/10422 of -Wsign-compare under GCC. https://github.com/envoyproxy/envoy/issues/10767 of missing copy assignment under clang10. PiperOrigin-RevId: 309489267 Change-Id: I69cb5ed3a6b1bd447da44bb241c3d81bf73865ab
diff --git a/quic/core/quic_circular_deque.h b/quic/core/quic_circular_deque.h index 15b5cb6..1949d85 100644 --- a/quic/core/quic_circular_deque.h +++ b/quic/core/quic_circular_deque.h
@@ -63,6 +63,16 @@ const basic_iterator<value_type>& it) // NOLINT(runtime/explicit) : deque_(it.deque_), index_(it.index_) {} + // A copy assignment if Pointee is T. + // A assignment from iterator to const_iterator if Pointee is const T. + basic_iterator& operator=(const basic_iterator<value_type>& it) { + if (this != &it) { + deque_ = it.deque_; + index_ = it.index_; + } + return *this; + } + reference operator*() const { return *deque_->index_to_address(index_); } pointer operator->() const { return deque_->index_to_address(index_); } reference operator[](difference_type i) { return *(*this + i); }
diff --git a/quic/core/quic_framer.cc b/quic/core/quic_framer.cc index 7bf49ab..30a3742 100644 --- a/quic/core/quic_framer.cc +++ b/quic/core/quic_framer.cc
@@ -5415,7 +5415,7 @@ const uint64_t ack_range = iter->Length() - 1; if (writer->remaining() < ecn_size || - writer->remaining() - ecn_size < + static_cast<size_t>(writer->remaining() - ecn_size) < QuicDataWriter::GetVarInt62Len(gap) + QuicDataWriter::GetVarInt62Len(ack_range)) { // ACK range does not fit, truncate it.