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=-2.9 required=5.0 tests=BAYES_00,FREEMAIL_FROM, MAILING_LIST_MULTI autolearn=unavailable autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,8522260ffbf09d84 X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2003-11-05 03:30:13 PST Path: archiver1.google.com!news2.google.com!fu-berlin.de!jussieu.fr!enst.fr!melchior!cuivre.fr.eu.org!melchior.frmug.org!not-for-mail From: Marius Amado Alves Newsgroups: comp.lang.ada Subject: Re: Problem With Self-Referential Access-to-Subprogram Type Date: Wed, 05 Nov 2003 11:27:22 +0000 Organization: Cuivre, Argent, Or Message-ID: References: <80teqv099lspc5d4osf2gmu7cld46i0lvb@4ax.com> <20chqvglnrae8njr0011cfg3a8hc82je7m@4ax.com> NNTP-Posting-Host: lovelace.ada-france.org Mime-Version: 1.0 Content-Type: text/plain Content-Transfer-Encoding: 7bit X-Trace: melchior.cuivre.fr.eu.org 1068031675 88858 80.67.180.195 (5 Nov 2003 11:27:55 GMT) X-Complaints-To: usenet@melchior.cuivre.fr.eu.org NNTP-Posting-Date: Wed, 5 Nov 2003 11:27:55 +0000 (UTC) To: comp.lang.ada@ada-france.org Return-Path: In-Reply-To: <20chqvglnrae8njr0011cfg3a8hc82je7m@4ax.com> X-Mailer: Ximian Evolution 1.4.5 X-OriginalArrivalTime: 05 Nov 2003 11:27:17.0059 (UTC) FILETIME=[C49A1930:01C3A38F] X-Virus-Scanned: by amavisd-new-20030616-p5 (Debian) at ada-france.org X-BeenThere: comp.lang.ada@ada-france.org X-Mailman-Version: 2.1.2 Precedence: list List-Id: Gateway to the comp.lang.ada Usenet newsgroup List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Xref: archiver1.google.com comp.lang.ada:2072 Date: 2003-11-05T11:27:22+00:00 On Wed, 2003-11-05 at 08:31, Dmitry A.Kazakov wrote: > >> Yes, there is a difference. Technically, for an out parameter the > >> compiler should still know the object constraints. > >Only at runtime. Consider Ada.Text_IO.Get (Item : out String). What > >constraints is the compiler knowing here? > It knows that there are bounds which cannot be changed. If Item were > of String (1..5) the compiler would probably choose another way of > parameter passing than for String (<>) with the consequence that the > stack frame would be different. Irrelevant. This applies to return types just as well. The original poster has a very good question--which has found no real answer yet. My guess is it comes down to the hardware-orientedness of Ada. I was surprised the *first* form compiled.