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,FREEMAIL_FROM autolearn=unavailable autolearn_force=no version=3.4.4 X-Received: by 10.107.146.4 with SMTP id u4mr18031476iod.101.1511562346229; Fri, 24 Nov 2017 14:25:46 -0800 (PST) X-Received: by 10.157.89.211 with SMTP id u19mr1263788otg.14.1511562346160; Fri, 24 Nov 2017 14:25:46 -0800 (PST) Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!feeder.eternal-september.org!news.stack.nl!feeder.erje.net!2.us.feeder.erje.net!newspeer1.nac.net!border2.nntp.dca1.giganews.com!nntp.giganews.com!i6no5638018itb.0!news-out.google.com!193ni1175iti.0!nntp.google.com!i6no5638013itb.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Fri, 24 Nov 2017 14:25:45 -0800 (PST) In-Reply-To: <3f2c41db-3944-4b37-99b8-b71d55d5f8ed@googlegroups.com> Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=71.209.130.105; posting-account=x5rpZwoAAABMN2XPwcebPWPkebpwQNJG NNTP-Posting-Host: 71.209.130.105 References: <3f2c41db-3944-4b37-99b8-b71d55d5f8ed@googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <3c1907d5-0a01-45be-903f-ecdcfcd4023d@googlegroups.com> Subject: Re: How to access an array using two different indexing schemes From: Jerry Injection-Date: Fri, 24 Nov 2017 22:25:46 +0000 Content-Type: text/plain; charset="UTF-8" Xref: feeder.eternal-september.org comp.lang.ada:48185 Date: 2017-11-24T14:25:45-08:00 List-Id: On Friday, November 24, 2017 at 8:52:50 AM UTC-7, AdaMagica wrote: > procedure Renaming is > subtype T1 is String (1 .. 5); > subtype T2 is String (1 .. 0); -- ! > S1 : T1 := "Hello"; > S2 : T2 renames S1; > begin -- Renaming > Put (S1'First'Image); Put (S1 (S1'First)); > Put (S2'First'Image); Put (S2 (S2'First)); > Put (S1'Last 'Image); Put (S1 (S1'Last )); > Put (S2'Last 'Image); Put (S2 (S2'Last )); New_Line; > end Renaming; > > This results in > 1H 1H 5o 5o > > Rememner that renamings ignore constraints. But at least it solves the double memory allocation with your subtype T2 is String (1 .. 0); -- ! Jerry