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=-0.2 required=5.0 tests=BAYES_00,FORGED_GMAIL_RCVD, FREEMAIL_FROM,FROM_STARTS_WITH_NUMS autolearn=no autolearn_force=no version=3.4.4 X-Received: by 2002:a6b:9591:: with SMTP id x139-v6mr3706016iod.106.1527372672705; Sat, 26 May 2018 15:11:12 -0700 (PDT) X-Received: by 2002:a9d:4503:: with SMTP id w3-v6mr691735ote.7.1527372672488; Sat, 26 May 2018 15:11:12 -0700 (PDT) Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!feeder.eternal-september.org!news.uzoreto.com!weretis.net!feeder6.news.weretis.net!feeder.usenetexpress.com!feeder-in1.iad1.usenetexpress.com!border1.nntp.dca1.giganews.com!nntp.giganews.com!u74-v6no3613792itb.0!news-out.google.com!b185-v6ni2997itb.0!nntp.google.com!u74-v6no3613790itb.0!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Sat, 26 May 2018 15:11:12 -0700 (PDT) In-Reply-To: <2d717805-f6a4-4de9-bf4a-d45037034f96@googlegroups.com> Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=85.241.60.216; posting-account=rhqvKAoAAABpikMmPHJSZh4400BboHwT NNTP-Posting-Host: 85.241.60.216 References: <2d717805-f6a4-4de9-bf4a-d45037034f96@googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <9b76440e-ab22-4fcf-8a54-f85a9d4d010a@googlegroups.com> Subject: Re: why "unconstrained subtype in component declaration" while said component given default value ? From: Mehdi Saada <00120260a@gmail.com> Injection-Date: Sat, 26 May 2018 22:11:12 +0000 Content-Type: text/plain; charset="UTF-8" Xref: reader02.eternal-september.org comp.lang.ada:52707 Date: 2018-05-26T15:11:12-07:00 List-Id: But isn't the situation the same in automatic variables, with arrays whose constraint is only known at run time ? Like this: procedure Main is subtype Pos_Little is Positive range 1..56; package Num_Gen is new Ada.Numerics.Discrete_Random (Pos_Little); Gen : Num_Gen.Generator; begin declare Arr : array (1..Num_Gen.Random(Gen)) of Positive; begin null; end; end Main; Yet this case is legal.