[omniORB] >>= operator for type Any - further explanation

Jonathan Maton jmaton@viztek.net
Mon, 27 Aug 2001 15:07:53 -0400


Just a further explanation, I have a struct defined in my idl and I ran
omniidl with -Wba to be sure that it generates the insertion and extraction
operators for this struct.  I can find the insertion operators defined in
the SK (the stub) file, but not the extraction (>>=) operator, and this is
what is throwing me for a loop.

----- Original Message -----
From: "Jonathan Maton" <jmaton@viztek.net>
To: "OmniORB List" <omniorb-list@uk.research.att.com>
Sent: Monday, August 27, 2001 2:50 PM
Subject: [omniORB] >>= operator for type Any - where is it?


> I'm at my wits' end and hopefully someone can point out what I'm
missing...
>
> I want to use the "any" type and I want to extract members from it.
> I've read the documentation and it states that using a -Wba flag with
> omniidl will generate the code for the extraction/insertion operators.  I
> see in the resulting .hh file the function signatures for
>   void <<=    (two of these, and)
>   CORBA::Boolean >>=     (also two of these)
> and in the SK.cc file I do indeed see the definitions for the two
insertion
> ("void <<=") operators.  I cannot, however, find the definition for the
two
> extraction operators anywhere, and this is driving me crazy.  Trying to
> compile in MS Visual C++ 6 I'm getting the error message:
> --
> error C2678: binary '>>=' : no operator defined which takes a left-hand
> operand of type 'const class CORBA::Any' (or there is no acceptable
> conversion)
> --
> which I assume is because the compiler can't find the definition for the
> extraction operator, either.
>
> Any help or obvious oversights on my part?
>
> Thanks.
> ------------------------------------------------------
> Jonathan Maton, Development Team
> Viztek, Inc.
>
> makers of the Onyx-RAD suite of medical software
> (teleradiology, PACS, and DICOM)
> ------------------------------------------------------
>