/* PR sanitizer/68260 */ #include #include bool lock; int counter; void * tf (void *arg) { (void) arg; while (__atomic_test_and_set (&lock, __ATOMIC_ACQUIRE)) ; ++counter; __atomic_clear (&lock, __ATOMIC_RELEASE); return (void *) 0; } int main () { pthread_t thr; pthread_create (&thr, 0, tf, 0); tf ((void *) 0); pthread_join (thr, 0); return 0; }