[omniORB] DynAny and typecode aliases

Stephen Crawley crawley@dstc.edu.au
Tue, 12 Oct 1999 11:45:35 +1000


Renzo,

I'm running into a similar problem:

  CORBA::TypeCode_ptr tc = // ... typecode for "typedef long Int;"

  CORBA::DynAny_ptr da = orb -> create_dyn_basic_type(tc);

  cerr << "kind is " << kind_to_string(da -> type() -> kind()) << endl;

is printing "kind is long", not "kind is alias".

The problem is that CORBA::ORB::create_basic_dyn_any() is stripping
off the aliasing and creating the DynAnyImpl object with the stripped
typecode.  This violates the intent of the CORBA 2.2 spec.

It seems that with the current implementation of DynAny in omniORB it
is not possible to create an Any value for an aliased TypeCode.  Is
this correct?

-- Steve