/*
* Test program that invokes pthread_create@GLIBC_2.0().
*
* Note: pthread_create@GLIBC_2.0() is only available in 32-bit glibc versions,
* not in 64-bit versions.
*/
#include <pthread.h>
#include <stdio.h>
extern int pthread_create_glibc_2_0(pthread_t*, const pthread_attr_t*,
void *(*)(void*), void*);
__asm__(".symver pthread_create_glibc_2_0, pthread_create@GLIBC_2.0");
static void* thread_func(void *arg)
{
fprintf(stderr, "The thread.\n");
return 0;
}
int main(int argc, char** argv)
{
int result;
pthread_t thr;
result = (*pthread_create_glibc_2_0)(&thr, 0, thread_func, 0);
if (result != 0)
{
fprintf(stderr, "pthread_create() failed.\n");
return 1;
}
pthread_join(thr, 0);
fprintf(stderr, "Finished.\n");
return 0;
}