1. OMG Mailing List
  2. IDL4 to C++ Language Mapping (IDL4-CPP) Finalization Task Force

Open Issues

  • Issues not resolved
  • Name: idl4-cpp-ftf
  • Issues Count: 6

Issues Descriptions

Specify how IDL maps compare their keys

  • Key: IDL4CPP-1
  • Status: open  
  • Source: Object Computing, Inc. - OCI ( Adam Mitz)
  • Summary:

    Keys of maps can be any IDL type. How should the generated C++ code support key comparison of any type?

  • Reported: IDL4-CPP 1.0a1 — Tue, 21 Mar 2023 17:53 GMT
  • Updated: Fri, 24 Mar 2023 13:28 GMT

Destructors should be override instead of virtual

  • Key: IDL4CPP-6
  • Status: open  
  • Source: Remedy IT Expertise BV ( Johnny Willemsen)
  • Summary:

    In the example code the destructors in classes that derive from a base should be marked override, not virtual, this applies to

    • 6.18.4: Change "virtual ~Example();" to "~Example() override;" and "virtual ~OBV_Example();" to "~OBV_Example() override;"
    • 6.20: Change "virtual ~Exception();" to "~Exception() override;" and "virtual ~SystemException();" to "~SystemException() override;"
    • 6.25: Change "virtual ~MyLocalIF();" to "~MyLocalIF() override;"
    • 6.26.6: Change "virtual ~A_skel ();" to "~A_skel () override;" and "virtual ~A_impl ();" to "~A_impl () override;"
    • 6.26.8: Change "virtual ~TIE() = default;" to "~TIE() override = default;"
  • Reported: IDL4-CPP 1.0b1 — Thu, 23 Mar 2023 14:18 GMT
  • Updated: Thu, 23 Mar 2023 15:02 GMT

a_short in example code

  • Key: IDL4CPP-5
  • Status: open  
  • Source: Remedy IT Expertise BV ( Johnny Willemsen)
  • Summary:

    In the example code it lists
    const int16_t& a_short()

    {...}
    but shouldn't that be
    int16_t a_short() const {...}

    This should be a return by value, using `const int16_t` will lead to a compiler warning, so it should be 'int16_t', all accessors should be checked

  • Reported: IDL4-CPP 1.0b1 — Thu, 23 Mar 2023 14:10 GMT
  • Updated: Thu, 23 Mar 2023 15:02 GMT

Mapping to string_view

  • Key: IDL4CPP-4
  • Status: open  
  • Source: Remedy IT Expertise BV ( Johnny Willemsen)
  • Summary:

    As there is no conversion implicit from a std::string_view to a std::string there is no possibility to easily pass now a IDL defined string to an operation expecting an IDL string input, will this mapping proposal work for the users?

  • Reported: IDL4-CPP 1.0b1 — Thu, 23 Mar 2023 14:06 GMT
  • Updated: Thu, 23 Mar 2023 15:02 GMT

bound type

  • Key: IDL4CPP-3
  • Status: open  
  • Source: Remedy IT Expertise BV ( Johnny Willemsen)
  • Summary:

    This mapping defines the bound as std::integral_constant<size_t, b> but in most compilers size_t is 64bit where sequences/strings are bound to 32bit by IDL, so shouldn't size_t be replaced by uint32_t. If this is changed here, also check all other size_t types in this mapping

  • Reported: IDL4-CPP 1.0b1 — Thu, 23 Mar 2023 14:04 GMT
  • Updated: Thu, 23 Mar 2023 15:01 GMT

Availability of IDL Type traits for anonymous types

  • Key: IDL4CPP-2
  • Status: open  
  • Source: Remedy IT Expertise BV ( Johnny Willemsen)
  • Summary:

    This new spec seems to try to support anonymous types (at least it doesn't disallow them like IDL to C++11), but how are then the type traits provided for anonymous types. For example the type

    struct TopicA

    { sequence<long, 5> l5s; }

    ;

    Is there a way for the user to get the IDL traits for bound/is_bounded for the l5s member? If that is not possible for anonymous types this language mapping should make that clear, that anonymous types don't have a type trait.

  • Reported: IDL4-CPP 1.0b1 — Thu, 23 Mar 2023 14:02 GMT
  • Updated: Thu, 23 Mar 2023 15:00 GMT