Status: New
Labels: Type-Defect Priority-Medium

New issue 407 by Build fail with clang on OS X

What steps will reproduce the problem?
1. Try to build on OS X with clang
2. Build fails

What is the expected output? What do you see instead?
libtool: compile: /usr/bin/clang++ -DHAVE_CONFIG_H -I. -I.. -D_THREAD_SAFE -Wall -Wwrite-strings -Woverloaded-virtual -Wno-sign-compare -mmacosx-version-min=10.5 -MT descriptor.lo -MD -MP -MF .deps/descriptor.Tpo -c google/protobuf/ -fno-common -DPIC -o .libs/descriptor.o In file included from google/protobuf/stubs/
In file included from ./google/protobuf/stubs/atomicops.h:173:
./google/protobuf/stubs/atomicops_internals_macosx.h:138:9: error: no matching function for call to 'OSAtomicCompareAndSwap64'
    if (OSAtomicCompareAndSwap64(old_value, new_value,
/usr/include/libkern/OSAtomic.h:476:9: note: candidate function not viable: no known conversion from 'Atomic64 *' (aka 'long *') to 'volatile int64_t *' (aka 'volatile long long *') for 3rd argument; bool OSAtomicCompareAndSwap64( int64_t __oldValue, int64_t __newValue, volatile int64_t *__theValue );

and many more similar errors

What version of the product are you using? On what operating system?
Apple clang version 4.0 (tags/Apple/clang-421.0.57) (based on LLVM 3.1svn)
Target: x86_64-apple-darwin12.0.0
Thread model: posix

Please provide any additional information below.

It builds if I make this change:

Index: src/google/protobuf/stubs/atomicops.h
--- src/google/protobuf/stubs/atomicops.h       (revision 424)
+++ src/google/protobuf/stubs/atomicops.h       (working copy)
@@ -71,7 +71,7 @@
 typedef int64 Atomic64;
-typedef intptr_t Atomic64;
+typedef int64 Atomic64;

You received this message because you are subscribed to the Google Groups "Protocol 
Buffers" group.
To post to this group, send email to
To unsubscribe from this group, send email to
For more options, visit this group at

Reply via email to