Adjust a literal in AtomicHashMap.h to be correctly sized
authorOrvid King <blah38621@gmail.com>
Mon, 27 Jul 2015 22:09:31 +0000 (15:09 -0700)
committerfacebook-github-bot-4 <folly-bot@fb.com>
Mon, 27 Jul 2015 23:22:23 +0000 (16:22 -0700)
Summary: Noticed because of a warning emitted by MSVC, this fixees the literal for `kLockedPtr_` to correctly be 64-bits under MSVC, rather than 32-bit.
Closes #245

Reviewed By: @yfeldblum

Differential Revision: D2282806

Pulled By: @sgolemon

folly/AtomicHashMap.h

index 5b58feea1fccd1786a020583fd88a3d98e0c451b..52d2fb0d86f1ab9da1e0a13c89edae9b2021aaa1 100644 (file)
@@ -385,7 +385,7 @@ class AtomicHashMap : boost::noncopyable {
   static const uint32_t  kSubMapIndexShift_  = 32 - kNumSubMapBits_ - 1;
   static const uint32_t  kSubMapIndexMask_   = (1 << kSubMapIndexShift_) - 1;
   static const uint32_t  kNumSubMaps_        = 1 << kNumSubMapBits_;
-  static const uintptr_t kLockedPtr_         = 0x88ul << 48; // invalid pointer
+  static const uintptr_t kLockedPtr_         = 0x88ULL << 48; // invalid pointer
 
   struct SimpleRetT { uint32_t i; size_t j; bool success;
     SimpleRetT(uint32_t ii, size_t jj, bool s) : i(ii), j(jj), success(s) {}