Hi, I have a similar problem on gcc 4.7 (c++0x mode or not) when compiling a pet project (the phone book example from doc)
Code:
gcc.compile.c++ bin/gcc-c++0x/release/server.o
In file included from /usr/include/Ice/LocalObjectF.h:15:0,
from /usr/include/Ice/CommunicatorF.h:24,
from /usr/include/Ice/Initialize.h:13,
from /usr/include/Ice/Ice.h:13,
from server.cpp:1:
/usr/include/Ice/Handle.h: In instantiation of ‘IceInternal::Handle<T>::Handle(T*) [with T = Ice::Communicator]’:
/usr/include/Ice/OutgoingAsync.h:49:16: required from here
/usr/include/Ice/Handle.h:66:13: error: ‘upCast’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]
In file included from server.cpp:2:0:
./Phone.h:86:26: note: ‘IceProxy::Ice::Object* IceInternal::upCast(IceProxy::Phone::PhoneEntryFactory*)’ declared here, later in the translation unit
In file included from /usr/include/Ice/LocalObjectF.h:15:0,
from /usr/include/Ice/CommunicatorF.h:24,
from /usr/include/Ice/Initialize.h:13,
from /usr/include/Ice/Ice.h:13,
from server.cpp:1:
/usr/include/Ice/Handle.h: In instantiation of ‘IceInternal::Handle<T>::~Handle() [with T = Ice::Communicator]’:
/usr/include/Ice/OutgoingAsync.h:49:16: required from here
/usr/include/Ice/Handle.h:106:13: error: ‘upCast’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]
In file included from server.cpp:2:0:
./Phone.h:86:26: note: ‘IceProxy::Ice::Object* IceInternal::upCast(IceProxy::Phone::PhoneEntryFactory*)’ declared here, later in the translation unit
In file included from /usr/include/Ice/LocalObjectF.h:15:0,
from /usr/include/Ice/CommunicatorF.h:24,
from /usr/include/Ice/Initialize.h:13,
from /usr/include/Ice/Ice.h:13,
from server.cpp:1:
/usr/include/Ice/Handle.h: In instantiation of ‘IceInternal::Handle<T>::Handle(const IceInternal::Handle<T>&) [with T = Ice::Communicator; IceInternal::Handle<T> = IceInternal::Handle<Ice::Communicator>]’:
/usr/include/Ice/OutgoingAsync.h:49:16: required from here
/usr/include/Ice/Handle.h:98:13: error: ‘upCast’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]
In file included from server.cpp:2:0:
./Phone.h:86:26: note: ‘IceProxy::Ice::Object* IceInternal::upCast(IceProxy::Phone::PhoneEntryFactory*)’ declared here, later in the translation unit
... and so on ...
I'm far from being an expert, but those errors really look the same as those I get as with clang-3.0.
Thank you in advance for your support.
Best regards,
Romain
PS: by the way, your Ice Manual is a great reference, thanks for that too!