From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.5-pre1 (2020-06-20) on ip-172-31-74-118.ec2.internal X-Spam-Level: X-Spam-Status: No, score=-1.9 required=3.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.5-pre1 Date: 18 Sep 92 09:16:03 GMT From: mcsun!sunic!nobeltech!leeu@uunet.uu.net (Leif Euren) Subject: Re: Weird Exception Problem Message-ID: <1992Sep18.091603.9064@nobeltech.se> List-Id: Mark Atwood writes: >In one package, if an exception is raised, we get a PROGRAM_ERROR ... >I tried reading the LRM and it doesnt help much. It says that a >PROGRAM_ERROR can be raised if I try using something before its been >"elaborated". I guess its a good yardstick of the depth of my Ada >understanding that I still dont know what "elaboration" really is, even >after reading the LRM. My best description of the elaboration is to say "it a kind of execution of the declarations". The declarations of the various Ada units are traversed, and among other things constants and initiated variables get their values. As thay can get values from a function call, the body of that function has to be elaborated and executed before the elaboration of that particular declaration can finish. But as described in LRM 10.5, this may not always be the case when trusting the automatic elaboration scheme. Thus the predefined pragma ELABORATE. Now, your exception may be caused by a number (next to infinite :-) of things. My suggestion is that you try to force elaboration on all units your package depends on. If that doesn't help, well then I don't know. Good luck! /Leif Euren __ __ | \ | All opinions are my own, even if my employer claims otherwise! | \ | | | Leif Euren NobelTech Systems AB | \ | System Manager Rational S-175 88 JARFALLA |__ \__| tel: +46-758-84072 Sweden