1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
/* Test program to verify whether DRD only complains about uninitialized
* condition variables for dynamically allocated memory.
*/
#include <pthread.h>
#include <stdio.h>
static pthread_cond_t s_cond1 = PTHREAD_COND_INITIALIZER;
static pthread_cond_t s_cond2 = PTHREAD_COND_INITIALIZER;
int main(int argc, char** argv)
{
fprintf(stderr, "Statically initialized condition variable.\n");
pthread_cond_signal(&s_cond1);
fprintf(stderr, "Uninitialized condition variable.\n");
*((char*)&s_cond2 + sizeof(s_cond2) - 1) ^= 1;
pthread_cond_signal(&s_cond2);
fprintf(stderr, "Done.\n");
return 0;
}
|