From: Charly <carl.weierstrass@googlemail.com>
Subject: Strange error message
Date: Sun, 1 Jun 2014 03:24:02 -0700 (PDT)
Date: 2014-06-01T03:24:02-07:00 [thread overview]
Message-ID: <33e17033-615d-43d4-8b47-9357c8875a10@googlegroups.com> (raw)
Hi,
when I defined a class hierarchy I encountered a problem, that I could reduce
to the following few lines:
This version compiles without problems:
-----------------
package Test is
type Base is tagged private;
function Create return Base;
type High is new Base with private;
private
type Base is tagged null record;
type High is new Base with null record;
end Test;
-----------------
but this one
-----------------
package Test is
type Base is tagged private;
function Create return Base;
type High is new Base with private;
private
type Base is tagged null record;
type High is new Base with record --
H_Val : Natural := 0; -- these lines are changed
end record; --
end Test;
-----------------
does not compile an I get an error:
type must be declared abstract or "Create" overridden
Why do I have to overide the function Create for type High.
I don't see the necessity.
Btw. I'm using GNAT GPL 2014 but the same happens with 2013 version.
Charly
next reply other threads:[~2014-06-01 10:24 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-06-01 10:24 Charly [this message]
2014-06-01 11:11 ` Strange error message Dmitry A. Kazakov
2014-06-01 12:50 ` Charly
2014-06-01 13:54 ` Simon Wright
2014-06-01 21:18 ` Robert A Duff
2014-06-02 7:47 ` Dmitry A. Kazakov
2014-06-02 13:49 ` Robert A Duff
2014-06-02 14:55 ` Dmitry A. Kazakov
2014-06-02 17:24 ` Robert A Duff
2014-06-02 18:39 ` Shark8
2014-06-02 19:56 ` Randy Brukardt
-- strict thread matches above, loose matches on Subject: below --
2002-11-13 10:36 strange " evangeli
2002-11-13 15:05 ` Stephen Leake
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox