diff --git a/src/signalhandler_unittest.cc b/src/signalhandler_unittest.cc index 05a5b96..5493e52 100644 --- a/src/signalhandler_unittest.cc +++ b/src/signalhandler_unittest.cc @@ -44,7 +44,12 @@ using namespace GOOGLE_NAMESPACE; void* DieInThread(void*) { - fprintf(stderr, "0x%lx is dying\n", pthread_self()); + // We assume pthread_t is an integral number or a pointer, rather + // than a complex struct. In some environments, pthread_self() + // returns an uint64 but in some other environments pthread_self() + // returns a pointer. Hence we use C-style cast here, rather than + // reinterpret/static_cast, to support both types of environments. + fprintf(stderr, "0x%lx is dying\n", (long)pthread_self()); // Use volatile to prevent from these to be optimized away. volatile int a = 0; volatile int b = 1 / a;