[omniORB] in/out string arguments have wrong signature in tie
Chris Newbold
cnewbold@laurelnetworks.com
Tue, 17 Oct 2000 07:21:15 -0400
[I sent this originally on Friday, but I never saw it appear in
the digest; apologies if it is a repeat.]
Consider the following IDL:
module foo {
interface bar {
void op1(inout string stuff);
};
};
When compiled with the 3.0.2 (or 3.0.0) IDL compiler, an
object reference class is generated with the following
signature for op1:
void op1(CORBA::String_INOUT_arg stuff);
And the implementation base has the following signature:
virtual void op1(char*& stuff) = 0;
However, the generated POA tie class for bar (which derives
from the implementation base) uses the object reference
signature:
void op1(CORBA::String_INOUT_arg stuff);
The resulting code does not compile, since the pure virtual
in the implementation base was never defined.
-Chris Newbold
Laurel Networks, Inc.