comp.lang.ada
 help / color / mirror / Atom feed
* Interfacing between Ada, C, C++
       [not found] <Z0q5ND5w165w@bwalk.dm.com>
@ 1996-08-05  0:00 ` Hing Chan
  0 siblings, 0 replies; only message in thread
From: Hing Chan @ 1996-08-05  0:00 UTC (permalink / raw)
  Cc: hchan


Hi,

I am investigating the interface problem between C++ and Ada.
We have legacy programs written in Ada that needs to be modified to
use Orbix proxy classes (C++).  The bulk of the code will remain
in Ada except the part of the code that uses the ORB.  

We have success calling C functions from Ada by using the Interface
Pragma for C and calling C main function from the top level Ada 
procedure.  However, we don't know how to deal with C++.
Specifically, C++ compiler changes the name of C++ functions (name
mangling).  A workaround for this is to write a C wrapper around
C++ functions and compile the C and C++ modules with the same
compiler.  However, other issues that remain and we have no
answer for are:

Will Ada tasks (threads) interface with C++/C threads? 
Will Ada I/O conflicts with C++ I/O?
Will Ada exceptions conflict with C++ exceptions?
Ada elaboration (constructor) vs. C++ constructors/destructors?

Anyone has any experience with interfacing Ada and C++ or answers
to any of the above questions, please email me directly (I don't 
read newsgroup too often).  My email address is hchan@logicon.com.

Thanks In advance.

-- 
Hing Chan                         Logicon Inc.
Member of Technical Staff         222 W. 6th St.
DAOC                              P.O. Box 471
(310) 831-0611 x2366              San Pedro, CA 90733-0471
fax: (310) 521-2673
hchan@logicon.com




^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~1996-08-05  0:00 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <Z0q5ND5w165w@bwalk.dm.com>
1996-08-05  0:00 ` Interfacing between Ada, C, C++ Hing Chan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox