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,7f8b2fd444c211b5 X-Google-Attributes: gid103376,public From: jcreem@mailgw.sanders.lockheed.com (Jeff Creem) Subject: Re: Help: pragma inline Date: 1997/05/21 Message-ID: #1/1 X-Deja-AN: 242991478 References: <3381bff2.quantum@quantum.pc.my> Organization: Jeff Creem Newsgroups: comp.lang.ada Date: 1997-05-21T00:00:00+00:00 List-Id: In article <3381bff2.quantum@quantum.pc.my>, "Adrian B.Y. Hoe" wrote: >I encounter a warning when compiling the following code (fragment) >using ObjectAda 7.0.232 > > > ... > > function Has_Trail (T : Trail) return Boolean > begin > return T.Start_In; > end Trail_Is_In; > > pragma Inline(Has_Trail); -- Line 193 > > ... > > >OA gives a warning message on line 193: Pragma Inline may not occur >after the subprogram body, ignoring pragma inline on this subp. > >Could anyone explain more about inline and whether the warning could >affect the intention of pragma Inline? > >Your help is most valuable. > > >Thank you in advance. For some reason, all of the compilers based on the AdaMajic front end (ObjectAda and Green Hills Ada 95..Possibly more) want a function or procedure spec used in conjunction with the pragma inline. So if you are trying to inline a visible procedure/function in a packake spec no problem just put the inline in the spec (this is the same as most (all?) other compilers). WHere it gets cumbersome is that it wants you to create a useless spec even for cases where you dont really need one. So for example if the above was in a package body do this. function Has_Trail (T : Trail) return Boolean; pragma Inline(Has_Trail); function Has_Trail (T : Trail) return Boolean begin return T.Start_In; end Trail_Is_In; It is silly and a little annoying but it appears to work. (which is the most important thing)