From a60bf0bb374f4b57c0f00cd862e2861e1f381ed0 Mon Sep 17 00:00:00 2001 From: Uladzislau Paulovich Date: Fri, 16 Jun 2017 02:27:40 -0700 Subject: [PATCH 1/1] Fix class member shadowing in folly::ProducerConsumerQueue Summary: Previous version failed to compile with "-Werror=shadow" flag, this commit fixes the problem. Reviewed By: WillerZ Differential Revision: D5255814 fbshipit-source-id: c1252474ed5415b47759022bcbabc78c1639e10a --- folly/ProducerConsumerQueue.h | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/folly/ProducerConsumerQueue.h b/folly/ProducerConsumerQueue.h index 9ebe65ac..d0bf3ec8 100644 --- a/folly/ProducerConsumerQueue.h +++ b/folly/ProducerConsumerQueue.h @@ -64,12 +64,12 @@ struct ProducerConsumerQueue { // (No real synchronization needed at destructor time: only one // thread can be doing this.) if (!std::is_trivially_destructible::value) { - size_t read = readIndex_; - size_t end = writeIndex_; - while (read != end) { - records_[read].~T(); - if (++read == size_) { - read = 0; + size_t readIndex = readIndex_; + size_t endIndex = writeIndex_; + while (readIndex != endIndex) { + records_[readIndex].~T(); + if (++readIndex == size_) { + readIndex = 0; } } } -- 2.34.1