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, MSGID_RANDY autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,a02ecdd4cb0f0996 X-Google-Attributes: gid103376,public From: Robert Dewar Subject: Re: Pragma Inline and its Effects of Compilation Dependencies. Date: 2000/03/22 Message-ID: <8b94tg$9jt$1@nnrp1.deja.com>#1/1 X-Deja-AN: 600638363 References: <8b64ul$jov$1@inputplus.demon.co.uk> <8b8gen$mko$1@nnrp1.deja.com> <38D7CABA.A73F88C6@cadence.com> <38D7F4D8.1AE44625@maths.unine.ch> X-Http-Proxy: 1.0 x21.deja.com:80 (Squid/1.1.22) for client 205.232.38.14 Organization: Deja.com - Before you buy. X-Article-Creation-Date: Wed Mar 22 00:42:26 2000 GMT X-MyDeja-Info: XMYDJUIDrobert_dewar Newsgroups: comp.lang.ada X-Http-User-Agent: Mozilla/4.61 [en] (OS/2; I) Date: 2000-03-22T00:00:00+00:00 List-Id: In article <38D7F4D8.1AE44625@maths.unine.ch>, Gautier wrote: > This feature doesn't force the library model in the classical Ada83 way. > E.g. Turbo Pascal and successors/clones. Or maybe the "other" Ada95 compilers ? > And it doesn't prevent accurate inlining if compiled specification holds > rich enough information (e.g. from where to pick the procedure to inline > in the source of package body, or some representation of it ?) You miss the point. The Ada 83 library approach is based on the idea that a compilation NEVER accesses anything that has not been previously compiled. That is quite fundamental to the model. If you are talking about looking at sources of things that have not been compiled yet, then you are talking about the other model (the source based model). Once again, to be clear, the classical Ada 83 model has a compilation process that is library x single-source ----------> updated library compile The source based model has a quite different compilation process that looks like all-other-sources x one identified source -------> object compile Further details are in the existing literature. As I said earlier, the only way to do full inlining with the classical library model is to delay inlining until binding, which is a very heavy burden, since it means delaying much or even all code generation till bind time. Robert Dewar Ada Core Technologies Sent via Deja.com http://www.deja.com/ Before you buy.