2018-11-07 Richard Biener <rguenther@suse.de>
[official-gcc.git] / gcc / testsuite / g++.dg / tsan / default_options.C
blob13e1984abae27dc7dbfc7a6655f5f9ad7dbf0365
1 #include <pthread.h>
2 #include <stdio.h>
4 extern "C" const char *__tsan_default_options() {
5   return "report_bugs=0";
8 int Global;
10 void *Thread1(void *x) {
11   Global = 42;
12   return NULL;
15 void *Thread2(void *x) {
16   Global = 43;
17   return NULL;
20 int main() {
21   pthread_t t[2];
22   pthread_create(&t[0], NULL, Thread1, NULL);
23   pthread_create(&t[1], NULL, Thread2, NULL);
24   pthread_join(t[0], NULL);
25   pthread_join(t[1], NULL);
26   fprintf(stderr, "DONE\n");
27   return 0;
30 /* { dg-prune-output "WARNING: ThreadSanitizer: data race.*(\n|\r\n|\r)" } */
31 /* { dg-output "DONE" } */