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.69.12.226 with SMTP id et2mr9339250pbd.2.1431472742954; Tue, 12 May 2015 16:19:02 -0700 (PDT) X-Received: by 10.140.107.226 with SMTP id h89mr256592qgf.32.1431472741678; Tue, 12 May 2015 16:19:01 -0700 (PDT) Path: eternal-september.org!reader01.eternal-september.org!reader02.eternal-september.org!news.eternal-september.org!mx02.eternal-september.org!feeder.eternal-september.org!usenet.blueworldhosting.com!feeder01.blueworldhosting.com!border2.nntp.dca1.giganews.com!nntp.giganews.com!m20no2678904iga.0!news-out.google.com!t92ni344qga.1!nntp.google.com!j5no6936768qga.1!postnews.google.com!glegroupsg2000goo.googlegroups.com!not-for-mail Newsgroups: comp.lang.ada Date: Tue, 12 May 2015 16:19:01 -0700 (PDT) In-Reply-To: Complaints-To: groups-abuse@google.com Injection-Info: glegroupsg2000goo.googlegroups.com; posting-host=108.44.154.41; posting-account=vk6_JwoAAABkMyHO1YfdP69Hm3CpbdGR NNTP-Posting-Host: 108.44.154.41 References: <830c0323-a06c-4884-9214-89f3ee6f17b5@googlegroups.com> User-Agent: G2/1.0 MIME-Version: 1.0 Message-ID: <783ee7a2-e831-4e64-b736-abab0c7d71b7@googlegroups.com> Subject: Re: Incomplete types used with generics From: Jeremiah Injection-Date: Tue, 12 May 2015 23:19:01 +0000 Content-Type: text/plain; charset=ISO-8859-1 Xref: news.eternal-september.org comp.lang.ada:25857 Date: 2015-05-12T16:19:01-07:00 List-Id: On Tuesday, May 12, 2015 at 5:49:18 PM UTC-4, Randy Brukardt wrote: > >> What am I missing? > > That you didn't use an incomplete formal type, so OF COURSE the compiler > rejected your instantiation with an incomplete type. Sorry about missing > that yesterday; I was so excited that someone would actually try to use an > incomplete formal that I failed to notice that you didn't actually do so. > One does not think clearly when you are gloating. :-) > > Randy. Do I at least get points for "trying" to use an incomplete formal? Thanks for the explanation. That makes better sense to me. I didn't realize private types couldn't be incomplete types (I'm sure I read it in the RM, but I tend to learn better through trial/error then rereading than simply first pass reading). I've always seen the use limited private on generic parameters in most examples and tutorials. Does removing the "limited private" from the generic parameters prevent me from having certain kinds of input types? I.E. does generic type Item_Type(<>) is tagged limited private; VS generic type Item_Type(<>) is tagged; prevent me from using any specific types as input types to the package?