+#else
+static pthread_mutex_t global_wtf_lock = PTHREAD_MUTEX_INITIALIZER;
+
-+inline int64_t atomicIncrement(int64_t volatile* addend) { pthread_mutex_lock(&global_wtf_lock); *addend++; pthread_mutex_unlock(&global_wtf_lock); return *addend; }
-+inline int64_t atomicDecrement(int64_t volatile* addend) { pthread_mutex_lock(&global_wtf_lock); *addend--; pthread_mutex_unlock(&global_wtf_lock); return *addend; }
++inline int64_t atomicIncrement(int64_t volatile* addend) { pthread_mutex_lock(&global_wtf_lock); int64_t v = (*addend)++; pthread_mutex_unlock(&global_wtf_lock); return v; }
++inline int64_t atomicDecrement(int64_t volatile* addend) { pthread_mutex_lock(&global_wtf_lock); int64_t v = (*addend)--; pthread_mutex_unlock(&global_wtf_lock); return v; }
+#endif
#endif