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,6e688afdbf4b6072 X-Google-Attributes: gid103376,public From: dewar@cs.nyu.edu (Robert Dewar) Subject: Re: Calling Ada from C Date: 1995/04/04 Message-ID: <3ls6ah$no3@gnat.cs.nyu.edu>#1/1 X-Deja-AN: 100815587 references: <3kp8il$avh@linus.mitre.org> <3ksanp$bab@theopolis.orl.mmc.com> <1995Mar24.121422.9469@eisner> <3l3kki$rg4@gnat.cs.nyu.edu> <3l6j5k$h05@theopolis.orl.mmc.com> <1995Mar28.214747.9516@eisner> <3lckgf$36r@theopolis.orl.mmc.com> organization: Courant Institute of Mathematical Sciences newsgroups: comp.lang.ada Date: 1995-04-04T00:00:00+00:00 List-Id: T.E.D. notes that GNAT has the "restriction" that if the main program is not in Ada, then you must "manually call the elaboration routine. It is true that this is the case, and indeed thuis is according to Implementation Advice in the RM, which even suggests the name of the routine to be called "adainit". We can in fact eventually hook into the collect2 mechanism that is used to automatically elaborate C++ constructors. However, I am not sure that this "removal of the restriction" is such a good thing. It seems to me to have advantages to control exactly where elaboration takes place.