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,e5eb8ca5dcea2827 X-Google-Attributes: gid103376,public From: kilgallen@eisner.decus.org (Larry Kilgallen) Subject: Re: Ada OO Mechanism Date: 1999/06/08 Message-ID: <1999Jun8.175959.1@eisner>#1/1 X-Deja-AN: 487253292 X-Nntp-Posting-Host: eisner.decus.org References: <7i05aq$rgl$1@news.orbitworld.net> <7i17gj$1u1k@news2.newsguy.com> <7icgkg$k4q$1@nnrp1.deja.com> <3749E9EC.2842436A@aasaa.ofe.org> <7id2eo$fag@drn.newsguy.com> <3749FF7D.F17CE16A@aasaa.ofe.org> <374AC676.F7AE0772@lmco.com> <7ieuja$5v9@news1.newsguy.com> <7ifd6l$bmf@sjx-ixn1.ix.netcom.com> X-Trace: news.decus.org 928879202 21865 KILGALLEN [216.44.122.34] Organization: Digital Equipment Computer User's Society Followup-To: Newsgroups: comp.lang.ada Date: 1999-06-08T00:00:00+00:00 List-Id: Reply-To: Kilgallen@eisner.decus.org.nospam Organization: LJK Software Lines: 21 In article , Hyman Rosen writes: > kilgallen@eisner.decus.org (Larry Kilgallen) writes: >> The fact that GNAT allocates it in one place does not mean all compilers >> will do it in the same place. Is your question specifically "how does >> GNAT do this ?" ? > > I am trying to understand the mechanism behind T'Class. I have been told > that the size of such variables is determined at run-time, and also that > the heap is not required for such variables. If your compiler stores it entirely on the stack, the heap is not required. Obviously some compiler could store it on the heap, in which case the statement "all compilers store it entirely on the stack" would be wrong. At a more basic level, storing a variable length structure on the stack requires that the machine code alter the amount of stack consumed on one call from the next. Many other languages do not have programmer- visible constructs that do such a run-time determination, so perhaps that is what makes the concept seem strange. Larry Kilgallen