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.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM autolearn=unavailable autolearn_force=no version=3.4.4 X-Received: by 10.70.49.111 with SMTP id t15mr47525063pdn.10.1438264308864; Thu, 30 Jul 2015 06:51:48 -0700 (PDT) X-Received: by 10.140.86.105 with SMTP id o96mr630078qgd.11.1438264308817; Thu, 30 Jul 2015 06:51:48 -0700 (PDT) Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!mx02.eternal-september.org!feeder.eternal-september.org!news.glorb.com!peer01.iad.highwinds-media.com!news.highwinds-media.com!feed-me.highwinds-media.com!pg9no5344620igb.0!news-out.google.com!78ni71qge.1!nntp.google.com!z61no4178941qge.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Thu, 30 Jul 2015 06:51:48 -0700 (PDT) In-Reply-To: Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=81.203.145.32; posting-account=AFCLjAoAAABJAOf_HjgEEEi3ty-lG5m2 NNTP-Posting-Host: 81.203.145.32 References: <2df4698f-4c8e-457c-822d-209cb2f8ab5e@googlegroups.com> <014427b1-ff7a-4a69-82e6-0330af77ed96@googlegroups.com> <91f88d79-197c-419f-84a8-908e05967a2c@googlegroups.com> <135c2b00-d13c-4f5d-a586-8aca442d363b@googlegroups.com> <947bb170-91aa-4e99-810e-7154be9bae6a@googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <8a0dc4af-83dc-4f24-b5ac-51ffce5bb1b0@googlegroups.com> Subject: Re: Running a preprocessor from GPS? From: EGarrulo Injection-Date: Thu, 30 Jul 2015 13:51:48 +0000 Content-Type: text/plain; charset=ISO-8859-1 X-Received-Bytes: 2877 X-Received-Body-CRC: 847147111 Xref: news.eternal-september.org comp.lang.ada:27208 Date: 2015-07-30T06:51:48-07:00 List-Id: On Thursday, July 30, 2015 at 3:30:53 PM UTC+2, Dmitry A. Kazakov wrote: > On Thu, 30 Jul 2015 06:00:11 -0700 (PDT), EGarrulo wrote: > > Basically, each exception in the chain answers the > > question "why?" Now, if you report only one of those > > exceptions, then you lose context. This is why you should > > be able to chain exceptions. Of course, you could achieve > > a similar result by concatenating messages, but this way > > you would be performing manually what the language should > > have performed automatically. > > exception > when Error : Chain_Error => > raise Chain_Error with "Worse than " & Exception_Message (Error); > end; Ehm... That is exactly what I had said. Thanks for your confirmation. But I wonder whether chaining strings could lead to an "Out of memory" error in Ada. Indeed, my understanding was that Ada only lets you attach a message to an exception because doing more could lead to an "Out of memory" error, and that would hide the original source of the error (and indeed the approach of Ada seemed sensible).