[omniORB] Announce: omniORB 4.1.0 and omniORBpy 3.0 release candidates

Thomas Lockhart lockhart at fourpalms.org
Thu Oct 19 22:50:43 BST 2006


>  omniORB 4.1.0 RC 1 and omniORBpy 3.0 RC 1 are now available. Please
>  test these release candidates.

I'm including patches to fix some compiler warnings about non-virtual 
destructors, or rather about classes which have virtual methods but do 
not have a virtual destructor defined.

There are additional patches in the attached patch file which fix a few 
compiler warnings about possible uninitialized variables. You may or may 
not want to actually apply those, but if so I can give you more patches 
for more of those cases if so.

Also, I see warnings from omniidl which were not present in earlier 
versions:

omniidl -bpython  -I/usr/share/idl/omniORB test.idl
corbaidl.idl:15: Warning: Forward declared interface 'CORBA::IDLType' 
was never fully defined
omniidl: 1 warning.

for cases where #include <orb.idl> is present in my IDL (used to get 
access to typecode definitions in TAO; it was formerly a no-op for 
omniORB afaicr).

I haven't yet tried running python code but will get to that next. 
Thanks for the upcoming release!

                                           - Tom

-------------- next part --------------
diff -cr -bB -N omniORB-4.1.0-rc1.orig/include/omniORB4/internal/initialiser.h omniORB-4.1.0-rc1/include/omniORB4/internal/initialiser.h
*** omniORB-4.1.0-rc1.orig/include/omniORB4/internal/initialiser.h	2003-03-23 13:03:46.000000000 -0800
--- omniORB-4.1.0-rc1/include/omniORB4/internal/initialiser.h	2006-10-19 16:45:11.000000000 -0700
***************
*** 65,70 ****
--- 65,71 ----
  // is destroyed.
  class omniInitialiser {
  public:
+   virtual ~omniInitialiser();
    virtual void attach() = 0;
    virtual void detach() = 0;
  
diff -cr -bB -N omniORB-4.1.0-rc1.orig/include/omniORB4/omniInterceptors.h omniORB-4.1.0-rc1/include/omniORB4/omniInterceptors.h
*** omniORB-4.1.0-rc1.orig/include/omniORB4/omniInterceptors.h	2006-07-18 09:21:24.000000000 -0700
--- omniORB-4.1.0-rc1/include/omniORB4/omniInterceptors.h	2006-10-19 16:22:05.000000000 -0700
***************
*** 325,330 ****
--- 325,331 ----
      
      class info_T {
      public:
+       virtual ~info_T();
        virtual void run() = 0;
      };
  
***************
*** 340,345 ****
--- 341,347 ----
      
      class info_T {
      public:
+       virtual ~info_T();
        virtual void run() = 0;
      };
  
diff -cr -bB -N omniORB-4.1.0-rc1.orig/src/lib/omniORB/orbcore/corbaOrb.cc omniORB-4.1.0-rc1/src/lib/omniORB/orbcore/corbaOrb.cc
*** omniORB-4.1.0-rc1.orig/src/lib/omniORB/orbcore/corbaOrb.cc	2006-05-02 06:08:26.000000000 -0700
--- omniORB-4.1.0-rc1/src/lib/omniORB/orbcore/corbaOrb.cc	2006-10-19 17:23:53.000000000 -0700
***************
*** 1258,1263 ****
--- 1258,1266 ----
  static omni_hooked_initialiser hinitialiser;
  omniInitialiser& omni_hooked_initialiser_ = hinitialiser;
  
+ omniInitialiser::~omniInitialiser() {
+ }
+ 
  void
  omniInitialiser::
  install(omniInitialiser* init) {
diff -cr -bB -N omniORB-4.1.0-rc1.orig/src/lib/omniORB/orbcore/logIOstream.cc omniORB-4.1.0-rc1/src/lib/omniORB/orbcore/logIOstream.cc
*** omniORB-4.1.0-rc1.orig/src/lib/omniORB/orbcore/logIOstream.cc	2006-04-28 11:40:46.000000000 -0700
--- omniORB-4.1.0-rc1/src/lib/omniORB/orbcore/logIOstream.cc	2006-10-19 16:48:35.000000000 -0700
***************
*** 335,341 ****
                                             *this << " (deactivating OA)";break;
      case omniObjTableEntry::ETHEREALISING: *this << " (etherealising)";  break;
      case omniObjTableEntry::DEAD:          *this << " (dead)";           break;
!     default:                               *this << " (???)";
      }
    }
    else
--- 335,341 ----
                                             *this << " (deactivating OA)";break;
      case omniObjTableEntry::ETHEREALISING: *this << " (etherealising)";  break;
      case omniObjTableEntry::DEAD:          *this << " (dead)";           break;
!     default:                               *this << " (unknown)";
      }
    }
    else
diff -cr -bB -N omniORB-4.1.0-rc1.orig/src/lib/omniORB/orbcore/poa.cc omniORB-4.1.0-rc1/src/lib/omniORB/orbcore/poa.cc
*** omniORB-4.1.0-rc1.orig/src/lib/omniORB/orbcore/poa.cc	2006-07-18 09:21:21.000000000 -0700
--- omniORB-4.1.0-rc1/src/lib/omniORB/orbcore/poa.cc	2006-10-19 17:15:21.000000000 -0700
***************
*** 3083,3088 ****
--- 3083,3091 ----
  
  OMNI_NAMESPACE_BEGIN(omni)
  
+ omniInterceptors::createThread_T::info_T::~info_T() {
+ }
+ 
  class saTaskQueueCreateInfo
    : public omniInterceptors::createThread_T::info_T {
  public:
***************
*** 3109,3114 ****
--- 3112,3120 ----
      pd_worker->mid_run();
  }
  
+ omniInterceptors::assignUpcallThread_T::info_T::~info_T() {
+ }
+ 
  class saTaskQueueAssignInfo
    : public omniInterceptors::assignUpcallThread_T::info_T {
  public:
diff -cr -bB -N omniORB-4.1.0-rc1.orig/src/lib/omniORB/orbcore/transportRules.cc omniORB-4.1.0-rc1/src/lib/omniORB/orbcore/transportRules.cc
*** omniORB-4.1.0-rc1.orig/src/lib/omniORB/orbcore/transportRules.cc	2006-08-09 10:55:32.000000000 -0700
--- omniORB-4.1.0-rc1/src/lib/omniORB/orbcore/transportRules.cc	2006-10-19 16:55:55.000000000 -0700
***************
*** 391,397 ****
  
    transportRules::Rule* createRule(const char* address_mask) {
      
!     CORBA::ULong network, netmask;
  
  #if defined(OMNI_SUPPORT_IPV6)
      builtinIPv6Rule::Addr ip6network;
--- 391,397 ----
  
    transportRules::Rule* createRule(const char* address_mask) {
      
!     CORBA::ULong network = 0, netmask = 0;
  
  #if defined(OMNI_SUPPORT_IPV6)
      builtinIPv6Rule::Addr ip6network;
diff -cr -bB -N omniORB-4.1.0-rc1.orig/src/tool/omniidl/cxx/idlast.cc omniORB-4.1.0-rc1/src/tool/omniidl/cxx/idlast.cc
*** omniORB-4.1.0-rc1.orig/src/tool/omniidl/cxx/idlast.cc	2006-05-24 11:30:53.000000000 -0700
--- omniORB-4.1.0-rc1/src/tool/omniidl/cxx/idlast.cc	2006-10-19 16:43:27.000000000 -0700
***************
*** 583,589 ****
  InheritSpec::
  append(InheritSpec* is, const char* file, int line)
  {
!   InheritSpec *i, *last;
  
    if (is->interface()) {
      for (i=this; i; i = i->next_) {
--- 583,589 ----
  InheritSpec::
  append(InheritSpec* is, const char* file, int line)
  {
!   InheritSpec *i, *last = 0;
  
    if (is->interface()) {
      for (i=this; i; i = i->next_) {
***************
*** 2615,2621 ****
  ValueInheritSpec::
  append(ValueInheritSpec* is, const char* file, int line)
  {
!   ValueInheritSpec *i, *last;
  
    for (i=this; i; i = i->next_) {
      last = i;
--- 2615,2621 ----
  ValueInheritSpec::
  append(ValueInheritSpec* is, const char* file, int line)
  {
!   ValueInheritSpec *i, *last = 0;
  
    for (i=this; i; i = i->next_) {
      last = i;
-------------- next part --------------
A non-text attachment was scrubbed...
Name: test.idl
Type: text/x-idl
Size: 73 bytes
Desc: not available
Url : http://www.omniorb-support.com/pipermail/omniorb-list/attachments/20061019/0a712a75/test.bin


More information about the omniORB-list mailing list