Use reinterpret_cast instead of static_cast for pthread_t => Thread::id_t
Summary: On FreeBSD pthread_t is a pthread*, not uint64_t, so static_cast gest upset
Reviewed By: dreiss
Test Plan: Compile on FreeBSD
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665210 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/lib/cpp/src/concurrency/PosixThreadFactory.cpp b/lib/cpp/src/concurrency/PosixThreadFactory.cpp
index 73aba61..f6ab6c7 100644
--- a/lib/cpp/src/concurrency/PosixThreadFactory.cpp
+++ b/lib/cpp/src/concurrency/PosixThreadFactory.cpp
@@ -135,7 +135,7 @@
}
id_t getId() {
- return static_cast<id_t>(pthread_);
+ return reinterpret_cast<id_t>(pthread_);
}
shared_ptr<Runnable> runnable() const { return Thread::runnable(); }
@@ -258,7 +258,7 @@
void setDetached(bool value) { detached_ = value; }
- Thread::id_t getCurrentThreadId() const {return static_cast<id_t>(pthread_self());}
+ Thread::id_t getCurrentThreadId() const {return reinterpret_cast<id_t>(pthread_self());}
};