[omniORB] Forward declarations and includes (IDL)
Matej Kenda
matej.kenda@hermes.si
Fri, 21 Sep 2001 08:35:05 +0200
We wanted to put all non-implementation files in a library. omniidl
generated files do not compile.
Matej
-----Original Message-----
From: Carlos [mailto:carlos@solaria-mediterranea.com]=20
Sent: Friday, September 21, 2001 8:34 AM
To: Matej Kenda
Cc: omniORB-list (omniorb-list@uk.research.att.com)
Subject: Re: [omniORB] Forward declarations and includes (IDL)
Matej Kenda wrote:
>=20
> I have multiple CORBA classes and each of them is in its own IDL =
file.=20
> Interfaces refer to each other directly or via sequences.
>=20
> The problem that I have is that omniidl compiler generates sources=20
> without any problems, but the compiler complains with errors:
>=20
> g++ -Wall -D__linux__ -D__x86__ -D__OSVERSION__=3D2 -D_REENTRANT -I.
> -I../../../ivd-3rdparty/omni/include -c -o i_class_a.o =
i_class_a.cpp
> In file included from i_class_a.h:26,
> from i_class_a.cpp:3:
> i_class_b.h:156: `i_ClassA_ptr' was not declared in this scope
> i_class_b.h:156: parse error before `)'
> i_class_b.h:157: syntax error before `*'
> i_class_b.h:189: `i_ClassA_ptr' was not declared in this scope
> i_class_b.h:189: parse error before `)'
> i_class_b.h:190: ISO C++ forbids declaration of `i_ClassAList_t' with =
> no type
> i_class_b.h:190: `i_ClassAList_t' declared as a `virtual' field
> i_class_b.h:190: parse error before `*'
>=20
> I use omniORB 3.0.4 with latest updates.
> g++ is version 2.96 (RedHat 7.1).
>=20
<snip>
Hi all:
We have a similar situation with about 50 interfaces, without
inheritance and the include statement before than forward declarations =
and
don't have problems.
Can you tell us if the compilation problems are with the skeletons
or with the implementation?.
Carlos
Solaria Mediterr=E1nea, S.L.L.