From: Victor Porton <porton@narod.ru>
Subject: Re: Alleged GNAT bug
Date: Wed, 25 Oct 2017 20:27:54 +0300
Date: 2017-10-25T20:27:54+03:00 [thread overview]
Message-ID: <osqhj1$1hrp$1@gioia.aioe.org> (raw)
In-Reply-To: b1204442-ba3e-4a37-ba44-033dca774f96@googlegroups.com
AdaMagica wrote:
> Am Mittwoch, 25. Oktober 2017 02:53:26 UTC+2 schrieb A. Cervetti:
>> So I conclude:
>> The error happens at the freezing point, but with gnat-2017 only in the
>> modular version. The code could be legal because it works in the
>> monolithic version, but
>
> I guess you are right. Exporting the last instantiation Finalizer to a
> child makes the program legal.
By "you are right" you mean "The code could be legal", don't you?
Or what do you mean?
> package Term.Child is
>
> package Finalizer is new
> Term_Handled_Record.With_Finalization(Term_Type_Without_Finalize);
>
> type Term_Type is new Finalizer.Derived with null record;
>
> end Term.Child;
>
> An instantiation seems to freeze the actual type 13.14(5/3), and
> Term_Type_Without_Finalize has a primitive operation involving an
> incomplete type. 13.14(10.2/4) does not apply here IMO.
>
> But I'm in no way a language lawyer, and 13.14 is the heart of darkness.
>
> As a side note I must say, I'm completely confused about the namings in
> this code. The type Base_Object is already finalized, and any and all
> further derivations do not add more finalizing code.
This is a shortened version of a real Ada2012 code available at
https://github.com/vporton/redland-bindings/tree/ada2012
Thus the naming.
--
Victor Porton - http://portonvictor.org
next prev parent reply other threads:[~2017-10-25 17:27 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-10-20 18:10 Alleged GNAT bug Victor Porton
2017-10-24 10:13 ` A. Cervetti
2017-10-24 23:08 ` Randy Brukardt
2017-10-25 0:53 ` A. Cervetti
2017-10-25 17:03 ` AdaMagica
2017-10-25 17:27 ` Victor Porton [this message]
2017-10-26 7:09 ` AdaMagica
2017-10-26 18:41 ` Victor Porton
2017-11-14 23:35 ` Randy Brukardt
2017-11-16 15:55 ` Robert Eachus
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox