comp.lang.ada
 help / color / mirror / Atom feed
From: jcreem@mailgw.sanders.lockheed.com (Jeff Creem)
Subject: Re: Help: pragma inline
Date: 1997/05/21
Date: 1997-05-21T00:00:00+00:00	[thread overview]
Message-ID: <jcreem-2105970733360001@ljd155.sanders.lockheed.com> (raw)
In-Reply-To: 3381bff2.quantum@quantum.pc.my


In article <3381bff2.quantum@quantum.pc.my>, "Adrian B.Y. Hoe"
<byHoe@QUANTUM.PC.MY> 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)




  parent reply	other threads:[~1997-05-21  0:00 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1997-05-20  0:00 Help: pragma inline Adrian B.Y. Hoe
1997-05-20  0:00 ` Robert Dewar
1997-05-21  0:00 ` Jeff Creem [this message]
1997-05-27  0:00   ` Tucker Taft
1997-05-29  0:00     ` Stephen Leake
1997-05-21  0:00 ` Kevin Krieser
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox