comp.lang.ada
 help / color / mirror / Atom feed
From: "Alex R. Mosteo" <alejandro@mosteo.invalid>
Subject: Re: Autoconf & gnat Help Needed
Date: Tue, 27 Apr 2010 08:57:43 +0200
Date: 2010-04-27T08:57:43+02:00	[thread overview]
Message-ID: <hr61ms$fsh$2@news.eternal-september.org> (raw)
In-Reply-To: Xns9D66700F591BCWarrensBlatherings@188.40.43.213

Warren wrote:

> Stephen Leake expounded in news:82fx2lm74h.fsf@stephe-leake.org:
> 
>> Warren <ve3wwg@gmail.com> writes:
>> 
>>> Vadim Godunko expounded in news:5867de55-7ca2-4c64-a72f-d2343153eef0
>>> @k36g2000yqn.googlegroups.com:
>>>
>>>> On Apr 23, 5:44 pm, Warren <ve3...@gmail.com> wrote:
>>>>>
>>>>> For a basic interpreter, making use of ncurses, libgmp, libgsl,
>>>>> and PostgreSQL etc., it is unavoidable. :)  I tried to avoid C++
>>>>> like the plague, but ncurses requires a C++ main, if GNAT exceptions
>>>>> are to work correctly. I'm not sure of the details why, but a GNAT
>>>>> exception + ncurses and a C or gnat main leads to an abort.
>>>>> Switching to a C++ main program has corrected that.
>>>>>
>>>> Did you try to pass -shared to gnatbind?
>>>
>>> No, but is that really relevant?
>>>
>>> The problem was not library linkage, but the fact that
>>> if an exception was raised in the Ada modules, the
>>> exception handler would not work -- the whole unit
>>> would abort.
>> 
>> Lots of things are relevant in exception handling.
>> 
>> First is the exception handling mechanism; set-jump/long-jump vs zero
>> cost. GNAT supports both, with zero cost the default; Windows dlls
>> require sj/lj.
>> 
>> It may be that using a C++ main also implies the sj/lj mechanism.
> 
> Ok, but how is that connected with "-shared"?

Stab in the dark here; I've read in the past when looking for fully 
statically linked programs that shared runtimes are/were needed for c++ 
exception mechanisms to work; or at least to keep all corner cases covered.

So I wouldn't be surprised if -shared did indeed affect some exception 
related stuff.

What I read was something similar to this, but it was a long time ago:

http://www.trilithium.com/johan/2005/06/static-libstdc/



  reply	other threads:[~2010-04-27  6:57 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-04-21 19:54 Autoconf & gnat Help Needed Warren
2010-04-21 20:31 ` Charmed Snark
2010-04-22 10:23 ` Georg Bauhaus
2010-04-22 15:19   ` Warren
2010-04-22 10:44 ` Stephen Leake
2010-04-22 15:27   ` Warren
2010-04-22 15:59     ` Warren
2010-04-23  6:48     ` Stephen Leake
2010-04-23 13:44       ` Warren
2010-04-23 18:39         ` Vadim Godunko
2010-04-23 20:13           ` Warren
2010-04-24 11:18             ` Stephen Leake
2010-04-26 15:01               ` Warren
2010-04-27  6:57                 ` Alex R. Mosteo [this message]
2010-04-27 13:21                   ` Warren
2010-04-23 18:41 ` Vadim Godunko
2010-04-23 20:18   ` Warren
2010-04-24  0:11     ` Ludovic Brenta
2010-04-26 15:06       ` Charmed Snark
2010-04-26 18:30       ` Robert A Duff
2010-04-24 12:54     ` Vadim Godunko
2010-04-26 15:25       ` Warren
replies disabled

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