-
Key: CPP13-50
-
Legacy Issue Number: 4002
-
Status: open
-
Source: Triodia Technologies Pty Ltd ( Michi Henning)
-
Summary:
with 2.3, we got rid of all the C/C++ pseudo code for the DII and replaced
it with IDL. Unfortunately, this has broken something in the C++ mapping...In the 2.0 spec, we had:
pseudo interface ORB
{ typedef sequence<Request> RequestSeq; // ... };
With 2.3, we changed this to:
module CORBA
{ // ... typedef sequence<Request> RequestSeq; // ... };
Unfortunately, the C++ mapping still shows the (now incorrect) definition
from CORBA 2.0 in Section 1.33.1.In addition, the C++ mapping shows in Section 1.33.2:
class ORB {
{...}
public:
class RequestSeq;
// ...
};But then, in Section 1.41.21:
class ORB
{ public: typedef sequence<Request_ptr> RequestSeq; // ... };
The latter definition isn't C++...
So, we have several issues here:
1) How can we fix the C++ mapping to be in line with the core?
I'm toying with the idea of saying that RequestSeq is defined
in the CORBA namespace, with a typedef for backward compatibility
in the ORB interface. But I'm not sure what will break with
this kind of aliasing (repository IDs might change unexpectedly?)2) Section 1.41.21 should be changed to show legal C++.
3) Depending on the resolution to this issue, both 1.33.2 and
1.41.21 will probably need updating to reflect the resolution. -
Reported: CPP 1.1 — Fri, 27 Oct 2000 04:00 GMT
-
Updated: Fri, 6 Mar 2015 20:58 GMT
CPP13 — CORBA::RequestSeq or CORBA::ORB::RequestSeq?
- Key: CPP13-50
- OMG Task Force: C++ June 2011 RTF