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 autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,8bc57ad5ed1a513e X-Google-Attributes: gid103376,public From: "Matthew Heaney" Subject: Re: Elaboration circularity Date: 2000/02/02 Message-ID: <2sZl4.546$Gi4.22062@newsread1.prod.itd.earthlink.net>#1/1 X-Deja-AN: 580865233 Content-transfer-encoding: 7bit References: <949502026.152029@edh3> Content-Type: text/plain; charset="US-ASCII" X-ELN-Date: Wed Feb 2 09:03:58 2000 X-Complaints-To: abuse@earthlink.net X-Trace: newsread1.prod.itd.earthlink.net 949511038 38.26.192.214 (Wed, 02 Feb 2000 09:03:58 PST) Organization: EarthLink Network, Inc. Mime-version: 1.0 NNTP-Posting-Date: Wed, 02 Feb 2000 09:03:58 PST Newsgroups: comp.lang.ada Date: 2000-02-02T00:00:00+00:00 List-Id: In article <949502026.152029@edh3> , Frode Tenneboe wrote: Did you try doing as GNAT suggested? The body of edhipc looks something like this: with edhipclog; package body edhipc is Change that by adding a pragma Elaborate_All: with edhipclog; pragma Elaborate_All (edhipclog); package body edhipc is Make sure the spec of edhipc doesn't have a categorization pragma (in other words, don't force immediate elaboration of the body). I think you want to the elaboration order to be: edhipc (spec) edhipclog (spec) edhipclog (body) edhipc (body) > I am currently looking into some legacy code which is heavily nested > with cirular dependencies. Compiling with gnat give the following message: > > gnatbind -x client.ali > error: elaboration circularity detected > info: "edhipc (body)" must be elaborated before "edhipc (body)" > info: reason: Elaborate_All probably needed in unit "edhipc (body)" > info: recompile "edhipc (body)" with -gnatwl for full details > info: "edhipc (body)" > info: is needed by its spec: > info: "edhipc (spec)" > info: which is withed by: > info: "edhipclog (spec)" > info: which is withed by: > info: "edhipc (body)" > gnatmake: *** bind failed. > *** Error code 4 > make: Fatal error: Command failed for target `client'