annotate gcc/testsuite/gnat.dg/float_attributes_overflows.adb @ 158:494b0b89df80 default tip

...
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 25 May 2020 18:13:55 +0900
parents 84e7813d76e9
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
131
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
1 -- { dg-do run }
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
2
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
3 procedure Float_Attributes_Overflows is
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
4
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
5 generic
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
6 type Float_Type is digits <>;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
7 procedure Test_Float_Type;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
8
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
9 procedure Test_Float_Type is
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
10 Biggest_Positive_float : Float_Type := Float_Type'Last;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
11 Biggest_Negative_Float : Float_Type := Float_Type'First;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
12 Float_Var : Float_Type;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
13
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
14 begin
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
15 begin
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
16 Float_Var := Float_Type'succ (Biggest_Positive_Float);
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
17 raise Program_Error;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
18 exception
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
19 when Constraint_Error => null;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
20 end;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
21
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
22 begin
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
23 Float_Var := Float_Type'pred (Biggest_Negative_Float);
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
24 raise Program_Error;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
25 exception
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
26 when Constraint_Error => null;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
27 end;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
28 end Test_Float_Type;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
29
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
30 procedure Test_Float is new Test_Float_Type (Float);
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
31 procedure Test_Long_Float is new Test_Float_Type (Long_Float);
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
32 begin
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
33 Test_Float;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
34 Test_Long_Float;
84e7813d76e9 gcc-8.2
mir3636
parents:
diff changeset
35 end Float_Attributes_Overflows;