CPP 1.3 NO IDEA Avatar
  1. OMG Issue

CPP13 — CORBA::RequestSeq or CORBA::ORB::RequestSeq?

  • 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