[omniORB] long long 'and' any

Eoin Carroll ewc@orl.co.uk
Thu, 26 Mar 1998 09:40:01 +0000 (GMT)


Hi,

> 
>    It looks like there are some missing pieces in the TypeCode support.
> For TCKind, the spec says:
> 
>   enum TCKind {
>     tk_null, tk_void, tk_short, tk_long, tk_ushort, tk_ulong,
>     tk_float, tk_double, tk_boolean, tk_char, tk_octet, tk_any,
>     tk_TypeCode, tk_Principal, tk_objref, tk_struct, tk_union, tk_enum,
>     tk_string, tk_sequence, tk_array, tk_alias, tk_except, tk_longlong,
>     tk_ulonglong, tk_longdouble, tk_wchar, tk_wstring, tk_fixed
>   };
> 
> while omniORB2/CORBA.h has:
> 
>   enum TCKind {
>     tk_null     = 0,
>     tk_void     = 1,
>     tk_short    = 2,
>     tk_long     = 3,
>     tk_ushort   = 4,
>     tk_ulong    = 5,
>     tk_float    = 6,
>     tk_double   = 7,
>     tk_boolean  = 8,
>     tk_char     = 9,
>     tk_octet    = 10,
>     tk_any      = 11,
>     tk_TypeCode = 12,
>     tk_Principal= 13,
>     tk_objref   = 14,
>     tk_struct   = 15,
>     tk_union    = 16,
>     tk_enum     = 17,
>     tk_string   = 18,
>     tk_sequence = 19,
>     tk_array    = 20,
>     tk_alias    = 21,
>     tk_except   = 22
>   };
> 
> Now I am looking at CORBA 2.1, so it may be that the TCKinds after tk_except
> were not present in 2.0, which I believe is the reference for OmniORB. In any
> case, since you don't have a tk_longlong, you can't put one in an Any.

The omniORB2 TypeCode implementation implements the CORBA 2.0 standard, which
doesn't have the tk_longlong, tk_ulonglong, tk_longdouble, tk_wchar, 
tk_wstring, or tk_fixed TypeCode kinds (see section 6.7.1 of the CORBA 2.0 
spec). There wouldn't be much point in supporting these new types in the 
TypeCode implementation at the moment, as omniORB2 doesn't currently support
long long, wchar, or the other new types introduced in CORBA 2.1.


Eoin.

--
Eoin Carroll                                     ewc@orl.co.uk
Research Engineer
Olivetti & Oracle Research Lab
Cambridge, UK