DescriptionUpdate protobuf for 64-bit compatibility on Mac OS X.
The system's routines from <libkern/OSAtomic.h> use int64_t as their 64-bit
type. int64_t is a typedef for long long. Google's atomicops.h routines use
Atomic64 as their 64-bit type. Atomic64 is a typedef for intptr_t, which is
in turn a typedef for long. It isn't possible to cast from long* to long long*
with const_cast, reinterpret_cast is needed. This change fixes this problem
the same way Chrome fixed it in https://codereview.chromium.org/6091007 .
protobuf r423 renamed GOOGLE_PROTOBUF_HOST_ARCH_64_BIT to
GOOGLE_PROTOBUF_ARCH_64_BIT, but the change was not made in
atomicops_internals_atomicword_compat.h.
Patch Set 1 #
MessagesTotal messages: 4
|