comp.lang.ada
 help / color / mirror / Atom feed
From: "Jean-Pierre Rosen" <rosen.adalog@wanadoo.fr>
Subject: Re: Program error from assignment??
Date: 1998/07/22
Date: 1998-07-22T00:00:00+00:00	[thread overview]
Message-ID: <6p556m$e4o$1@platane.wanadoo.fr> (raw)
In-Reply-To: 6p4skk$j73$1@nnrp1.dejanews.com

dennison@telepath.com a �crit dans le message
<6p4skk$j73$1@nnrp1.dejanews.com>...
>In article <6p3070$bvn$1@nnrp1.dejanews.com>,
>  dennison@telepath.com wrote:
>> OK. I give up.
>>
>> I have the following code:
>.
>.
>.
>> The problem is that I'm getting a Program_Error on the second assignment
at
>> runtime. What could cause that?
>
>OK. Since everyone seems to be completely speechless :-), here's what I've
>found out so far:
>
>Program_Error can happen on this assignment when the accessability level of
>the source pointer's object is deeper than that of the target object's
type.
>That's so I can't keep around a pointer to an object after it goes away.
Fair
>enough.
>
>So now this turns into an "accessability level" question. The object that
is
>pointed to is declared in the declaration section of the main routine. It
>exists the entire program. I don't understand the exact rules on
accessability
>levels, but in my book I should *never* fail an accessability check with
this
>object. The access type is declared in a package spec.
>
OK, you almost got it right. Yes, it is a problem with dynamic accessibility
level.

Now remember, a type declared in a library package is at accessibility level
0, while an object declared in a library *procedure* (even the one used as
the main program) is at accessibility level 1.

Remember that the main program is a regular procedure in Ada. For example, a
library package could declare tasks that would in turn call the main program
as a regular procedure...

--
----------------------------------------------------------------------------
                  J-P. Rosen (Rosen.Adalog@wanadoo.fr)
      Visit Adalog's web site at http://perso.wanadoo.fr/adalog






  parent reply	other threads:[~1998-07-22  0:00 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1998-07-21  0:00 Program error from assignment?? dennison
1998-07-22  0:00 ` dennison
1998-07-22  0:00   ` dennison
1998-07-23  0:00     ` Robert Dewar
1998-07-23  0:00     ` Tucker Taft
1998-07-22  0:00   ` Robert Dewar
1998-07-22  0:00   ` Jean-Pierre Rosen [this message]
1998-07-22  0:00     ` dennison
1998-07-23  0:00       ` Jean-Pierre Rosen
1998-07-24  0:00         ` tedennison
1998-07-23  0:00       ` Robert Dewar
1998-07-23  0:00         ` dennison
1998-07-22  0:00   ` David C. Hoos, Sr.
1998-07-22  0:00   ` Stephen Leake
1998-07-22  0:00     ` dennison
1998-07-23  0:00   ` Dale Stanbrough
replies disabled

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