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,52882f38318f3520 X-Google-Attributes: gid103376,public From: Calius Subject: Re: Linking an ADA routine to a program written in C Date: 1996/09/20 Message-ID: <32424C10.71A3@netvision.net.il>#1/1 X-Deja-AN: 184034768 references: <51p2vu$enf@lal.interserv.com> <01bba5e0$cf06b040$328371a5@dhoossr.iquest.com> <1996Sep19.075836.1@eisner> content-type: text/plain; charset=us-ascii organization: CPU Gods mime-version: 1.0 newsgroups: comp.lang.ada x-mailer: Mozilla 3.0 (Win16; I) Date: 1996-09-20T00:00:00+00:00 List-Id: > > snip nip > > Perhaps I have just been lucky, but with 160,000 lines > of code, I have never had to worry about "elaboration", it "just > happens". It uses the LIB$INITIALIZE mechanism, which would surely > not be inhibited by intermixing C. > > Larry Kilgallen I'm sorry to "barge" into your thread here :), but I can tell you this: I've called ADA procedures which require elaboration from C several times. I know it works, and as Larry, it "just happens". I can, however, explain WHY is "just happens" (Or so I think): My implementation of ADA ( Verdix SELF ) has a pragma ELABORATE, which tells the runtime system that each time a procedure is called, the entry code for that procedure should check to make sure that the procedure was elaborated, and if not, elaborate at runtime. That's all there is to it. Calius