It doesn't work. I got many unknown type name _Atomic_word error.
./../Parallel.hh:70:38: error: unknown type name '_Atomic_word' inline int atomic_fetch_add(volatile _Atomic_word & counter, int increment) ^ ./../Parallel.hh:74:33: error: unknown type name '_Atomic_word' inline int atomic_read(volatile _Atomic_word & counter) ^ In file included from ./../Parallel.hh:78:33: error: unknown type name '_Atomic_word' inline void atomic_add(volatile _Atomic_word & counter, int increment) ^ > On Jan 13, 2017, at 5:52 AM, Juergen Sauermann > <juergen.sauerm...@t-online.de> wrote: > > Hi Xiao-Yong, > > thanks, fixed in SVN 849. > > /// Jürgen > > > On 01/12/2017 11:30 PM, Xiao-Yong Jin wrote: >> OSAtomicAdd32Barrier is deprecated in macOS 10.12 >> >> >> /usr/bin/clang++ -DHAVE_CONFIG_H -I. -I.. -Werror -Wall -I sql >> -I/opt/local//include -march=native -O3 -pipe -MT apl-Assert.o -MD -MP >> -MF .deps/apl-Assert.Tpo -c -o apl-Assert.o `test -f 'Assert.cc' || echo >> './'`Assert.cc >> In file included from ArrayIterator.cc:21: >> In file included from ./ArrayIterator.hh:25: >> In file included from ./Value.icc:24: >> In file included from ./Value.hh:36: >> ./Parallel.hh:99:13: error: 'OSAtomicAdd32Barrier' is deprecated: first >> deprecated in macOS 10.12 - Use std::atomic_fetch_add() from <atomic> >> instead [-Werror,-Wdeprecated-declarations] >> { return OSAtomicAdd32Barrier(increment, &counter) - increment; } >> ^ >> /usr/include/libkern/OSAtomicDeprecated.h:161:9: note: >> 'OSAtomicAdd32Barrier' has been explicitly marked deprecated here >> int32_t OSAtomicAdd32Barrier( int32_t __theAmount, volatile int32_t >> *__theValue ); >> ^ >> In file included from ArrayIterator.cc:21: >> In file included from ./ArrayIterator.hh:25: >> In file included from ./Value.icc:24: >> In file included from ./Value.hh:36: >> ./Parallel.hh:103:13: error: 'OSAtomicAdd32Barrier' is deprecated: first >> deprecated in macOS 10.12 - Use std::atomic_fetch_add() from <atomic> >> instead [-Werror,-Wdeprecated-declarations] >> { return OSAtomicAdd32Barrier(0, &counter); } >> ^ >> /usr/include/libkern/OSAtomicDeprecated.h:161:9: note: >> 'OSAtomicAdd32Barrier' has been explicitly marked deprecated here >> int32_t OSAtomicAdd32Barrier( int32_t __theAmount, volatile int32_t >> *__theValue ); >> ^ >> In file included from ArrayIterator.cc:21: >> In file included from ./ArrayIterator.hh:25: >> In file included from ./Value.icc:24: >> In file included from ./Value.hh:36: >> ./Parallel.hh:107:6: error: 'OSAtomicAdd32Barrier' is deprecated: first >> deprecated in macOS 10.12 - Use std::atomic_fetch_add() from <atomic> >> instead [-Werror,-Wdeprecated-declarations] >> { OSAtomicAdd32Barrier(increment, &counter); } >> ^ >> /usr/include/libkern/OSAtomicDeprecated.h:161:9: note: >> 'OSAtomicAdd32Barrier' has been explicitly marked deprecated here >> int32_t OSAtomicAdd32Barrier( int32_t __theAmount, volatile int32_t >> *__theValue ); >> ^ >> In file included from main.cc:34: >> In file included from ./Command.hh:23: >> In file included from ./Value.icc:24: >> In file included from ./Value.hh:36: >> In file included from Archive.cc:29: >> In file included from ./Archive.hh:28: >> In file included from ./Value.icc:24: >> In file included from ./Value.hh:36: >> ./Parallel.hh:99:13: error: 'OSAtomicAdd32Barrier' is deprecated: first >> deprecated in macOS 10.12 - Use std::atomic_fetch_add() from <atomic> >> instead [-Werror,-Wdeprecated-declarations] >> { return OSAtomicAdd32Barrier(increment, &counter) - increment; } >> ^ >> /usr/include/libkern/OSAtomicDeprecated.h:161:9: note: >> 'OSAtomicAdd32Barrier' has been explicitly marked deprecated here >> int32_t OSAtomicAdd32Barrier( int32_t __theAmount, volatile int32_t >> *__theValue ); >> ^ >> In file included from Archive.cc:29: >> In file included from ./Archive.hh:28: >> In file included from ./Value.icc:24: >> In file included from ./Value.hh:36: >> ./Parallel.hh:103:13: error: 'OSAtomicAdd32Barrier' is deprecated: first >> deprecated in macOS 10.12 - Use std::atomic_fetch_add() from <atomic> >> instead [-Werror,-Wdeprecated-declarations] >> { return OSAtomicAdd32Barrier(0, &counter); } >> ^ >> /usr/include/libkern/OSAtomicDeprecated.h:161:9: note: >> 'OSAtomicAdd32Barrier' has been explicitly marked deprecated here >> int32_t OSAtomicAdd32Barrier( int32_t __theAmount, volatile int32_t >> *__theValue ); >> ^ >> In file included from Archive.cc:29: >> In file included from ./Archive.hh:28: >> In file included from ./Value.icc:24: >> In file included from ./Value.hh:36: >> ./Parallel.hh:107:6: error: 'OSAtomicAdd32Barrier' is deprecated: first >> deprecated in macOS 10.12 - Use std::atomic_fetch_add() from <atomic> >> instead [-Werror,-Wdeprecated-declarations] >> { OSAtomicAdd32Barrier(increment, &counter); } >> ^ >> /usr/include/libkern/OSAtomicDeprecated.h:161:9: note: >> 'OSAtomicAdd32Barrier' has been explicitly marked deprecated here >> int32_t OSAtomicAdd32Barrier( int32_t __theAmount, volatile int32_t >> *__theValue ); >> ^ >> ./Parallel.hh:99:13: error: 'OSAtomicAdd32Barrier' is deprecated: first >> deprecated in macOS 10.12 - Use std::atomic_fetch_add() from <atomic> >> instead [-Werror,-Wdeprecated-declarations] >> { return OSAtomicAdd32Barrier(increment, &counter) - increment; } >> ^ >> /usr/include/libkern/OSAtomicDeprecated.h:161:9: note: >> 'OSAtomicAdd32Barrier' has been explicitly marked deprecated here >> int32_t OSAtomicAdd32Barrier( int32_t __theAmount, volatile int32_t >> *__theValue ); >> ^ >> In file included from main.cc:34: >> In file included from ./Command.hh:23: >> In file included from ./Value.icc:24: >> In file included from ./Value.hh:36: >> ./Parallel.hh:103:13: error: 'OSAtomicAdd32Barrier' is deprecated: first >> deprecated in macOS 10.12 - Use std::atomic_fetch_add() from <atomic> >> instead [-Werror,-Wdeprecated-declarations] >> { return OSAtomicAdd32Barrier(0, &counter); } >> ^ >> /usr/include/libkern/OSAtomicDeprecated.h:161:9: note: >> 'OSAtomicAdd32Barrier' has been explicitly marked deprecated here >> int32_t OSAtomicAdd32Barrier( int32_t __theAmount, volatile int32_t >> *__theValue ); >> ^ >> In file included from main.cc:34: >> In file included from ./Command.hh:23: >> In file included from ./Value.icc:24: >> In file included from ./Value.hh:36: >> ./Parallel.hh:107:6: error: 'OSAtomicAdd32Barrier' is deprecated: first >> deprecated in macOS 10.12 - Use std::atomic_fetch_add() from <atomic> >> instead [-Werror,-Wdeprecated-declarations] >> { OSAtomicAdd32Barrier(increment, &counter); } >> ^ >> /usr/include/libkern/OSAtomicDeprecated.h:161:9: note: >> 'OSAtomicAdd32Barrier' has been explicitly marked deprecated here >> int32_t OSAtomicAdd32Barrier( int32_t __theAmount, volatile int32_t >> *__theValue ); >> ^ >> In file included from Assert.cc:28: >> In file included from ./Workspace.hh:24: >> In file included from ./PrimitiveOperator.hh:24: >> In file included from ./PrimitiveFunction.hh:25: >> In file included from ./Function.hh:27: >> In file included from ./NamedObject.hh:25: >> In file included from ./Value.icc:24: >> In file included from ./Value.hh:36: >> ./Parallel.hh:99:13: error: 'OSAtomicAdd32Barrier' is deprecated: first >> deprecated in macOS 10.12 - Use std::atomic_fetch_add() from <atomic> >> instead [-Werror,-Wdeprecated-declarations] >> { return OSAtomicAdd32Barrier(increment, &counter) - increment; } >> ^ >> /usr/include/libkern/OSAtomicDeprecated.h:161:9: note: >> 'OSAtomicAdd32Barrier' has been explicitly marked deprecated here >> int32_t OSAtomicAdd32Barrier( int32_t __theAmount, volatile int32_t >> *__theValue ); >> ^ >> In file included from Assert.cc:28: >> In file included from ./Workspace.hh:24: >> In file included from ./PrimitiveOperator.hh:24: >> In file included from ./PrimitiveFunction.hh:25: >> In file included from ./Function.hh:27: >> In file included from ./NamedObject.hh:25: >> In file included from ./Value.icc:24: >> In file included from ./Value.hh:36: >> ./Parallel.hh:103:13: error: 'OSAtomicAdd32Barrier' is deprecated: first >> deprecated in macOS 10.12 - Use std::atomic_fetch_add() from <atomic> >> instead [-Werror,-Wdeprecated-declarations] >> { return OSAtomicAdd32Barrier(0, &counter); } >> ^ >> /usr/include/libkern/OSAtomicDeprecated.h:161:9: note: >> 'OSAtomicAdd32Barrier' has been explicitly marked deprecated here >> int32_t OSAtomicAdd32Barrier( int32_t __theAmount, volatile int32_t >> *__theValue ); >> ^ >> In file included from Assert.cc:28: >> In file included from ./Workspace.hh:24: >> In file included from ./PrimitiveOperator.hh:24: >> In file included from ./PrimitiveFunction.hh:25: >> In file included from ./Function.hh:27: >> In file included from ./NamedObject.hh:25: >> In file included from ./Value.icc:24: >> In file included from ./Value.hh:36: >> ./Parallel.hh:107:6: error: 'OSAtomicAdd32Barrier' is deprecated: first >> deprecated in macOS 10.12 - Use std::atomic_fetch_add() from <atomic> >> instead [-Werror,-Wdeprecated-declarations] >> { OSAtomicAdd32Barrier(increment, &counter); } >> ^ >> /usr/include/libkern/OSAtomicDeprecated.h:161:9: note: >> 'OSAtomicAdd32Barrier' has been explicitly marked deprecated here >> int32_t OSAtomicAdd32Barrier( int32_t __theAmount, volatile int32_t >> *__theValue ); >> ^ >> 3 errors generated. >> make[3]: *** [apl-ArrayIterator.o] Error 1 >> make[3]: *** Waiting for unfinished jobs.... >> 3 errors generated. >> make[3]: *** [apl-Assert.o] Error 1 >> 3 errors generated. >> make[3]: *** [apl-main.o] Error 1 >> 3 errors generated. >> make[3]: *** [apl-Archive.o] Error 1 >> make[2]: *** [all-recursive] Error 1 >> make[1]: *** [all-recursive] Error 1 >> make: *** [all] Error 2 >> >> >> >> >