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=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!news.eternal-september.org!news.eternal-september.org!.POSTED!not-for-mail From: Simon Wright Newsgroups: comp.lang.ada Subject: Re: Freezing query Date: Fri, 31 Jan 2014 00:20:28 +0000 Organization: A noiseless patient Spider Message-ID: References: Mime-Version: 1.0 Content-Type: text/plain Injection-Info: mx05.eternal-september.org; posting-host="f4c34a0d1a0b50d7528d4047756bbea8"; logging-data="30723"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+RVdYs2gF7QGl+8CiRlsdRnPiCeUIm0MI=" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.3 (darwin) Cancel-Lock: sha1:I0J4saCDSE9Ao4Hf00Bhh7/HIls= sha1:a8WcIHEIGMUMK1o0tL0m98O7zuw= Xref: news.eternal-september.org comp.lang.ada:18339 Date: 2014-01-31T00:20:28+00:00 List-Id: adambeneschan@gmail.com writes: > On Thursday, January 30, 2014 1:49:26 PM UTC-8, Simon Wright wrote: >> A question[1] on StackOverflow thinks that given > >> type U is tagged private; >> type W is new U with private; >> type X is new W with private; >> >> procedure M1 (P1 : U; P2 : in out U; P3 : Integer); >> procedure M2 (P1 : Float ; P2 : in out U); >> procedure M2 (P1 : Float ; P2 : Boolean ; P3 : in out W); >> >> the three operations are primitive. >> >> GNAT doesn't treat them as primitive unless you re-order so that the >> subprograms come immediately after the type concerned: > > Have you seen the latest comment on the SO page? Does it address your > question? The very latest comment does address the question. And I was wrong (but still puzzled by the apparent conflict between 13.14(7) and (7.b): is it the case that type W is new U with private; is not a record extension? I guess that's it).