[omniORB] EGCS 1.1 and namespaces

Sai-Lai Lo S.Lo@orl.co.uk
23 Sep 1998 18:03:47 +0100


>>>>> jones  writes:

> Any plans on making omniOrb (omniidl2) produce correct namespace code? I
> tried namespaces with egcs 1.1 and it seems to work properly.

omniORB snapshot_980827 can use C++ namespace to represent IDL modules. It
is just not enabled for egcs.

You are welcome to try it out with egcs 1.1. 

Do the following:

1. Edit <top>/include/omniORB/CORBA_sysdep.h. Add the following macros
   to the G++ compiler section:

line 92
#if defined(__GNUG__)
// GNU G++ compiler

#define HAS_Cplusplus_Namespace

If you want to use C++ bool type to repesent CORBA boolean, add

#define HAS_Cplusplus_Bool


2. Recompile the whole tree. Do 'make clean; make export'


3. omniidl2 normally does not allow IDL modules to be reopened, except when
   it is build for win32 MS VC++ and Digital DEC C++ v6.0.
   Use the -m flag to tell omniidl2 to allow modules to be reopened.

Your mileage may vary as I do not know how complete the namespace
implementation of egcs-1.1 is.

It would be useful if anyone with access to the latest HP's, SGI's C++
compiler try out the namespace support by following the steps above.

Sai-Lai


-- 
Dr. Sai-Lai Lo                          |       Research Scientist
                                        |
E-mail:         S.Lo@orl.co.uk          |       Olivetti & Oracle Research Lab
                                        |       24a Trumpington Street
Tel:            +44 223 343000          |       Cambridge CB2 1QA
Fax:            +44 223 313542          |       ENGLAND