Legacy Issue Number: 1726
Summary: The OBV design for the "CORBA::tk_value" TypeCode defines a
potentially recursive constructed type that involves ValueMembers.
The "tk_value" TypeCode defines the entire complexity of the types
within the Value.
It is our understanding that when the ORB code that handles "Anys" for
C++ detects a tk_value TypeCode and needs to encode/decode the associated
Value object – (e.g., for Any::replace(TypeCode, void *) – it will
need to invoke a method on that object that understands the object
instance data and the associated state information. Further
examination of the TypeCode complexity will not be necessary by the
Any implementation, since this code would not have knowledge of or
ability to set the state information within the Value object itself.
The reason why the layout of the state information within a value
cannot be known by external code is that virtual inheritance of
abstract values and/or abstract interfaces makes it impossible to
calculate the offsets of the data members in a compiler
Reported: CORBA 2.2 — Thu, 23 Jul 1998 04:00 GMT
Disposition: Deferred — CORBA 3.4
This proposal was generated automatically by request of the Task Force Chair Adam Mitz.
Updated: Wed, 1 Feb 2023 21:59 GMT
CORBA34 — TypeCode complexity for value types
- Key: CORBA34-367
- OMG Task Force: CORBA 3.4 RTF