diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog index 99da8b588154d012daa61710870765e1e798213f..4a342a10045002bc704fc83638358d8b826bfb02 100644 --- a/libstdc++-v3/ChangeLog +++ b/libstdc++-v3/ChangeLog @@ -1,3 +1,10 @@ +2007-12-24 Jonathan Wakely <jwakely.gcc@gmail.com> + + * testsuite/tr1/2_general_utilities/shared_ptr/thread/ + default_weaktoshared.cc: Use static_cast not reinterpret_cast. + * testsuite/tr1/2_general_utilities/shared_ptr/thread/ + mutex_weaktoshared.cc: Likewise. + 2007-12-24 Paolo Carlini <pcarlini@suse.de> * include/tr1_impl/hashtable_policy.h (_Prime_rehash_policy:: diff --git a/libstdc++-v3/testsuite/tr1/2_general_utilities/shared_ptr/thread/default_weaktoshared.cc b/libstdc++-v3/testsuite/tr1/2_general_utilities/shared_ptr/thread/default_weaktoshared.cc index 6f521ed95b0ad1bf95843dcb4e2e8eae47b44c2a..3c681fd87b466790c392a589c85976f3b3f57348 100644 --- a/libstdc++-v3/testsuite/tr1/2_general_utilities/shared_ptr/thread/default_weaktoshared.cc +++ b/libstdc++-v3/testsuite/tr1/2_general_utilities/shared_ptr/thread/default_weaktoshared.cc @@ -82,7 +82,7 @@ struct shared_and_weak_pools void* thread_hammer_and_kill(void* opaque_pools) { - shared_and_weak_pools& pools = *reinterpret_cast<shared_and_weak_pools*>(opaque_pools); + shared_and_weak_pools& pools = *static_cast<shared_and_weak_pools*>(opaque_pools); // Using the same parameters as in the RNG test cases. std::tr1::mersenne_twister< unsigned long, 32, 624, 397, 31, @@ -117,7 +117,7 @@ void* thread_hammer_and_kill(void* opaque_pools) void* thread_hammer(void* opaque_weak) { - wp_vector_t& weak_pool = *reinterpret_cast<wp_vector_t*>(opaque_weak); + wp_vector_t& weak_pool = *static_cast<wp_vector_t*>(opaque_weak); // Using the same parameters as in the RNG test cases. std::tr1::mersenne_twister< unsigned long, 32, 624, 397, 31, @@ -165,11 +165,11 @@ test01() pthread_attr_init(&tattr); shared_and_weak_pools pools(obj_pool, weak_pool[0]); - pthread_create(threads, &tattr, thread_hammer_and_kill, reinterpret_cast<void*>(&pools)); + pthread_create(threads, &tattr, thread_hammer_and_kill, static_cast<void*>(&pools)); for (unsigned int worker = 1; worker < HAMMER_MAX_THREADS; worker++) { if (pthread_create(&threads[worker], &tattr, - thread_hammer, reinterpret_cast<void*>(&weak_pool[worker]))) + thread_hammer, static_cast<void*>(&weak_pool[worker]))) std::abort(); } // Wait for threads to complete, then check integrity of reference. diff --git a/libstdc++-v3/testsuite/tr1/2_general_utilities/shared_ptr/thread/mutex_weaktoshared.cc b/libstdc++-v3/testsuite/tr1/2_general_utilities/shared_ptr/thread/mutex_weaktoshared.cc index b2461348c56bb260e296fb99e6c9fdc85ad3b598..433189e061489589f81d9b04e6aa455d221876ae 100644 --- a/libstdc++-v3/testsuite/tr1/2_general_utilities/shared_ptr/thread/mutex_weaktoshared.cc +++ b/libstdc++-v3/testsuite/tr1/2_general_utilities/shared_ptr/thread/mutex_weaktoshared.cc @@ -84,7 +84,7 @@ struct shared_and_weak_pools void* thread_hammer_and_kill(void* opaque_pools) { - shared_and_weak_pools& pools = *reinterpret_cast<shared_and_weak_pools*>(opaque_pools); + shared_and_weak_pools& pools = *static_cast<shared_and_weak_pools*>(opaque_pools); // Using the same parameters as in the RNG test cases. std::tr1::mersenne_twister< unsigned long, 32, 624, 397, 31, @@ -119,7 +119,7 @@ void* thread_hammer_and_kill(void* opaque_pools) void* thread_hammer(void* opaque_weak) { - wp_vector_t& weak_pool = *reinterpret_cast<wp_vector_t*>(opaque_weak); + wp_vector_t& weak_pool = *static_cast<wp_vector_t*>(opaque_weak); // Using the same parameters as in the RNG test cases. std::tr1::mersenne_twister< unsigned long, 32, 624, 397, 31, @@ -167,11 +167,11 @@ test01() pthread_attr_init(&tattr); shared_and_weak_pools pools(obj_pool, weak_pool[0]); - pthread_create(threads, &tattr, thread_hammer_and_kill, reinterpret_cast<void*>(&pools)); + pthread_create(threads, &tattr, thread_hammer_and_kill, static_cast<void*>(&pools)); for (unsigned int worker = 1; worker < HAMMER_MAX_THREADS; worker++) { if (pthread_create(&threads[worker], &tattr, - thread_hammer, reinterpret_cast<void*>(&weak_pool[worker]))) + thread_hammer, static_cast<void*>(&weak_pool[worker]))) std::abort(); } // Wait for threads to complete, then check integrity of reference.