comp.lang.ada
 help / color / mirror / Atom feed
From: Simon Wright <simon@pushface.org>
Subject: Re: -fdump-ada-spec
Date: Wed, 08 Oct 2014 20:48:12 +0100
Date: 2014-10-08T20:48:12+01:00	[thread overview]
Message-ID: <lyy4sq8hs3.fsf@pushface.org> (raw)
In-Reply-To: 8761fu8jc5.fsf_-_@ludovic-brenta.org

Ludovic Brenta <ludovic@ludovic-brenta.org> writes:

>> Apparently one should use g++ rather than gcc, because it makes a better
>> job of it.
>>
>> GNAT GPL 2014 does translate (some) macros; it doesn't always get it
>> right, eg
>>
>>    #define M_SQRT2     1.41421356237309504880168872420969808   /* sqrt(2)        */
>>    #define M_SQRT1_2   0.707106781186547524400844362104849039  /* 1/sqrt(2)      */
>>    #define MAXFLOAT    0x1.fffffep+127f
>>
>>    // have to have _something_ besides the constants or no .ads gets
>>    // generated.
>>    extern float sinf(float);
>>
>> turns into
>>
>>    pragma Ada_2005;
>>    pragma Style_Checks (Off);
>>
>>    with Interfaces.C; use Interfaces.C;
>>
>>    package math_h is
>>
>>
>>       M_SQRT2 : constant := 1.41421356237309504880168872420969808;  --  ./math.h:1
>>       M_SQRT1_2 : constant := 8#.707106781186547524400844362104849039#;  --  ./math.h:2
>                                 ^^                                     ^
>
> Isn't that a blatant bug?  Either in the Ada or in the C source?

Yes; like I said, it doesn't always get it right.

And it doesn't understand hex floats either: 16#1.fffffep+127f# is *not*
a good translation of 0x1.fffffep+127f !

I have reported these problems to AdaCore, but as they have always said
the translation isn't expected to be perfect, so it'll be very low on
their priority list.


  reply	other threads:[~2014-10-08 19:48 UTC|newest]

Thread overview: 81+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-06 22:42 Newcomers to comp.lang.ada: welcome and how did you end up here ? Simon Clubley
2014-10-06 23:18 ` brbarkstrom
2014-10-07  8:10 ` Gour
2014-10-07 10:49   ` Luke A. Guest
2014-10-08  7:23     ` Gour
2014-10-08  8:35       ` Brian Drummond
2014-10-08  9:15         ` Simon Wright
2014-10-08 19:14           ` -fdump-ada-spec (was: Newcomers to comp.lang.ada: welcome and how did you end up here ?) Ludovic Brenta
2014-10-08 19:48             ` Simon Wright [this message]
2014-10-08  9:17         ` Newcomers to comp.lang.ada: welcome and how did you end up here ? Gour
2014-10-08 11:23       ` Dmitry A. Kazakov
2014-10-10  9:18         ` Gour
2014-10-08 13:33       ` Luke A. Guest
2014-10-07 20:06 ` Stribor40
2014-10-07 20:21   ` Jeffrey Carter
2014-10-07 21:28     ` David Botton
2014-10-09  5:57       ` Dirk Craeynest
2014-10-10  0:58     ` rriehle
2014-10-08  7:08   ` Dmitry A. Kazakov
2014-10-09 11:58 ` Mark Carroll
2014-10-09 13:31   ` Simon Wright
2014-10-09 18:04     ` Brian Drummond
2014-10-09 20:02       ` Dmitry A. Kazakov
2014-10-09 18:35     ` Mark Carroll
2014-10-09 21:08       ` Simon Clubley
2014-10-10  7:28         ` Natasha Kerensikova
2014-10-10  9:07           ` Mark Carroll
2014-10-10  9:33             ` Björn Lundin
2014-10-10 11:41               ` Natasha Kerensikova
2014-10-10 13:35                 ` Björn Lundin
2014-10-10 17:10                   ` Natasha Kerensikova
2014-10-10 18:22                     ` Luke A. Guest
2014-10-10 14:51                 ` Lucretia
2014-10-10 14:28           ` Lucretia
2014-10-10 19:47           ` Simon Clubley
2014-10-10 21:38             ` Luke A. Guest
2014-10-12 10:56               ` Cross-toolchain for DS [was: Newcomers to comp.lang.ada: welcome and how did you end up here ?] Natasha Kerensikova
2014-10-12 11:40                 ` Simon Clubley
2014-10-12 12:27                   ` Peter Chapin
2014-10-12 19:42                     ` Simon Clubley
2014-10-12 13:25                 ` Luke A. Guest
2014-10-12 13:52                   ` Natasha Kerensikova
2014-10-12 14:40                     ` Luke A. Guest
2014-10-12 20:09                     ` Natasha Kerensikova
2014-10-19 14:34                       ` Natasha Kerensikova
2014-10-19 15:48                         ` Luke A. Guest
2014-10-23  8:22                           ` Natasha Kerensikova
2014-10-12 23:18                     ` Lucretia
2014-10-15  9:46                       ` Brian Drummond
2014-10-15 16:50                         ` Lucretia
2014-10-15  9:58                 ` Brian Drummond
2014-10-15 10:32                   ` Natasha Kerensikova
2014-10-16 12:04                     ` Brian Drummond
2014-10-11 10:53             ` Newcomers to comp.lang.ada: welcome and how did you end up here ? Brian Drummond
2014-10-12  1:33         ` David Botton
2014-10-12  1:25       ` David Botton
2014-10-12 14:40         ` Luke A. Guest
2014-10-09 19:06   ` Shark8
2014-11-04 16:28   ` Nicholas Collin Paul de Gloucester
2014-11-04 16:45     ` Barry Danforth
2014-11-04 17:18       ` David Botton
2014-10-09 12:50 ` john
2014-10-09 21:08 ` gdotone
2014-10-10 16:25 ` Stribor40
2014-10-10 17:09   ` Luke A. Guest
2014-10-10 17:59     ` Stribor40
2014-10-10 18:22       ` Luke A. Guest
2014-11-08 23:51 ` HerrDoktor
2014-11-09  7:44   ` Karl Stromberg
2014-11-09  9:28     ` HerrDoktor
2014-11-09  9:42     ` HerrDoktor
2014-11-09  9:59       ` Karl Stromberg
2014-11-09 10:25         ` HerrDoktor
2014-11-09 16:31           ` David Botton
2014-11-09 16:29         ` David Botton
  -- strict thread matches above, loose matches on Subject: below --
2014-10-06 17:45 -fdump-ada-spec Simon Wright
2014-10-07 14:08 ` -fdump-ada-spec Stephen Leake
2014-10-07 16:05   ` -fdump-ada-spec Simon Wright
2014-10-07 15:12 ` -fdump-ada-spec Markus Schöpflin
2014-10-07 16:05   ` -fdump-ada-spec Simon Wright
2014-10-10 10:06 ` -fdump-ada-spec 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