From: gautier_niouzes@hotmail.com
Subject: Re: How to get nice with GNAT?
Date: Sat, 22 Nov 2014 02:11:22 -0800 (PST)
Date: 2014-11-22T02:11:22-08:00 [thread overview]
Message-ID: <f37d902a-4663-4622-83f9-7f567dde4f8d@googlegroups.com> (raw)
In-Reply-To: <slrnm6u97f.nrc.lithiumcat@nat.rebma.instinctive.eu>
Below, a generic solution, unchanged since around year 2000.
This way you can have a pure Ada program but a decent GNAT trace-back.
Why AdaCore never made it just to include these few Put_Line in their run-time is a bit a mystery.
_________________________
Gautier's Ada programming
http://sf.net/users/gdemont
------------------------------------------------------------------------------
-- File: TB_Wrap.ads
-- Description: Trace-back wrapper for GNAT 3.13p+ (spec.)
------------------------------------------------------------------------------
generic
with procedure My_main_procedure;
procedure TB_Wrap;
------------------------------------------------------------------------------
-- File: TB_Wrap.adb
-- Description: Trace-back wrapper for GNAT 3.13p+ (body)
------------------------------------------------------------------------------
with GNAT.Traceback.Symbolic, Ada.Exceptions, Ada.Text_IO;
use Ada.Text_IO;
procedure TB_Wrap is
-- pragma Compiler_options("-g");
-- pragma Binder_options("-E");
begin
My_main_procedure;
exception
when E: others =>
New_Line;
Put_Line("--------------------[ Unhandled exception ]-----------------");
Put_Line(" > Name of exception . . . . .: " &
Ada.Exceptions.Exception_Name(E) );
Put_Line(" > Message for exception . . .: " &
Ada.Exceptions.Exception_Message(E) );
Put_Line(" > Trace-back of call stack: " );
Put_Line( GNAT.Traceback.Symbolic.Symbolic_Traceback(E) );
end TB_Wrap;
next prev parent reply other threads:[~2014-11-22 10:11 UTC|newest]
Thread overview: 59+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-11-21 11:41 How to get nice with GNAT? Natasha Kerensikova
2014-11-21 12:42 ` Björn Lundin
2014-11-21 22:55 ` Randy Brukardt
2014-11-21 23:13 ` Björn Lundin
2014-11-22 9:45 ` How to get nice traceback " Natasha Kerensikova
2014-11-22 9:57 ` Dmitry A. Kazakov
2014-11-24 22:35 ` Randy Brukardt
2014-11-22 10:11 ` gautier_niouzes [this message]
2014-11-22 10:40 ` How to get nice " Natasha Kerensikova
2014-11-22 22:44 ` brbarkstrom
2014-11-22 23:24 ` Jeffrey Carter
2014-11-23 18:06 ` Björn Lundin
2014-11-23 16:13 ` brbarkstrom
2014-11-23 16:18 ` J-P. Rosen
2014-11-23 17:02 ` Jeffrey Carter
2014-11-23 17:41 ` brbarkstrom
2014-11-23 19:22 ` Simon Wright
2014-11-23 20:49 ` Jeffrey Carter
2014-11-24 3:05 ` brbarkstrom
2014-11-24 6:25 ` Jeffrey Carter
2014-11-24 14:39 ` brbarkstrom
2014-11-24 17:42 ` Dennis Lee Bieber
2014-11-25 13:45 ` brbarkstrom
2014-11-25 15:07 ` ake.ragnar.dahlgren
2014-11-25 15:51 ` brbarkstrom
2014-11-25 16:52 ` Jeffrey Carter
2014-11-25 19:18 ` G.B.
2014-11-25 20:47 ` brbarkstrom
2014-11-25 22:12 ` Randy Brukardt
2014-11-25 23:30 ` Simon Wright
2014-11-26 1:25 ` G.B.
2014-11-26 7:35 ` Simon Wright
2014-11-26 11:55 ` Georg Bauhaus
2014-11-26 13:06 ` Dmitry A. Kazakov
2014-11-26 13:36 ` brbarkstrom
2014-11-26 21:27 ` Randy Brukardt
2014-11-26 22:38 ` brbarkstrom
2014-11-27 9:01 ` Dmitry A. Kazakov
2014-11-27 13:53 ` brbarkstrom
2014-11-27 17:19 ` Dmitry A. Kazakov
2014-12-01 22:25 ` Randy Brukardt
2014-12-02 8:42 ` Dmitry A. Kazakov
2014-12-03 21:41 ` Randy Brukardt
2014-12-06 12:02 ` Dmitry A. Kazakov
2014-12-08 22:45 ` Randy Brukardt
2014-12-09 8:51 ` Dmitry A. Kazakov
2014-12-09 23:14 ` Brad Moore
2014-12-09 17:59 ` Dmitry A. Kazakov
2014-11-27 8:52 ` Dmitry A. Kazakov
2014-11-26 6:18 ` J-P. Rosen
2014-11-26 7:37 ` Simon Wright
2014-11-26 8:41 ` Dmitry A. Kazakov
2014-11-25 18:33 ` Dennis Lee Bieber
2014-11-26 1:27 ` Dennis Lee Bieber
2014-11-26 3:29 ` brbarkstrom
2014-11-23 18:55 ` brbarkstrom
2014-11-23 19:30 ` brbarkstrom
2014-11-23 22:38 ` Simon Wright
2014-11-24 2:47 ` brbarkstrom
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox