Bug#296995: openmcu: FTBFS (amd64/gcc-4.0): cast from 'void*' to 'unsigned int' loses precision

Andreas Jochens Andreas Jochens <aj@andaco.de>, 296995@bugs.debian.org
Sat, 26 Feb 2005 12:47:19 +0100


Package: openmcu
Severity: normal
Tags: patch

When building 'openmcu' on amd64 with gcc-4.0,
I get the following error:

/usr/bin/make	OPENH323DIR=/usr/share/openh323 PWLIBDIR=/usr/share/pwlib PTLIB_FILE=. opt optshared
make[1]: Entering directory `/openmcu-2.0.5'
g++  -D_REENTRANT -fno-exceptions -Wall  -DP_64BIT -I/usr/share/pwlib/include -DPTRACING -I/usr/share/openh323/include -DHAS_OSS -Os   -felide-constructors -x c++ -c main.cxx -o obj_linux_x86_64_r/main.o
conference.h: In member function 'virtual PString ConferenceConnection::GetName() const':
conference.h:167: error: cast from 'void*' to 'unsigned int' loses precision
conference.h: In member function 'virtual PString ConferenceMember::GetName() const':
conference.h:253: error: cast from 'void*' to 'unsigned int' loses precision
make[1]: *** [obj_linux_x86_64_r/main.o] Error 1
make[1]: Leaving directory `/openmcu-2.0.5'
make: *** [build-stamp] Error 2

With the attached patch 'openmcu' can be compiled
on amd64 using gcc-4.0.

Regards
Andreas Jochens

diff -urN ../tmp-orig/openmcu-2.0.5/conference.h ./conference.h
--- ../tmp-orig/openmcu-2.0.5/conference.h	2004-05-26 06:54:31.000000000 +0000
+++ ./conference.h	2005-02-23 11:52:42.427787310 +0000
@@ -164,7 +164,7 @@
 #pragma warning(disable:4311)
 #endif
     virtual PString GetName() const
-    { return PString(PString::Unsigned, (unsigned)id); }
+    { return PString(PString::Unsigned, (unsigned long)id); }
 #ifdef _WIN32
 #pragma warning(pop)
 #endif
@@ -250,7 +250,7 @@
       * return the name of the the conference member
       */
     virtual PString GetName() const
-    { return PString(PString::Unsigned, (unsigned)id); }
+    { return PString(PString::Unsigned, (unsigned long)id); }
 
 #ifdef _WIN32
 #pragma warning(pop)