From: "Frank J. Lhota" <NOSPAM.lhota@adarose.com>
Subject: Re: Ada exception block does NOT work?
Date: Tue, 16 Aug 2005 15:25:57 GMT
Date: 2005-08-16T15:25:57+00:00 [thread overview]
Message-ID: <9AnMe.418$zb.194@trndny03> (raw)
In-Reply-To: <1124185355.610972.22710@f14g2000cwb.googlegroups.com>
I tried this program with ObjectAda, and found that ObjectAda did not
have this problem.
I also tried the following variant of this program, where I replaced all
of the fixed decimal arithmetic with integer arithmetic. This version
does compile and execute properly, so it appears that the problem is
related to how GNAT handles fixed point arithmetic errors.
--the test code is
with Ada.Text_Io;
procedure Trading is
type Price is range -16#8000_0000# .. 16#7FFF_FFFF#;
type Pricearray is array (Positive range <>) of Price;
procedure Avg (Data : in Pricearray) is
Avg, Sum : Price'Base := 0;
begin
Ada.Text_Io.Put ("average:" );
for Index in Data'Range loop
Sum := Sum + Data (Index);
end loop;
Ada.Text_Io.Put("#a");
Avg := Sum / Data'Length; -- <- blocking there on the 2nd try with
denominator 0
Ada.Text_Io.Put("#b");
Ada.Text_Io.Put (Price'Image (Avg));
Ada.Text_Io.New_Line;
exception
when others =>
Ada.Text_Io.Put_Line ("error here!");
end;
begin
for Index in reverse 0 .. 9 loop
Ada.Text_Io.Put_Line ("Main index " & Natural'Image (Index));
for Step in 1 .. 3 loop
Ada.Text_Io.Put_Line ("Step " & Natural'Image (Step));
declare
Mydata : Pricearray (1 .. Index) := (others => 10);
begin
Avg (Mydata);
end;
end loop;
end loop;
end Trading;
----end the test code
--
"All things extant in this world,
Gods of Heaven, gods of Earth,
Let everything be as it should be;
Thus shall it be!"
- Magical chant from "Magical Shopping Arcade Abenobashi"
"Drizzle, Drazzle, Drozzle, Drome,
Time for the this one to come home!"
- Mr. Lizard from "Tutor Turtle"
next prev parent reply other threads:[~2005-08-16 15:25 UTC|newest]
Thread overview: 78+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-08-16 8:48 Ada exception block does NOT work? bubble
2005-08-16 9:00 ` Georg Bauhaus
2005-08-16 9:32 ` bubble
2005-08-16 9:42 ` gautier_niouzes
2005-08-16 15:25 ` Frank J. Lhota [this message]
2005-08-16 16:58 ` Svesse
2005-08-16 17:48 ` Björn Persson
2005-08-16 18:12 ` Svesse
2005-08-16 18:17 ` Frank J. Lhota
2005-08-17 10:53 ` Ludovic Brenta
2005-08-17 11:34 ` Anders Wirzenius
2005-08-17 18:08 ` Björn Persson
2005-08-17 19:05 ` Randy Brukardt
2005-08-18 15:58 ` Georg Bauhaus
2005-08-16 12:30 ` Georg Bauhaus
2005-08-16 17:39 ` Björn Persson
2005-08-16 19:43 ` Georg Bauhaus
2005-08-17 1:39 ` Jeffrey R. Carter
2005-08-17 7:22 ` Maciej Sobczak
2005-08-18 1:05 ` Jeffrey R. Carter
2005-08-18 8:44 ` Maciej Sobczak
2005-08-18 11:40 ` Jean-Pierre Rosen
2005-08-18 12:56 ` Maciej Sobczak
2005-08-18 14:42 ` Jean-Pierre Rosen
2005-08-18 18:03 ` Martin Krischik
2005-08-18 13:15 ` Alex R. Mosteo
2005-08-18 15:23 ` Dmitry A. Kazakov
2005-08-18 18:00 ` Martin Krischik
2005-08-18 16:13 ` Jeffrey Carter
2005-08-18 16:38 ` Hyman Rosen
2005-08-18 18:07 ` jimmaureenrogers
2005-08-18 18:44 ` Hyman Rosen
2005-08-18 20:52 ` Frank J. Lhota
2005-08-19 0:57 ` jimmaureenrogers
2005-08-19 7:52 ` Dmitry A. Kazakov
2005-08-19 14:41 ` Robert A Duff
2005-08-19 17:48 ` Martin Krischik
2005-08-19 14:58 ` Robert A Duff
2005-08-18 17:54 ` Martin Krischik
2005-08-18 20:56 ` Robert A Duff
2005-08-18 22:01 ` Hyman Rosen
2005-08-19 2:35 ` Jeffrey R. Carter
2005-08-20 15:28 ` Robert A Duff
2005-08-20 20:24 ` Jeffrey R. Carter
2005-08-20 21:34 ` Robert A Duff
2005-08-20 22:47 ` Frank J. Lhota
2005-08-20 23:34 ` Robert A Duff
2005-08-21 11:18 ` Simon Wright
2005-08-21 16:59 ` tmoran
2005-08-21 19:48 ` Simon Wright
2005-08-21 16:07 ` Frank J. Lhota
2005-08-21 16:23 ` Martin Krischik
2005-08-21 1:12 ` Björn Persson
2005-08-21 9:01 ` Dmitry A. Kazakov
2005-08-21 16:14 ` Martin Krischik
2005-08-21 4:02 ` Larry Kilgallen
2005-08-19 12:34 ` Dr. Adrian Wrigley
2005-08-19 17:29 ` Martin Krischik
2005-08-19 18:14 ` Frank J. Lhota
2005-08-21 16:02 ` Martin Krischik
2005-08-21 16:48 ` Frank J. Lhota
2005-08-22 15:51 ` Martin Krischik
2005-08-23 0:32 ` Larry Elmore
[not found] ` <h5dlg1tsie8n3ikirvbi508t9afobhctkj@4ax.com>
2005-08-23 18:09 ` Martin Krischik
2005-08-23 19:50 ` C history Björn Persson
2005-08-27 21:09 ` Ada exception block does NOT work? Dave Thompson
2005-08-24 1:07 ` Larry Elmore
2005-08-24 2:36 ` Jeffrey R. Carter
2005-08-25 0:14 ` Larry Elmore
2005-08-26 2:44 ` Jeffrey R. Carter
2005-08-24 16:44 ` Martin Krischik
2005-08-22 8:12 ` Hyman Rosen
2005-08-18 21:15 ` Robert A Duff
2005-08-19 12:00 ` Dmitry A. Kazakov
2005-08-17 20:24 ` Simon Wright
2005-08-18 19:36 ` Björn Persson
2005-08-18 21:07 ` Simon Wright
2005-08-22 10:47 ` bubble
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox