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-Thread: 103376,3a02b7ce112ec668 X-Google-Attributes: gid103376,public X-Google-Language: ENGLISH,ASCII-7-bit Path: g2news1.google.com!news1.google.com!newshub.sdsu.edu!elnk-nf2-pas!newsfeed.earthlink.net!stamper.news.pas.earthlink.net!stamper.news.atl.earthlink.net!newsread3.news.atl.earthlink.net.POSTED!14bb18d8!not-for-mail Sender: mheaney@MHEANEYX200 Newsgroups: comp.lang.ada Subject: Re: Strings as Parameters References: From: Matthew Heaney Message-ID: User-Agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.3 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Tue, 05 Oct 2004 00:20:32 GMT NNTP-Posting-Host: 64.185.133.124 X-Complaints-To: abuse@earthlink.net X-Trace: newsread3.news.atl.earthlink.net 1096935632 64.185.133.124 (Mon, 04 Oct 2004 17:20:32 PDT) NNTP-Posting-Date: Mon, 04 Oct 2004 17:20:32 PDT Organization: EarthLink Inc. -- http://www.EarthLink.net Xref: g2news1.google.com comp.lang.ada:4687 Date: 2004-10-05T00:20:32+00:00 List-Id: "Rick Santa-Cruz" writes: > But if I use a String as a Parameter of a function or procedure I don't have > to specify the range. That means I can just write a procedure like this: > > procedure Test_It(S: String) is > begin > ... > end Test_It; > > What is the technical detail behind this? And why is such possible? Because some extra information, called a "dope vector", is passed in the call. The dope vector describes the index values of the array object passed as the parameter. That's how how the called operation knows the index constraints (and the length) of the array object.