Your message dated Fri, 23 May 2008 14:50:45 +0100
with message-id <[EMAIL PROTECTED]>
and subject line orbit2cpp has been removed from Debian, closing #269599
has caused the Debian Bug report #269599,
regarding liborbit2cpp-dev: generates incorrect code
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [EMAIL PROTECTED]
immediately.)


-- 
269599: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=269599
Debian Bug Tracking System
Contact [EMAIL PROTECTED] with problems
--- Begin Message ---
Package: liborbit2cpp-dev
Version: 1.3.9-1
Severity: normal

Hi,

The generated C++ code has a wrong signature in an overridden virtual
function (the error shows up with -pedantic only, as gpointer is a
typedef to "void *" and it is acceptable to return void ** instead of
void * without -pedantic):

| In file included from 
/usr/include/orbitcpp-2.0/orbitcpp/orb-cpp/orbitcpp.h:42,
|                  from testcase-cpp-common.h:10,
|                  from testcase-cpp-stubs.h:11,
|                  from testcase-cpp-skels.h:8,
|                  from testcase-cpp-skels.cc:6:
| /usr/include/orbitcpp-2.0/orbitcpp/orb-cpp/orbitcpp_poa.h: In copy 
constructor 
|    `PortableServer::RefCountServantBase::RefCountServantBase(const 
|    PortableServer::RefCountServantBase&)':
| /usr/include/orbitcpp-2.0/orbitcpp/orb-cpp/orbitcpp_poa.h:88: Warnung: base 
|    class `class PortableServer::ServantBase' should be explicitly initialized 
|    in the copy constructor

This is a minor change that can be done in the header files (just add an
explicit call to the super class's copy constructor to the initializer
list).

| In file included from testcase-cpp-skels.cc:6:
| testcase-cpp-skels.h: At global scope:
| testcase-cpp-skels.h:49: error: invalid covariant return type for `virtual 
|    void** POA_testcase::test::_orbitcpp_get_c_servant()'
| /usr/include/orbitcpp-2.0/orbitcpp/orb-cpp/orbitcpp_poa.h:63: error:   
|    overriding `virtual void* 
|    PortableServer::ServantBase::_orbitcpp_get_c_servant()' (must be pointer 
or 
|    reference to class)

This is because PortableServer_Servant a typedef to gpointer, which is a
typedef to void *. The signature in the base class is

virtual PortableServer_Servant _orbitcpp_get_c_servant(void);

The signature in the derived class is:

virtual PortableServer_Servant *_orbitcpp_get_c_servant(void);

This is definitely wrong.


[Error repeated two times]

| testcase-cpp-skels.cc:15: Warnung: missing initializer for member `
|    PortableServer_ServantBase__epv::add_ref'
| testcase-cpp-skels.cc:15: Warnung: missing initializer for member `
|    PortableServer_ServantBase__epv::remove_ref'
| testcase-cpp-skels.cc:15: Warnung: missing initializer for member `
|    PortableServer_ServantBase__epv::get_interface'
| testcase-cpp-skels.cc:15: Warnung: missing initializer for member `
|    PortableServer_ServantBase__epv::is_a'
| testcase-cpp-skels.cc:15: Warnung: missing initializer for member `
|    PortableServer_ServantBase__epv::non_existent'

If possible, it would be nice to have these initializers in the
generated code as well, as to avoid all warnings.

The problem can be reproduced with any IDL file, for example

module testcase {
interface test {
readonly attribute long t;
};
};

   Simon

-- System Information:
Debian Release: 3.1
  APT prefers unstable
  APT policy: (500, 'unstable')
Architecture: powerpc (ppc)
Kernel: Linux 2.4.22
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8

Versions of packages liborbit2cpp-dev depends on:
ii  liborbit2-dev               1:2.10.2-1.1 development files for ORBit2 - a C
ii  liborbit2cpp9               1.3.9-1      C++ CORBA mapping for ORBit2 (shar

-- no debconf information


--- End Message ---
--- Begin Message ---
Version: 1.3.9-2.2+rm

The orbit2cpp package has been removed from Debian testing, unstable and
experimental, so I am now closing the bugs that were still opened
against it.

For more information about this package's removal, read
http://bugs.debian.org/478959 . That bug might give the reasons why
this package was removed, and suggestions of possible replacements.

Don't hesitate to reply to this mail if you have any question.

Thank you for your contribution to Debian.

--
Marco Rodrigues
http://Marco.Tondela.org


--- End Message ---

Reply via email to