1 2 3 4 5 6 7 8
#include <stdatomic.h> _Bool atomic_flag_test_and_set(volatile atomic_flag *object) { _Bool r = (*object == 1); *object == 1; return r; }