[orbitcpp-list] delete operation in CORBA_request.idl
Status: Beta
Brought to you by:
philipd
From: Phil D. <ph...@us...> - 2000-08-13 21:31:28
|
Hi ORBit-list, CORBA_request.idl and CORBA_context.idl both contain interfaces with a 'delete' operation in them. Under the new ORBit scheme, orbit-idl generates code in corba_defs.h which is included by everything. This causes a problem for C++, since 'delete' is a reserved word. Does anybody have any smart ideas for how we can get around this? The problem is that the C mapping specifies that the operation name occurs un-mangled in the epv (everywhere else it has the module & interface name tacked on before the operation name). Ideas: 1) Divert from the spec, and mangle the operation sig in the epv. (e.g. something like _epv_delete). 2) Divert from the spec and use the recommended c++ mangling in epvs for c++ reserved words. (e.g. _cxx_delete) 3) Don't include corba_defs.h from the client headers. 4) Generate a special C++ corba_defs.h which can be included prior to including "orbit.h". (would this cause link errors?) Any thoughts on the above? (I'd like this resolved quick, since it stops orbitcpp working with CVS ORBit). Cheers, Phil. P.S. I've included a patch which does (1) for people who need to compile CVS head with ORBit right now ;-) |