comp.lang.ada
 help / color / mirror / Atom feed
From: "Dale Pennington" <Dale.K.Pennington@boeing.com>
Subject: Re: Catching Ada exceptions in C on an SGI
Date: Tue, 16 Oct 2001 20:01:16 GMT
Date: 2001-10-16T20:01:16+00:00	[thread overview]
Message-ID: <GLBEA4.7FF@news.boeing.com> (raw)
In-Reply-To: 86g08jwhdy.fsf@mihalis.net


"Chris Morgan" <cm@mihalis.net> wrote in message
news:86g08jwhdy.fsf@mihalis.net...
> "Dale Pennington" <Dale.K.Pennington@boeing.com> writes:
>
> > Situation is as follows : A third party is supplying us a library in Ada
> > with C entry (i.e. pragma export). The library is build with GNAT 3.13a
on
> > SGI Irix 6.5. Unfortunately, while they supply C entries, these entries
do
> > not trap any Ada exceptions raised, so if an exception occurs, our
program
> > (written in C) crashes. It is not feasible to detect the conditions that
> > would raise an exception before the Ada calls, and we are not sure how
long
> > it will take the third party to fix thing (or even if they will).
> >
> > In the interim, we would like to somehow catch the Ada exceptions in out
C
> > code. I was wondering if anyone had done work before on this problem, or
had
> > good pointer on where I could look.
>
> Wrap the functions in Ada, catch exceptions in the wrappers, and call
> them from C.

I think that may be where I am heading, as I cannot do it in C and C++ (I
have tried with no success). Of course this means convincing my boss to let
me load GNAT onto our development machine, which will take some work (he is
a C person).

One thing I would like to check. The current Ada library already exports
adainit and adafinal. So this new wrapped library obviously cannot use the
same symbols for its init and final. Would the method be to run the bind
function, then edit the result .ads and .adb for my own name before
gnatmakeing and linking it ?

Thanks, Dale







  reply	other threads:[~2001-10-16 20:01 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-10-16 17:19 Catching Ada exceptions in C on an SGI Dale Pennington
2001-10-16 18:48 ` Chris Morgan
2001-10-16 20:01   ` Dale Pennington [this message]
2001-10-16 20:22     ` Chris Morgan
2001-10-17 11:40     ` Marc A. Criley
replies disabled

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