diff --git a/parallel_hashmap/phmap.h b/parallel_hashmap/phmap.h index 3bc8706..3d11e0e 100644 --- a/parallel_hashmap/phmap.h +++ b/parallel_hashmap/phmap.h @@ -3322,7 +3322,7 @@ public: template void for_each_m(F&& fCallback) { for (auto& inner : sets_) { - typename Lockable::UniqueLock m(const_cast(inner)); + typename Lockable::UniqueLock m(inner); std::for_each(inner.set_.begin(), inner.set_.end(), fCallback); } } @@ -3344,7 +3344,7 @@ public: std::for_each( std::forward(policy), sets_.begin(), sets_.end(), [&](auto& inner) { - typename Lockable::UniqueLock m(const_cast(inner)); + typename Lockable::UniqueLock m(inner); std::for_each(inner.set_.begin(), inner.set_.end(), fCallback); } ); @@ -3365,10 +3365,10 @@ public: } template - void with_submap_m(size_t idx, F&& fCallback) const { + void with_submap_m(size_t idx, F&& fCallback) { Inner& inner = sets_[idx]; auto& set = inner.set_; - typename Lockable::UniqueLock m(const_cast(inner)); + typename Lockable::UniqueLock m(inner); fCallback(set); }