[omniORB] OmniORB4 on MacOS 9.2.2
Malge Nishant
MNishant@quark.co.in
Wed Nov 27 08:05:01 2002
Hi All
I am building OmniORB4 on MacOS 9.2.2 with Code Warrior 8.3. I am
having some problems.. and I know that these are because of the compiler.
inProcessIdentity.h, localidentity.h, remoteidentity.h
In these files constructor of each class uses "thisClassCompare"
e.g.
inline omniInProcessIdentity(omniObjKey& key,classCompare_fn compare
= thisClassCompare)
: omniIdentity(key, compare),
pd_refCount(0)
{
...
}
.....
....
static void* thisClassCompare(omniIdentity*, void*);
'thisClassCompare' is declared after this constructor. When
compiling omniORB4 with Code warrior on MacOs9.2.2/MacOS X, compiler gives
an error message --
Error: undefined identifier 'thisClassCompare'
inProcessIdentity.h line 79 classCompare_fn compare =
thisClassCompare)
But if I change the order of declaration as below, compiler is happy & works
fine.
________________________________________
static void* thisClassCompare(omniIdentity*, void*);
inline omniInProcessIdentity(omniObjKey& key,
classCompare_fn compare = thisClassCompare)
: omniIdentity(key, compare),
pd_refCount(0)
{
....
}
________________________________________
After changing this I am able to build omniORB as a shared library and my
echo example works file. if possible, can we adopt this declaration order
in omniORB distribution, as this will help all of us in future too.
FYI: Code Warrior 7 Compiler has few more problems and you may get more that
expected errors.
Thankx
Regards
Nishant