From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on ip-172-31-74-118.ec2.internal X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=unavailable autolearn_force=no version=3.4.4 Path: eternal-september.org!reader01.eternal-september.org!feeder.eternal-september.org!aioe.org!.POSTED.2uCIJahv+a4XEBqttj5Vkw.user.gioia.aioe.org!not-for-mail From: "Dmitry A. Kazakov" Newsgroups: comp.lang.ada Subject: Re: gnoga build fails on Mac Date: Sun, 21 Jun 2020 10:41:55 +0200 Organization: Aioe.org NNTP Server Message-ID: References: <4bbbd09e-e14f-46f5-a510-bdf0c17eba8fo@googlegroups.com> NNTP-Posting-Host: 2uCIJahv+a4XEBqttj5Vkw.user.gioia.aioe.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Complaints-To: abuse@aioe.org User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.9.0 Content-Language: en-US X-Notice: Filtered by postfilter v. 0.9.2 Xref: reader01.eternal-september.org comp.lang.ada:59138 List-Id: On 21/06/2020 09:57, Roger wrote: > Mac Mini (2018) > OSX 10.15.5 > XCode 11.5 > GNAT Community Edition 2020 > > Attempting to build git clone git://git.code.sf.net/p/gnoga/code gnoga. > > First problem with -gnat05 flag which I overcame but probably not the correct way. > Second, killer, problem: > object-handle.adb:153:22: access attribute cannot be used as actual for universal_access equality > object-handle.adb:163:23: access attribute cannot be used as actual for universal_access equality > > How can I fix this? GNAT CE 2020 does not accept comparisons like: procedure Foo (X : access T) is begin ... if Y'Access = X then ... I cannot say anything about legality of such comparisons, maybe the change is related to the upcoming standard, maybe it was never legal. The latest version 4.50 of the Simple Components fixes the issue by replacing access types comparison with by address comparison. [*] http://www.dmitry-kazakov.de/ada/components.htm Replace the offending source files and it should compile again. ------------------- * I don't know the motivation behind forbidding comparison of access attribute, probably some obscure unlikely portability case. Comparing addresses would be less safe, for sure, but not much. -- Regards, Dmitry A. Kazakov http://www.dmitry-kazakov.de