comp.lang.ada
 help / color / mirror / Atom feed
From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: gnoga build fails on Mac
Date: Mon, 22 Jun 2020 07:56:15 +0200	[thread overview]
Message-ID: <rcph60$18er$1@gioia.aioe.org> (raw)
In-Reply-To: 57adcbd8-4583-4c0f-8bdf-1ac8bd6c6913o@googlegroups.com

On 22/06/2020 05:15, Roger wrote:
> In reply to Sunday, June 21, 2020 at 11:28:18 PM UTC+10, Dmitry A. Kazakov wrote:
> 
> Thanks, that worked. A similar problem occurred with Gnoga.Gui.View.adb.
> Additional problems:
> demo/db_maker/movies.adb
> "equality operator must be declared before type "Movie_Info" is frozen (RM 4.5.2 (9.8)) (Ada 2012)"
> I couldn't figure out how to fix this so I removed this demo from the build.

That looks like a compiler bug to me. But what happens when you do 
declarations first. E.g. replace

type Movie_Info is record
    Title       : Strng;
    Year        : Strng;
    Director    : Strng;
    Writer      : Strng;
    Male_Lead   : Strng;
    Female_Lead : Strng;
end record;

function "=" (Left : Movie_Info; Right : Movie_Info) return Boolean is
    ...
end "=";

function "<" (Left : Movie_Info; Right : Movie_Info) return Boolean is
    ...
end "<";

...

with


type Movie_Info is record
    Title       : Strng;
    Year        : Strng;
    Director    : Strng;
    Writer      : Strng;
    Male_Lead   : Strng;
    Female_Lead : Strng;
end record;

-- Declarations first
function "=" (Left : Movie_Info; Right : Movie_Info) return Boolean;
function "<" (Left : Movie_Info; Right : Movie_Info) return Boolean;
...

-- All bodies
function "=" (Left : Movie_Info; Right : Movie_Info) return Boolean is
    ...
end "=";

function "<" (Left : Movie_Info; Right : Movie_Info) return Boolean is
    ...
end "<";
...

-- 
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de

  reply	other threads:[~2020-06-22  5:56 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-06-21  7:57 gnoga build fails on Mac Roger
2020-06-21  8:41 ` Dmitry A. Kazakov
2020-06-21 11:18   ` Roger
2020-06-21 13:28     ` Dmitry A. Kazakov
2020-06-22  3:15       ` Roger
2020-06-22  5:56         ` Dmitry A. Kazakov [this message]
2020-06-22  6:14           ` Roger
2020-06-22 11:37           ` Jeffrey R. Carter
2020-06-22 23:25             ` Roger
2020-06-23 11:27               ` Jeffrey R. Carter
2020-06-29  0:55             ` Randy Brukardt
2020-06-29  8:29               ` Jeffrey R. Carter
2020-07-01  1:09                 ` Randy Brukardt
2020-07-01  8:52                   ` Jeffrey R. Carter
2020-07-03  0:23                     ` Randy Brukardt
2020-07-03  9:09                       ` Jeffrey R. Carter
2020-07-07 14:41                         ` Shark8
2020-07-07 15:37                           ` Jeffrey R. Carter
2020-06-21 14:24 ` Jeffrey R. Carter
2020-06-21 16:46   ` Simon Wright
replies disabled

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