[omniORB] Build Problem on HPUX 11.00 with aCC(A.03.25)

Duncan Grisby dgrisby@uk.research.att.com
Tue, 19 Sep 2000 11:24:47 +0100


On Thursday 14 September, Masaaki Sekiya wrote:

> Error 439: Exact position unknown; near ["./idlscope.h", line
> 244]. # Name 'Kind ' was redefined after its use in a class. A
> previous declaration used "enum Scop e::Kind" ["./idlscope.h", line
> 119].

I'm certain that this is a compiler bug, but I've changed the type
name anyway.

[...]
> This warning may come from omkdepend bug.

omkdepend issues all sorts of spurious warnings. I don't think it's
worth fixing them all.

> Error (future) 254: "./typecode.h", line 158 # Anonymous unions may
> only contain non-static data members and not define types.
> =============
> To remove it, I add name of unions.

The compiler is correct -- I have declared the two struct types
outside the union, which minimises the code changes.

> Warning (suggestion) 555: "dynAnyNil.cc", line 206 # Access type
> should be speci fied in the base class list; the default is private.
> =============
> To remove it , I add 'private' word.

Hmm. That inheritance is actually meant to be public, but it doesn't
seem to make any difference on the compilers I've tried.


> * casting 'sockaddr_in *' -> 'struct sockaddr *'
> This warning appears in 'tcpSocketMTfactory.cc'
> To remove it, I apply patche using 'reinterpret_cast' as below.
> 
> < (struct sockaddr *)&raddr 
> ---
> > reinterpret_cast<sockaddr*>(&raddr)

Unfortunately, we can't use reinterpret_cast since not all of our
target compilers support it. You'll just have to live with that
warning.


> Warning 749: "poamanager.cc", line 294 # The cast from
> 'omniOrbPOAManager *' to
> PortableServer::POA *' is performed as a 'reinterpret_cast'. This
> operation is
> non-portable and potentially unsafe.
>         return (PortableServer::POA_ptr) this;

That is actually a bug!  It should be casting to
PortableServer::POAManager_ptr.


> * casting 'CORBA::TypeCode_ptr' -> 'TypeCode_base *'
> =============
> Warning 749: "../poamanager.cc", line 294 # The cast from
> 'omniOrbPOAManager *'

What line did the warning come from?  As far as I can see, all of the
casts to do with TypeCodes are safe, although not necessarily strictly
type safe.

Thanks for the reports,

Duncan.

-- 
 -- Duncan Grisby  \  Research Engineer  --
  -- AT&T Laboratories Cambridge          --
   -- http://www.uk.research.att.com/~dpg1 --