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.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,b1208117d36fb121 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2002-04-22 07:03:10 PST Path: archiver1.google.com!news1.google.com!newsfeed.stanford.edu!news.tele.dk!small.news.tele.dk!195.70.164.134!news.ost.eltele.no!newsfeed1.ulv.nextra.no!nextra.com!uio.no!193.216.69.35.MISMATCH!dax.net!juliett.dax.net!not-for-mail Newsgroups: comp.lang.ada Subject: Re: System.Address'Size - not a static integer expression? References: <665e587a.0203060957.3682edf7@posting.google.com> <5ee5b646.0204121220.606ecc36@posting.google.com> <3CB74D37.973A4C19@despammed.com> <5ee5b646.0204141201.1ffab2d8@posting.google.com> <3CBAEE01.D17C2DB0@despammed.com> <5ee5b646.0204161911.687f3144@posting.google.com> <3CBDBE76.F4FF3905@despammed.com> <5ee5b646.0204190606.4855f886@posting.google.com> <3CC03241.883A6E33@despammed.com> <5ee5b646.0204192111.1914353d@posting.google.com> <7vlmbgks2a.fsf@vlinux.voxelvision.no> <5ee5b646.0204220534.54f73954@posting.google.com> From: Ole-Hjalmar Kristensen Message-ID: <7v8z7fltkz.fsf@vlinux.voxelvision.no> User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.1 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Mon, 22 Apr 2002 14:02:36 GMT NNTP-Posting-Host: 193.216.12.150 X-Complaints-To: abuse@tele2.no X-Trace: juliett.dax.net 1019484156 193.216.12.150 (Mon, 22 Apr 2002 16:02:36 MET DST) NNTP-Posting-Date: Mon, 22 Apr 2002 16:02:36 MET DST Organization: Tele2 Norway AS Public Access Xref: archiver1.google.com comp.lang.ada:22912 Date: 2002-04-22T14:02:36+00:00 List-Id: dewar@gnat.com (Robert Dewar) writes: > Ole-Hjalmar Kristensen wrote in message news:<7vlmbgks2a.fsf@vlinux.voxelvision.no>... > > dewar@gnat.com (Robert Dewar) writes: > > > Close, but no cigar :-) > > I suggest you look up the keyword 'static' in the C standard. > > What I was referring to is the use of static for a local variable in > a function as in: > > int x () { > int y; > static int z; > ... > > z will be allocated statically, just like an OWN variable in Algol-60. > This is certainly a useful capability in some form (and indeed we often > see as an FAQ in CLA "is there an equivalent of static in Ada" [canonical > answer "yes, use package body variables" [this actually should be "no, > but you can use PB variables to get more or less the same effect -- the > Ada approach lacks the semantics of the Algol-60 OWN or the C static in > that the variable in question has a reach that is greater than the function, > whereas in C/A60, the variable has a scope that is greater, but the reach > is restricted. > > I use scope here to talk about the lifetime of the variable, and reach to > refer to the places where it can be referenced. > > Yes, I know that the keyword static in C has other uses by extension, which > indeed may be what Wes found confusing, but the above is the fundamental > motivation for the choice of the keyword static in my view. Yes, certainly this must have been the original meaning. How they came to re-use the keyword for 'not externally visible' I don't know.