[libvirt] [PATCH] virthreadpthread: don't try to cast pthread_t to void*
Daniel P. Berrange
berrange at redhat.com
Thu May 2 12:10:16 UTC 2013
On Thu, May 02, 2013 at 02:05:19PM +0200, Guido Günther wrote:
> This fixes the build on kFreeBSD that otherwise fails with:
>
> util/virthreadpthread.c: In function 'virThreadSelfID':
> util/virthreadpthread.c:222:27: error: cast from function call of type 'pthread_t' to non-matching type 'void *' [-Werror=bad-function-cast]
> ---
> I'm unsure why we'd need the cast to (void*) first.
> -- Guido
>
> src/util/virthreadpthread.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/src/util/virthreadpthread.c b/src/util/virthreadpthread.c
> index b42b333..8d5e197 100644
> --- a/src/util/virthreadpthread.c
> +++ b/src/util/virthreadpthread.c
> @@ -219,7 +219,7 @@ int virThreadSelfID(void)
> tid = syscall(SYS_gettid);
> return (int)tid;
> #else
> - return (int)(intptr_t)(void *)pthread_self();
> + return (int)(intptr_t)pthread_self();
> #endif
This was introduced in
commit 4d970fd2938a0558444cddb4f5f5e63b910b5527
Author: Eric Blake <eblake at redhat.com>
Date: Fri Nov 4 16:32:30 2011 -0600
build: silence compiler warning on BSD
Building on 64-bit FreeBSD 8.2 complained about a cast between
a pointer and a smaller integer. Going through an intermediate
cast shuts up the compiler.
* src/util/threads-pthread.c (virThreadSelfID): Silence a warning.
diff --git a/src/util/threads-pthread.c b/src/util/threads-pthread.c
index 82ce5c6..5b8fd5b 100644
--- a/src/util/threads-pthread.c
+++ b/src/util/threads-pthread.c
@@ -216,7 +216,7 @@ int virThreadSelfID(void)
tid = syscall(SYS_gettid);
return (int)tid;
#else
- return (int)(void *)pthread_self();
+ return (int)(intptr_t)(void *)pthread_self();
Before removing the 'void *' we need to check it won't break
FreeBSD again.
Daniel
--
|: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org -o- http://virt-manager.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|
More information about the libvir-list
mailing list