[omniORB] (no subject)
Duncan Grisby
duncan at grisby.org
Wed Nov 23 16:17:42 GMT 2005
On Tuesday 22 November, Michael_H_Born at raytheon.com wrote:
> I'm trying to rebuild an executable that was originally done with VC++ 6
> and OmniOrb3.
> I'm using VC++ 7 (inside of Visual Studio .NET 2003).
>
> If I try to build, I get many errors like the following:
>
> ..\..\..\include\omniORB3\Naming.hh(1041) : error C2665: 'operator`>>='' :
> none of the 58 overloads can convert parameter 1 from type 'CORBA::ULong'
> ..\..\..\include\omniORB3\corba_operators.h(41): could be
> 'CORBA::Boolean operator >>=(const CORBA::Any &,CORBA::UNKNOWN *& )'
> ..\..\..\include\omniORB3\corba_operators.h(42): or
> 'CORBA::Boolean operator >>=(const CORBA::Any &,CORBA::BAD_PARAM *& )'
> ..
>
> I get the same errors if I try to build the examples in OmniOrb3.
The problem is that VC++ 7 does not support inline friend function
definitions. If you look in omniORB 4, in include/omniORB4/cdrStream.h,
you'll see things to do with the OMNI_NO_INLINE_FRIENDS define. You
should be able to replicate that logic in the omniORB 3
NetBufferedStream and MemBufferedStream classes.
> I brought in OmniOrb4 and it can compile its examples.
>
> But...
> OmniOrb4 has deprecated some items that the code was depending on, namely:
> NetBufferedStream, and
> MemBufferedStream
>
> I'm guessing I have two options and wonder which of these you would
> suggest:
> 1) Build the binaries for OmniOrb3 using VC++ 7.
> 2) Go back to VC++ 6 (not on my PC currently or I'd have tried this
> already).
I prefer option 3...
In omniORB 4, MemBufferedStream has been replaced by a class called
cdrMemoryStream, defined in cdrStream.h. It shouldn't be too hard to
modify your code to use cdrMemoryStream instead of
MemBufferedStream.
Are you really using NetBufferedStream? If so, what for? Whatever it
is, it probably won't be too hard to use the equivalent cdrStream
classes.
Cheers,
Duncan.
--
-- Duncan Grisby --
-- duncan at grisby.org --
-- http://www.grisby.org --
More information about the omniORB-list
mailing list