From: Warren <ve3wwg@gmail.com>
Subject: Re: Autoconf & gnat Help Needed
Date: Tue, 27 Apr 2010 13:21:09 +0000 (UTC)
Date: 2010-04-27T13:21:09+00:00 [thread overview]
Message-ID: <Xns9D675F257923AWarrensBlatherings@188.40.43.213> (raw)
In-Reply-To: hr61ms$fsh$2@news.eternal-september.org
Alex R. Mosteo expounded in
news:hr61ms$fsh$2@news.eternal-september.org:
> 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/
I'll have to read that more closely when I have some time,
but you've convinced me. I'd really like to eliminate any
C++ dependence, since that continues to change with the
wind.
Thanks, Warren
next prev parent reply other threads:[~2010-04-27 13:21 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
2010-04-27 13:21 ` Warren [this message]
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