1 // RUN: %clang_tsan -O1 %s -o %t && not %t 2>&1 | FileCheck %s
10 void *Thread1(void *x
) {
11 if (pthread_barrier_wait(&B
) == PTHREAD_BARRIER_SERIAL_THREAD
)
12 pthread_barrier_destroy(&B
);
16 void *Thread2(void *x
) {
17 if (pthread_barrier_wait(&B
) == PTHREAD_BARRIER_SERIAL_THREAD
)
18 pthread_barrier_destroy(&B
);
23 pthread_barrier_init(&B
, 0, 2);
25 pthread_create(&t
, NULL
, Thread1
, NULL
);
27 pthread_join(t
, NULL
);
31 // CHECK: WARNING: ThreadSanitizer: data race