From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: * X-Spam-Status: No, score=1.3 required=5.0 tests=BAYES_00,INVALID_MSGID, MSGID_RANDY autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,820de86ed0dafb8a X-Google-Attributes: gid103376,public From: Robert Dewar Subject: Re: Help Me Please :) Date: 2000/03/29 Message-ID: <8brs96$ikp$1@nnrp1.deja.com>#1/1 X-Deja-AN: 603685476 References: <89rlvr$gn9$1@nntp3.atl.mindspring.net> <38D8A607.F61F0FFF@mail.com> <8brm79$jm3$1@slb6.atl.mindspring.net> X-Http-Proxy: 1.0 x42.deja.com:80 (Squid/1.1.22) for client 205.232.38.14 Organization: Deja.com - Before you buy. X-Article-Creation-Date: Wed Mar 29 03:11:44 2000 GMT X-MyDeja-Info: XMYDJUIDrobert_dewar Newsgroups: comp.lang.ada X-Http-User-Agent: Mozilla/4.61 [en] (OS/2; I) Date: 2000-03-29T00:00:00+00:00 List-Id: In article <8brm79$jm3$1@slb6.atl.mindspring.net>, Richard D Riehle wrote: > I agree it is useful to track such things. That is why I like > the addition of Exception_Occurrence to the language in > Ada.Exceptions. > > when Some_Nasty_Error : Constraint_Error => > Error_Manager.Log(Ada.Exceptions. > Exception_Information(Some_Nasty_Error)); > > This is where Dr. Dewar and I differ. I see this feature as > important for applications such as command and control > systems. He sees it, as of our last discussion of the > subject, as less important than I. Well I am not quite sure what the disagreement is, but let me make a couple of comments on the above code. It is highly implementation dependent, on some implementations it may give a useful symbolic traceback, on another, no output at all, and on a third, may generate a complete core dump. The output is "implementation defined", which means you know absolutely nothing about what the above code does from a portable point of view. On a given compiler it may do something useful to you, but you have to examine any such logging code wrt the implementation you are using, and adjust the code accordingly. But in practice most Ada 83 implementations provided facilities like this in any case (actually many Ada 83 implementations provided much more extensive capabilities, and the Ada 95 facilities are not sufficient, we have had to add quite a bit to GNAT here, see for example, GNAT.Exceptions. Also, you hope that compilers have extended capabilities like dumping the results of an exception EVEN if there are dependent tasks that prevent propagation. Or dump exceptions that otherwise terminate tasks silently. Sent via Deja.com http://www.deja.com/ Before you buy.