comp.lang.ada
 help / color / mirror / Atom feed
From: Adam Beneschan <adam@irvine.com>
Subject: Re: Language lawyer question: Limited Views
Date: Mon, 5 Jan 2009 09:01:10 -0800 (PST)
Date: 2009-01-05T09:01:10-08:00	[thread overview]
Message-ID: <ae84f74a-3943-4b8b-916a-ca107c07e5b0@a26g2000prf.googlegroups.com> (raw)
In-Reply-To: b18f1b31-3795-4acf-8027-1f70c798bc32@c36g2000prc.googlegroups.com

On Dec 31 2008, 9:59 am, Maxim Reznik <rezni...@gmail.com> wrote:
> Consider
> package Pkg is
>    type T;
>    type T is null record;
> end Pkg;
>
> According to 10.1.1(12.3/2)
> "The limited view of a package contains: ... For each type_declaration
> in the visible part, an incomplete view of the type..."
>
> limited view for it would be:
>
> package limited view Pkg is
>    type T;  --  for declaration type T;
>    type T;  --  for declaration type T is null record;
> end Pkg;
>
> Why two implicit declaration of T are allowed here?
> Is second "type T;" completion for first?

I suppose the answer is that the RM says that the implicit declaration
of the limited view contains an "incomplete view" of a type, not an
actual "type declaration", so the syntax rules having to do with
declarations don't actually apply since these are not really
declarations.  In any case, I wouldn't worry about it; the limited
view contains an incomplete view of T.  I'm someone who worries a lot
about the tiniest potential ambiguities in the RM, but even this one
doesn't concern me at all.

                                 -- Adam




  reply	other threads:[~2009-01-05 17:01 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-12-31 17:59 Language lawyer question: Limited Views Maxim Reznik
2009-01-05 17:01 ` Adam Beneschan [this message]
2009-01-05 19:32   ` Maxim Reznik
2009-01-05 22:20     ` Adam Beneschan
2009-01-06  1:30   ` Randy Brukardt
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox