/* Simplest test involving real threads. Verify we get the correct answer. */ /* { dg-options "-pthread" } */ #include #include static int x; static void *start (void *dummy __attribute__((unused))) { __transaction_atomic { x++; } return NULL; } int main() { pthread_t p[10]; int i; for (i = 0; i < 10; ++i) pthread_create (p+i, NULL, start, NULL); for (i = 0; i < 10; ++i) pthread_join (p[i], NULL); if (x != 10) abort (); return 0; }