comp.lang.ada
 help / color / mirror / Atom feed
From: Martin Krischik <krischik@users.sourceforge.net>
Subject: Re: Dynamically tagged expression required
Date: Thu, 08 Dec 2005 20:17:18 +0100
Date: 2005-12-08T20:17:18+01:00	[thread overview]
Message-ID: <2852224.m2vuDFxfOX@linux1.krischik.com> (raw)
In-Reply-To: dn9dnd$d5h$1@sunnews.cern.ch

Maciej Sobczak wrote:

> Hi,
> 
> procedure Hello is
> 
>     type Shape is tagged null record;
>     type Triangle is new Shape with
>       record
>          SideLen : Positive;
>       end record;
> 
>     A : Shape;
>     B : Shape'Class := A;             -- (1)
>     C : Triangle := (SideLen => 7);

try:

        D : Shape'Class := C;

as well - it will work as well.
> 
> begin
> 
>     A := C;                           -- (2)
>     B := C;                           -- (3)
> 
> end Hello;
> 
> 
> (2) does not compile, and this is what was expected.
> (3) does not compile, neither, beucase "dynamically tagged expression
> required".
> 
> Interestingly, (1) is fine.
> 
> Why is (1) allowed?

because it is an initialization.

> Why is (3) not allowed?

because it is an assignment.

Read:

http://en.wikibooks.org/wiki/Ada_Programming/Subtypes
http://en.wikibooks.org/wiki/Ada_Programming/Object_Orientation


Martin

-- 
mailto://krischik@users.sourceforge.net
Ada programming at: http://ada.krischik.com



  parent reply	other threads:[~2005-12-08 19:17 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-12-08 13:50 Dynamically tagged expression required Maciej Sobczak
2005-12-08 14:46 ` Georg Bauhaus
2005-12-08 14:52 ` Dmitry A. Kazakov
2005-12-08 19:17 ` Martin Krischik [this message]
2005-12-09  9:09   ` Maciej Sobczak
2005-12-09 12:05     ` Jean-Pierre Rosen
2005-12-09 16:41     ` Robert A Duff
2005-12-09 20:18       ` Martin Krischik
2005-12-11  0:43         ` Matthew Heaney
2005-12-11 11:45           ` Martin Krischik
2005-12-11 14:24             ` Matthew Heaney
2005-12-11 15:18               ` Martin Krischik
2005-12-11 18:07             ` Matthew Heaney
2005-12-12 19:16               ` Martin Krischik
2005-12-13 20:43                 ` Georg Bauhaus
2005-12-13 21:00                   ` Georg Bauhaus
2005-12-09 20:41       ` Randy Brukardt
2005-12-09 20:16     ` Martin Krischik
2005-12-11  0:46       ` Matthew Heaney
2005-12-12  9:44       ` Maciej Sobczak
2005-12-12 19:13         ` Martin Krischik
2005-12-14 10:22           ` Maciej Sobczak
2005-12-15 20:10             ` Martin Krischik
replies disabled

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