comp.lang.ada
 help / color / mirror / Atom feed
From: Richard Iswara <haujekchifan@gmail.com>
Subject: Re: Gnat bug or mistaken program?
Date: Wed, 21 Jul 2021 09:23:03 +0700	[thread overview]
Message-ID: <b4af0c62-1376-393b-b8cf-67f6463cb50e@gmail.com> (raw)
In-Reply-To: ilo3o4F5297U1@mid.individual.net

On 20/07/2021 21.09, Niklas Holsti wrote:
> On 2021-07-20 15:02, Richard Iswara wrote:
>> I get this error on my program from the menu build => check semantic
>> exponent must be of type Natural, found type "Standard.Float".
>>
>> Should not 10 ** (log10 a + log10 b) = a*b?
>>
>> This is my compiler build:
>>
>> GNAT Studio Community 2020 (20200427) hosted on x86_64-pc-mingw32
>> GNAT Community 2020 (20200429-93) targetting x86_64-pc-mingw32
>> SPARK Community 2020 (20200429)
>>
>> Here is the relevant part of program:
>>
>> with Ada.Numerics.Elementary_Functions;
>> use Ada.Numerics;
> 
> 
> To make Ada.Numerics.Elementary_Functions."**" visible without 
> qualification, you should also do "use Ada.Numerics.Elementary_Functions".
> 
> Otherwise the compiler will see only the predefined operator:
> 
>     function "**"(Left : Float; Right : Integer'Base) return Float
> 
> (see RM 4.5.6(9 and 10)) which explains why the compiler does not accept 
> a floating-point value as the Right operand to "**".
> 
> 
>> Logs : Float := 0.0;
>> Multiples : Float;
>     ...> Multiples := 10.0 ** Logs;  => this is where it fails
> 
> 
> It fails because the compiler sees only the predefined "**" operator 
> which has an integral right operand.

Thank you. So it is a visibility problem.

  reply	other threads:[~2021-07-21  2:23 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-20 12:02 Gnat bug or mistaken program? Richard Iswara
2021-07-20 14:09 ` Niklas Holsti
2021-07-21  2:23   ` Richard Iswara [this message]
2021-07-21  8:29     ` Jeffrey R. Carter
2021-07-21 16:56       ` Shark8
2021-07-22  2:14         ` Richard Iswara
2021-07-27 16:00       ` Niklas Holsti
2021-07-28  5:21         ` J-P. Rosen
2021-07-29  0:46         ` Randy Brukardt
replies disabled

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