[omniORB] Warnings regarding copy ctors with new gcc

Matej Kenda matej.kenda at hermes.si
Wed Jan 21 16:52:01 GMT 2004


Hi,

I have noticed that newer versions of g++ (3.3.1 on SUSE9 or 3.3.2 on
Fedora 1) issue warnings about explicit initialisation of base classes
when including headers of omniORB 4.0.3.

I have checked the headers, but I'm not sure what's the problem or
whether I should do anything to remove this warning.

I have copied relevant portions of header files and the warning messages
to the end of this e-mail.

Regards,

Matej

----
omniServant.h:

class omniServant {
protected:
  inline omniServant() {}
  inline omniServant(const omniServant&) {}
  inline omniServant& operator = (const omniServant&) { return *this; }
...

----
poa.h:

 class ServantBase : public virtual omniServant {
  public:
    virtual ~ServantBase();

...
  protected:
    inline ServantBase() {}
    inline ServantBase(const ServantBase&) {}
    inline ServantBase& operator = (const ServantBase&) { return *this;
}

** Warning messages:

In file included from
/home/matejk/3rdparty/omniORB4/include/omniORB4/CORBA.h:449,
                 from
/home/matejk/src/include/ivd/i_types.h:10,
                 from .linux.ia32/i_types.cc:3:
/home/matejk/3rdparty/omniORB4/include/omniORB4/poa.h:
   In copy constructor `PortableServer::ServantBase::ServantBase(const PortableServer::ServantBase&)':
/home/matejk/3rdparty/omniORB4/include/omniORB4/poa.h:691: warning:
   base class `class omniServant' should be explicitly initialized in the copy constructor
/home/matejk/3rdparty/omniORB4/include/omniORB4/poa.h:
   In copy constructor `PortableServer::RefCountServantBase::RefCountServantBase(const PortableServer::RefCountServantBase&)':
/home/matejk/3rdparty/omniORB4/include/omniORB4/poa.h:715: warning:
   base class `class omniServant' should be explicitly initialized in the copy constructor
/home/matejk/3rdparty/omniORB4/include/omniORB4/poa.h:715: warning:
   base class `class PortableServer::ServantBase' should be explicitly initialized in the copy constructor


-- 
Matej Kenda, Lead Engineer
HERMES SoftLab (www.hermes-softlab.com)
Erjavčeva 2, 5000 Nova Gorica, Slovenia




More information about the omniORB-list mailing list