code generated by omniidl2 for msvc.
Matthew Newhook
matthew_newhook@stratos.ca
Fri, 27 Jun 1997 20:09:32 -0230
Hi,
Not being satisfied with either the prospect of hand editing
generated code or using a different compiler under NT I modified the
code generator to compile code that both SUN C++ 4.2 and MSVC 4.1 can
deal with.
The changes I made to the generated code were:
- in headers don't fully specify types that are currently within scope.
ie.
for
interface a
{
struct b
{
long c;
};
void xxx(in b c);
};
this used to generate code
virtual void xxx(const a::b& c) = 0;
it now generates:
virtual void xxx(const b& c) = 0;
- In source, for the naming service, we used to see in the dispatch
method of _sk_NamingContext
CosNaming::NamingContext::list ...
This is changed to:
NamingContext::list ...
for some reason the former tickled a bug in the microsoft compiler.
I have the code written to generate code that compiles under both NT
and under Solaris (with SUN C++ 4.2). I'm going to beat on the
generator a little more to make sure that I've got all the cases.
Currently it will generate correct, working code for all of the .idl
files that we have (~ 4k lines of .idl)
I'll release the code within the next few days. Any comments would be
more than welcome.
Matthew
--
Matthew Newhook. matthew_newhook@stratos.ca, http://www.engr.mun.ca/~matthew
Software Designer, Stratos Network Research.
w: (709) 364-5950, h: (709)-745-4346