A static_cast allows the build to finish:Code:make -C rb make: Entering directory `/tmp/Ice-3.4b/rb' making all in src make[1]: Entering directory `/tmp/Ice-3.4b/rb/src' making all in IceRuby make[2]: Entering directory `/tmp/Ice-3.4b/rb/src/IceRuby' c++ -c -I. -I.. -I../../../cpp/include -I/usr/lib64/ruby/1.8/x86_64-linux -m64 -Wall -D_REENTRANT -fPIC -g Connection.cpp c++ -c -I. -I.. -I../../../cpp/include -I/usr/lib64/ruby/1.8/x86_64-linux -m64 -Wall -D_REENTRANT -fPIC -g Communicator.cpp c++ -c -I. -I.. -I../../../cpp/include -I/usr/lib64/ruby/1.8/x86_64-linux -m64 -Wall -D_REENTRANT -fPIC -g Endpoint.cpp c++ -c -I. -I.. -I../../../cpp/include -I/usr/lib64/ruby/1.8/x86_64-linux -m64 -Wall -D_REENTRANT -fPIC -g Init.cpp c++ -c -I. -I.. -I../../../cpp/include -I/usr/lib64/ruby/1.8/x86_64-linux -m64 -Wall -D_REENTRANT -fPIC -g ImplicitContext.cpp c++ -c -I. -I.. -I../../../cpp/include -I/usr/lib64/ruby/1.8/x86_64-linux -m64 -Wall -D_REENTRANT -fPIC -g Logger.cpp c++ -c -I. -I.. -I../../../cpp/include -I/usr/lib64/ruby/1.8/x86_64-linux -m64 -Wall -D_REENTRANT -fPIC -g ObjectFactory.cpp c++ -c -I. -I.. -I../../../cpp/include -I/usr/lib64/ruby/1.8/x86_64-linux -m64 -Wall -D_REENTRANT -fPIC -g Operation.cpp c++ -c -I. -I.. -I../../../cpp/include -I/usr/lib64/ruby/1.8/x86_64-linux -m64 -Wall -D_REENTRANT -fPIC -g Properties.cpp c++ -c -I. -I.. -I../../../cpp/include -I/usr/lib64/ruby/1.8/x86_64-linux -m64 -Wall -D_REENTRANT -fPIC -g Proxy.cpp c++ -c -I. -I.. -I../../../cpp/include -I/usr/lib64/ruby/1.8/x86_64-linux -m64 -Wall -D_REENTRANT -fPIC -g Slice.cpp c++ -c -I. -I.. -I../../../cpp/include -I/usr/lib64/ruby/1.8/x86_64-linux -m64 -Wall -D_REENTRANT -fPIC -g Types.cpp c++ -c -I. -I.. -I../../../cpp/include -I/usr/lib64/ruby/1.8/x86_64-linux -m64 -Wall -D_REENTRANT -fPIC -g Util.cpp Util.cpp: In function 'Ice::Long IceRuby::getLong(VALUE)': Util.cpp:161: error: invalid conversion from 'void*' to 'unsigned int*' make[2]: *** [Util.o] Error 1
Code:--- ./Ice-3.4b/rb/src/IceRuby/Util.cpp.orig 2010-02-03 14:46:16.000000000 +0100 +++ ./Ice-3.4b/rb/src/IceRuby/Util.cpp 2010-02-03 14:24:34.000000000 +0100 @@ -158,7 +158,7 @@ { throw RubyException(rb_eRangeError, "bignum too big to convert into long"); } - BDIGIT *ds = RBIGNUM_DIGITS(v); + BDIGIT *ds = static_cast<unsigned int *>(RBIGNUM_DIGITS(v)); BDIGIT_DBL num = 0; while(len--) {

Reply With Quote