Vadim Godunko expounded in news:5867de55-7ca2-4c64-a72f-d2343153eef0 @k36g2000yqn.googlegroups.com: > On Apr 23, 5:44�pm, Warren 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. In fact I was able to interact with ncurses and everything else C wise, until I did a "raise". Warren