Re: unbuildable code generated for inheritance?
- From: Bill Haneman <Bill Haneman Sun COM>
- To: orbit-list gnome org
- Subject: Re: unbuildable code generated for inheritance?
- Date: Wed, 30 May 2001 13:48:09 +0100 (BST)
Michael said:
>Hi Bill,
>
>On Wed, 30 May 2001, Bill Haneman wrote:
>> I am attempting to use #pragma inhibit in order to derive an interface
>> from one that is defined in a separate idl file:
>
> Sounds good, an example of how to do this is in the Bonobo IDL,
>essentialy you need to use:
>
>
>#if !defined(__CHILD_COMPILATION) && defined(__ORBIT_IDL__)
>%{
>#pragma include_defs parent.h
>%}
>#pragma inhibit push
>#endif
>
>IDL ...
>
>#if !defined(__CHILD_COMPILATION) && defined(__ORBIT_IDL__)
>#pragma inhibit pop
>#endif
>
> It is best style to put this inside the Parent.idl in fact, since
>then the includer doesn't need to know the gory details of getting around
>the problem.
Hmm...
I cut-and-pasted your #ifdef/#pragma code above into Parent.idl (changing "parent.h"
to "Parent.h", a typo I believe).
However the resulting Child.h still does not include Parent.h, nor does
Child-common.c. The upshot of this is that the POA_Foo_Parent__epv is still
undefined in Child-common.c and the error is unchanged.
Perhaps I am misunderstanding your instructions? Sorry to be dense.
I am using ORBit-martin-forked from about April 23.
-Bill
------
Bill Haneman x19279
Gnome Accessibility / Batik SVG Toolkit
Sun Microsystems Ireland
#if !defined(__CHILD_COMPILATION) && defined(__ORBIT_IDL__)
%{
#pragma include_defs Parent.h
%}
#pragma inhibit push
#endif
module Foo
{
interface Parent {
void Foo ();
};
};
#if !defined(__CHILD_COMPILATION) && defined(__ORBIT_IDL__)
#pragma inhibit pop
#endif
#include "Parent.idl"
module Foo
{
interface Child : Parent {
void Bar ();
};
};
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]