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 autolearn=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!.POSTED!not-for-mail From: "Jeffrey R. Carter" Newsgroups: comp.lang.ada Subject: Re: Last chance handler on a PC Date: Thu, 30 Jan 2020 21:51:09 +0100 Organization: Also freenews.netfront.net; news.tornevall.net; news.eternal-september.org Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Injection-Date: Thu, 30 Jan 2020 20:51:10 -0000 (UTC) Injection-Info: reader02.eternal-september.org; posting-host="a1280ec4801e9e97fc4be09c23c03623"; logging-data="31850"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18v/S546n5+jSRk8gaMrTVYI9ZNBvdycSY=" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.4.1 Cancel-Lock: sha1:37SYJhDhmLn8pF8EJzfB+k0rNh8= In-Reply-To: Content-Language: en-US Xref: reader01.eternal-september.org comp.lang.ada:57993 Date: 2020-01-30T21:51:09+01:00 List-Id: On 1/30/20 9:26 PM, Niklas Holsti wrote: > > Looks good, but to catch all elaboration-time exceptions (in other packages) the > package that executes that call, in its own elaboration code, must be elaborated > before all other packages. Do you have some easy way to ensure that, without > inserting elaboration pragmas in all other packages? Of course that call has to be done before anything that might raise an exception during elaboration. Usually you'd put it in its own pkg, and then every other library-level unit in the system would with it with a pragma Elaborate_Body for it. If everything is part of a hierarchy, then only the spec of the root package of the hierarchy should need to do that. -- Jeff Carter "My mind is a raging torrent, flooded with rivulets of thought, cascading into a waterfall of creative alternatives." Blazing Saddles 89