1 // RUN: %clangxx_asan -std=c++11 -pthread %s -o %t && %run %t 2>&1
2 // Regression test for the versioned pthread_create interceptor on linux/i386.
3 // pthread_attr_init is not intercepted and binds to the new abi
4 // pthread_create is intercepted; dlsym always returns the oldest version.
5 // This results in a crash inside pthread_create in libc.
10 void *ThreadFunc(void *) { return nullptr; }
14 const size_t sz
= 1024 * 1024;
17 pthread_attr_init(&attr
);
18 pthread_attr_setstack(&attr
, p
, sz
);
19 pthread_create(&t
, &attr
, ThreadFunc
, nullptr);
20 pthread_join(t
, nullptr);