From: knutby@torle.com (P Torle)
Subject: Float precision - gnat vs objectada
Date: 1 Dec 2004 07:46:38 -0800
Date: 2004-12-01T07:46:38-08:00 [thread overview]
Message-ID: <1c8dc73c.0412010746.272b978@posting.google.com> (raw)
I'm working on a Ada95/C project that shall run on both Linux and
Windows.
I have some problems getting the same float precision on both
platforms.
Example:
-----------------------------
subtype Real is Long_Float;
pi : Real;
pi := 3.14159_26535_89793_23846_26433_83279_50288_41971_69399_37511;
Real_Io.Put(pi, Aft => 25);
-----------------------------
Results:
Linux: 3.1415926535897931200000000E+00
Win32: 3.1415926535897931159979634E+00
The thing is, the following float-precision definitions are equal on
both Linux and Windows:
Real'Machine_Mantissa : 53
Real'Machine_Emin : -1021
Real'Machine_Emax : 1024
Real'Digits : 15
So why the difference?
The Windows code is built with ObjectAda/adacomp and Microsoft tools
cl.exe/link.exe.
The Linux code is built with gnat/gcc 3.4.2
next reply other threads:[~2004-12-01 15:46 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-12-01 15:46 P Torle [this message]
2004-12-01 18:50 ` Float precision - gnat vs objectada David C. Hoos
2004-12-01 19:03 ` Martin Krischik
2004-12-02 7:51 ` Jeffrey Carter
2004-12-02 10:10 ` Martin Krischik
2004-12-01 23:32 ` Mark Lorenzen
2004-12-02 8:32 ` Dmitry A. Kazakov
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox